protected void generatePredicatesForPom(PredicateObjectMap pom) throws HNodeNotFoundKarmaException {
this.pom = pom;
List<ColumnTemplateTerm> subjectAndObjectTemplateTerms = new LinkedList<>();
subjectAndObjectTemplateTerms.addAll(this.combinedSubjectObjectTermsToPaths.keySet());
LinkedList<ColumnTemplateTerm> predicateColumnTemplateTerms = new LinkedList<>();
predicateColumnTemplateTerms.addAll(pom.getPredicate().getTemplate().getAllColumnNameTermElements());
predicateTemplateTermSetPopulator = new TemplateTermSetPopulator(pom.getPredicate().getTemplate(), new StringBuilder(), uriFormatter, true, true);
Map<ColumnTemplateTerm, HNodePath> combinedSubjectObjectPredicateTermsToPaths = new HashMap<>();
combinedSubjectObjectPredicateTermsToPaths.putAll(combinedSubjectObjectTermsToPaths);
Map<ColumnTemplateTerm, HNodePath> predicateTermsToPaths = new HashMap<>();
populateTermsToPathForSubject(predicateTermsToPaths, pom.getPredicate().getTemplate());
combinedSubjectObjectTermsToPaths.putAll(predicateTermsToPaths);
predicatePlan = new DoublyAnchoredTemplateTermSetPopulator(combinedSubjectObjectTermsToPaths, predicateColumnTemplateTerms, subjectAndObjectTemplateTerms, selection);
}