public List<String> compactExtension(String value,int start){
  List<String> result=new ArrayList<String>();
  if (start > value.length()) {
    result.add(value);
    return result;
  }
  WbXmlExtensionDef extDef=new WbXmlExtensionDef(value.substring(start),(byte)0x0);
  for (  WbXmlExtensionDef ext : extsByValue.tailSet(extDef)) {
    List<String> found=matches(value,ext.getValue(),start,false);
    if (found != null) {
      return found;
    }
  }
  result.add(value);
  return result;
}

public List < String > compactExtension ( String value , int start ) { List < String > result = new ArrayList < String > ( ) ; if ( start > value . length ( ) ) { result . add ( value ) ; return result ; } WbXmlExtensionDef extDef = new WbXmlExtensionDef ( value . substring ( start ) , ( byte ) 0x0 ) ; for ( WbXmlExtensionDef ext : extsByValue . tailSet ( extDef ) ) { List < String > found = matches ( value , ext . getValue ( ) , start , false ) ; if ( found != null ) { return found ; } } result . add ( value ) ; return result ; }
similar method of the recursive version of compactattributevalue . this method searches over the extensions in order to compact the value in a list of defined extensions .
