code: public void process(final NerResultSet resultSet) {
          final FeatureMap featureMap = conf.getFeatureMap();
          if (conf.tracing) trace = new ArrayList<>();
  
          // store the relationship of _phrases in memory for further use
          final Map<Phrase, Set<Phrase>> phraseInMemory = new HashMap<>();
  
          // scoring
          for (final List<Phrase> phrasesInSentence : resultSet.phrases) {
              // for each sentence
              for (final Phrase phrase : phrasesInSentence) {
                  // for each phrase in the sentence
                  if (phrase.isDate) continue;
  
                  // score the phrase
                  phrase.score = featureMap.score(phrase);
                  if (conf.tracing) {
                      trace.addAll(featureMap.trace);
                  }
  
                  boolean isSubPhrase = false;
                  for (final Map.Entry<Phrase, Set<Phrase>> inMemoryEntry : phraseInMemory.entrySet()) {
                      if (phrase.isSubPhraseOf(inMemoryEntry.getKey())) {
                          inMemoryEntry.getValue().add(phrase);
                          isSubPhrase = true;
                          break;
                      }
                  }
                  if (!isSubPhrase || phrase.phrase.size() > 1) {
                      final Set<Phrase> newSet = new HashSet<>();
                      newSet.add(phrase);
                      phraseInMemory.put(phrase, newSet);
                  }
              }
          }
  
          // copy the score of _phrases that have relationships
          for (final Map.Entry<Phrase, Set<Phrase>> inMemoryPhrase : phraseInMemory.entrySet()) {
              final Set<Phrase> aSet = inMemoryPhrase.getValue();
              final Map<EntityClass, Double> score = inMemoryPhrase.getKey().score;
              for (final Phrase phrase : aSet) {
                  phrase.classify();
                  if (EntityClass.UNKNOWN.equals(phrase.phraseType)) {
                      phrase.score = score;
                      phrase.classify();
                  }
              }
          }
      }
docs: This method process the whole input result set and gives all _phrases in the set a name type - modifies the data
  of the passed in NerResultSet!
  @param resultSet set to process - modifies the data of the result set!