private QueryIterator variableSubject( Binding binding, Node s, Node score, Node literal, StrMatch match, ExecutionContext execCxt) { ListMultimap<String, TextHit> results = query(match.getProperty(), match.getQueryString(), match.getLimit(), execCxt); Collection<TextHit> r = results.values(); return resultsToQueryIterator(binding, s, score, literal, r, execCxt); }
private QueryIterator concreteSubject( Binding binding, Node s, Node score, Node literal, StrMatch match, ExecutionContext execCxt) { if (!s.isURI()) { log.warn("Subject not a URI: " + s); return IterLib.noResults(execCxt); } String qs = match.getQueryString(); ListMultimap<String, TextHit> x = query(match.getProperty(), match.getQueryString(), -1, execCxt); if (x == null) // null return value - empty result return IterLib.noResults(execCxt); List<TextHit> r = x.get(s.getURI()); return resultsToQueryIterator(binding, s, score, literal, r, execCxt); }