@Override public boolean contains(Var n) { return var.equals(n) ; }
@Override public boolean contains1(Var n) { return var.equals(n) ; }
@Override public Node get1(Var v) { if ( v.equals(var) ) return value ; return null ; } }
@Override public Node get(Var v) { if ( v.equals(var) ) return value ; return null ; } }
public ConstraintPrefix copySubstitute(Map<? extends Node, Node> map) { Var value = (Var)map.get(var); if(value == null || var.equals(value)) { return this; } return new ConstraintPrefix(value, attribute, prefixes); }
public RegexConstraint copySubstitute(Map<? extends Node, Node> map) { Var value = (Var)map.get(var); if(value == null || var.equals(value)) { return this; } return new RegexConstraint(value, attribute, pattern); }
public ConstraintPrefix copySubstitute(Map<? extends Node, Node> map) { Var value = (Var)map.get(var); if(value == null || var.equals(value)) { return this; } return new ConstraintPrefix(value, attribute, prefixes); }
public RegexConstraint copySubstitute(Map<? extends Node, Node> map) { Var value = (Var)map.get(var); if(value == null || var.equals(value)) { return this; } return new RegexConstraint(value, attribute, pattern); }
public PrefixConstraint copySubstitute(Map<? extends Node, Node> map) { Var value = (Var)map.get(var); if(value == null || var.equals(value)) { return this; } return new PrefixConstraint(value, attribute, prefixes); }
public static String toString(Entry<Var, Expr> e) { Var v = e.getKey(); Expr x = e.getValue(); String result = x.isVariable() && x.asVar().equals(v) ? "" + v : "(" + x + " AS " + v + ")"; return result; }
public static String toString(Entry<Var, Expr> e) { Var v = e.getKey(); Expr x = e.getValue(); String result = x.isVariable() && x.asVar().equals(v) ? "" + v : "(" + x + " AS " + v + ")"; return result; }
public static String toString(Entry<Var, Expr> e) { Var v = e.getKey(); Expr x = e.getValue(); String result = x.isVariable() && x.asVar().equals(v) ? "" + v : "(" + x + " AS " + v + ")"; return result; }
public static String toString(Entry<Var, Expr> e) { Var v = e.getKey(); Expr x = e.getValue(); String result = x.isVariable() && x.asVar().equals(v) ? "" + v : "(" + x + " AS " + v + ")"; return result; }
public static boolean isDistinctConceptVar(Query query, Var conceptVar) { boolean isDistinct = query.isDistinct(); Collection<Var> projectVars = query.getProjectVars(); boolean hasSingleVar = !query.isQueryResultStar() && projectVars != null && projectVars.size() == 1; boolean result = isDistinct && hasSingleVar && projectVars.iterator().next().equals(conceptVar); return result; }
private static void update(Var var, Node value, PatternTriple elt) { if ( var.equals(elt.subject.getNode()) ) elt.subject = Item.createNode(value) ; if ( var.equals(elt.predicate.getNode()) ) elt.predicate = Item.createNode(value) ; if ( var.equals(elt.object.getNode()) ) elt.object = Item.createNode(value) ; } }
public static boolean isGroupedOnlyByVar(Query query, Var groupVar) { boolean result = false; boolean hasOneGroup = query.getGroupBy().size() == 1; if(hasOneGroup) { Expr expr = query.getGroupBy().getExprs().values().iterator().next(); if(expr instanceof ExprVar) { Var v = expr.asVar(); result = v.equals(groupVar); } } return result; }
@Override public boolean equalTo(Element el2, NodeIsomorphismMap isoMap) { if ( ! ( el2 instanceof ElementBind ) ) return false ; ElementBind f2 = (ElementBind)el2 ; if ( ! this.getVar().equals(f2.getVar() )) return false ; if ( ! this.getExpr().equals(f2.getExpr()) ) return false ; return true ; }
@Override public boolean equalTo(Element el2, NodeIsomorphismMap isoMap) { if ( ! ( el2 instanceof ElementAssign ) ) return false ; ElementAssign f2 = (ElementAssign)el2 ; if ( ! this.getVar().equals(f2.getVar() )) return false ; if ( ! this.getExpr().equals(f2.getExpr()) ) return false ; return true ; }
@Override public void startElement(ElementBind el) { if(preBoundVars.contains(el.getVar().getVarName())) { if(SH.valueVar.getVarName().equals(el.getVar().getVarName()) && el.getExpr().isVariable() && el.getExpr().asVar().equals(SH.thisVar)) { // Ignore clauses injected by engine } else { results.add("Query must not reassign the pre-bound variable " + el.getVar() + " in a BIND clause"); } } }
@Override public void startElement(ElementBind el) { if(preBoundVars.contains(el.getVar().getVarName())) { if(SH.valueVar.getVarName().equals(el.getVar().getVarName()) && el.getExpr().isVariable() && el.getExpr().asVar().equals(SH.thisVar)) { // Ignore clauses injected by engine } else { results.add("Query must not reassign the pre-bound variable " + el.getVar() + " in a BIND clause"); } } }