public void addTriple(Triple t) { if (query.getQueryPattern() instanceof ElementTriplesBlock) { ((ElementTriplesBlock)query.getQueryPattern()).addTriple(t); } else { assert query.getQueryPattern() instanceof ElementGroup: query.getQueryPattern(); ElementGroup group = (ElementGroup) query.getQueryPattern(); group.addTriplePattern(t); } }
public void visitQueryPattern(Query query) { if ( query.getQueryPattern() != null ) x ^= query.getQueryPattern().hashCode() ; }
@Override public void visitQueryPattern(Query query) { if ( query.getQueryPattern() != null ) x ^= query.getQueryPattern().hashCode() ; }
public void visitQueryPattern(Query query1) { if ( query1.getQueryPattern() == null && query2.getQueryPattern() == null ) return ; if ( query1.getQueryPattern() == null ) throw new ComparisonException("Missing pattern") ; if ( query2.getQueryPattern() == null ) throw new ComparisonException("Missing pattern") ; // The checking for patterns (elements) involves a potential // remapping of system-allocated variable names. // Assumes blank node variables only appear in patterns. check("Pattern", query1.getQueryPattern().equalTo(query2.getQueryPattern(), new NodeIsomorphismMap())) ; }
@Override public void visitQueryPattern(Query query1) { if ( query1.getQueryPattern() == null && query2.getQueryPattern() == null ) return ; if ( query1.getQueryPattern() == null ) throw new ComparisonException("Missing pattern") ; if ( query2.getQueryPattern() == null ) throw new ComparisonException("Missing pattern") ; // The checking for patterns (elements) involves a potential // remapping of system-allocated variable names. // Assumes blank node variables only appear in patterns. check("Pattern", query1.getQueryPattern().equalTo(query2.getQueryPattern(), new NodeIsomorphismMap())) ; }
public void add(Element elt) { if (query.getQueryPattern() instanceof ElementTriplesBlock) { ElementGroup group = new ElementGroup(); group.addElement(query.getQueryPattern()); group.addElement(elt); query.setQueryPattern(group); } else { assert query.getQueryPattern() instanceof ElementGroup; ElementGroup group = (ElementGroup) query.getQueryPattern(); group.addElement(elt); } }
public static void check(Query query) { if ( query.getQueryPattern() == null ) // DESCRIBE may not have a pattern return ; // And now check down the element for subqueries. LinkedHashSet<Var> queryVars = new LinkedHashSet<Var>() ; PatternVarsVisitorChecker visitor = new PatternVarsVisitorChecker(queryVars) ; PatternVars.vars(query.getQueryPattern(), visitor) ; queryVars.addAll(query.getGroupBy().getVars()) ; check(query, queryVars) ; }
private static void checkBind(Query query) { BindScopeChecker v = new BindScopeChecker() ; ElementWalker.walk(query.getQueryPattern(), v) ; }
public static Element parseElement(String string) { final Query query = new Query () ; Action action = new Action() { public void exec(SPARQLParser11 parser) throws Exception { Element el = parser.GroupGraphPattern() ; query.setQueryPattern(el) ; } } ; perform(query, string, action) ; return query.getQueryPattern() ; }
public static Element parseElement(String string) { final Query query = new Query () ; Action action = new Action() { public void exec(ARQParser parser) throws Exception { Element el = parser.GroupGraphPattern() ; query.setQueryPattern(el) ; } } ; perform(query, string, action) ; return query.getQueryPattern() ; }
public static Element parseElement(String string) { final Query query = new Query () ; Action action = new Action() { public void exec(SPARQLParser10 parser) throws Exception { Element el = parser.GroupGraphPattern() ; query.setQueryPattern(el) ; } } ; perform(query, string, action) ; return query.getQueryPattern() ; }
private static Collection<Var> varsOfQuery(Query query) { Collection<Var> vars = PatternVars.vars(query.getQueryPattern()) ; if ( query.hasValues() ) vars.addAll(query.getValuesVariables()) ; return vars ; }
public ConjunctiveQuery(Query q) { if (!q.isSelectType()) { throw new RuntimeException("A conjunctive query can only be created from a select query: "+q.serialize(Syntax.syntaxSPARQL_11)); } query = q; setQueryPattern(q.getQueryPattern()); }
@Override public void visit(ElementSubQuery e) { vars.addAll(PatternVars.vars(e)); e.getQuery().getQueryPattern().visit(this); }
public static void check(Query query) { if ( query.getQueryPattern() == null ) // DESCRIBE may not have a pattern return ; checkSubQuery(query.getQueryPattern()) ; checkBind(query) ; // Check this level. checkQueryScope(query) ; // Other checks. Collection<Var> vars = varsOfQuery(query) ; check(query, vars) ; }
public Query simplify(Query q) { QueryPatternSimplification qps = new QueryPatternSimplification(); q.getQueryPattern().visit(qps); Element newelt = qps.getResult(); Query ret = q.cloneQuery(); ret.setQueryPattern(newelt); return ret; }
@Override public void visit(ElementSubQuery e) { Query sq = e.getQuery(); QueryPatternSimplification qps = new QueryPatternSimplification(); sq.getQueryPattern().visit(qps); Element newelt = qps.getResult(); Query newsq = sq.cloneQuery(); newsq.setQueryPattern(newelt); result = new ElementSubQuery(newsq); }
@Override public void visit(ElementSubQuery e) { Query sq = e.getQuery(); VariableSubstitutionElementVisitor qps = new VariableSubstitutionElementVisitor(oldVar2NewValue); sq.getQueryPattern().visit(qps); Element newelt = qps.getResult(); Query newsq = sq.cloneQuery(); newsq.setQueryPattern(newelt); result = new ElementSubQuery(newsq); }
public void visit(ElementSubQuery arg0) { log(arg0); arg0.getQuery().getQueryPattern().visit(ElementVisitorImplementation.this); }
public void visit(ExprFunctionOp funcOp) { FormatterElement fmtElt = new FormatterElement(out, context) ; out.print(funcOp.getFunctionName(context)) ; out.print(" ") ; Element el = funcOp.getElement() ; if ( el == null ) el = OpAsQuery.asQuery(funcOp.getGraphPattern()).getQueryPattern() ; el.visit(fmtElt) ; }