final public void compileMatches(List<Constituent> words,int start,int index,SpanLabelView view){
  if (names != null) {
    for (    String dn : names) {
      view.addSpanLabel(start,index + 1,dn,1d);
    }
  }
  if (requiredChildren != null) {
    index++;
    if (index == words.size())     return;
    Constituent next=words.get(index);
    GazEntry ge=requiredChildren.get(splitter.normalize(next.getSurfaceForm()));
    if (ge != null) {
      ge.compileMatches(words,start,index,view);
    }
  }
}

final public void compileMatches ( List < Constituent > words , int start , int index , SpanLabelView view ) { if ( names != null ) { for ( String dn : names ) { view . addSpanLabel ( start , index + 1 , dn , 1d ) ; } } if ( requiredChildren != null ) { index ++ ; if ( index == words . size ( ) ) return ; Constituent next = words . get ( index ) ; GazEntry ge = requiredChildren . get ( splitter . normalize ( next . getSurfaceForm ( ) ) ) ; if ( ge != null ) { ge . compileMatches ( words , start , index , view ) ; } } }
this gaz entry matched the word passed in , if this is a leaf ( or match more aptly ) , add the word to the gaz matches for the word . but continue down the tree looking for deeper matches if possible . this method is only called by the gazetteer tree , the private method is called by the gazentry only .
