@Override public void visit(ElementFilter e) { ExprVars.varsMentioned(vars, e.getExpr()); }
@Override public void visit(ElementFilter filter) { com.hp.hpl.jena.sparql.expr.Expr expr = filter.getExpr(); expr = expr.copySubstitute(this); result = new ElementFilter(expr); }
@Override public void visit(ElementFilter el) { MultiSet<String> vars = new MultiSet<String>(); ExprVars.varNamesMentioned(vars, el.getExpr()); addString(vars); } };
if ( filters == null ) filters = new ArrayList<Expr>() ; filters.add(f.getExpr()) ;
public void visit(ElementFilter el) { out.print("FILTER ") ; Expr expr = el.getExpr() ; FmtExpr v = new FmtExpr(out, context) ; // This assumes that complex expressions are bracketted // (parens) as necessary except for some cases: // Plain variable or constant boolean addParens = false ; if ( expr.isVariable() ) addParens = true ; if ( expr.isConstant() ) addParens = true ; if ( addParens ) out.print("( ") ; v.format(expr) ; if ( addParens ) out.print(" )") ; }
@Override public void visit(ElementFilter el) { out.print("FILTER ") ; Expr expr = el.getExpr() ; FmtExprSPARQL v = new FmtExprSPARQL(out, context) ; // This assumes that complex expressions are bracketted // (parens) as necessary except for some cases: // Plain variable or constant boolean addParens = false ; if ( expr.isVariable() ) addParens = true ; if ( expr.isConstant() ) addParens = true ; if ( addParens ) out.print("( ") ; v.format(expr) ; if ( addParens ) out.print(" )") ; }
protected ConjunctiveQuery replace(ConjunctiveQuery q, Triple oldT, Triple newT) { ElementTriplesBlock newPattern = new ElementTriplesBlock(); for (Triple t:q.getTriples()) { if (t.equals(oldT)) { newPattern.addTriple(newT); } else { newPattern.addTriple(t); } } ConjunctiveQuery ret = q.cloneConjQuery(); ret.setQueryPattern(newPattern); for (ElementFilter ef: q.getFilters()) { ret.addFilter(ef.getExpr()); } return ret; }
public ConjunctiveQuery cloneConjQuery(boolean copyResultVars) { //return new ConjunctiveQuery(query.cloneQuery()); ConjunctiveQuery ret = new ConjunctiveQuery(); ElementTriplesBlock pattern = new ElementTriplesBlock(); for (Triple t: getTriples()) { pattern.addTriple(new Triple(t.getSubject(), t.getPredicate(), t.getObject())); } ret.setQueryPattern(pattern); for (ElementFilter f: getFilters()) { ret.addFilter(f.getExpr()); } if (copyResultVars) { for (String v: getResultVars()) { ret.query.addResultVar(v); } } return ret; } public Set<String> getAllVariables() {
return OpFilter.filter(f.getExpr(), current) ;
return OpFilter.filter(f.getExpr(), current) ;