@Override public FunctionCall visit(ASTStrDt node, Object data) throws VisitorException { return createFunctionCall("STRDT", node, 2, 2); }
Var subjVar = mapValueExprToVar(subject); boolean invertSequence = checkInverse(pathSeqNode); List<ValueExpr> objectList = (List<ValueExpr>)getObjectList(pathSeqNode).jjtAccept(this, null); if (i == pathLength - 1) { if (objectList.contains(subjVar)) { // See SES-1685 Var objVar = mapValueExprToVar(objectList.get(objectList.indexOf(subjVar))); objVarReplacement = new Var[] { objVar, createAnonVar() }; objectList.remove(objVar); objectList.add(objVarReplacement[1]); Var nextVar = createAnonVar(); TupleExpr te = createTupleExprForNegatedPropertySet(nps, i); if (objVarReplacement != null) { SameTerm condition = new SameTerm(objVarReplacement[0], objVarReplacement[1]); Var objVar = mapValueExprToVar(object); te = handlePathModifiers(scope, subjVar, te, objVar, contextVar, lowerBound, upperBound); Var objVar = mapValueExprToVar(object); if (objVar.equals(subjVar)) { // see SES-1685 Var objVarReplacement = createAnonVar(); te = handlePathModifiers(scope, startVar, te, objVarReplacement, contextVar, lowerBound, upperBound); SameTerm condition = new SameTerm(objVar, objVarReplacement);
private TupleExpr buildQueryModel(Node qc) throws MalformedQueryException { TupleExprBuilder tupleExprBuilder = new TupleExprBuilder(SimpleValueFactory.getInstance()); try { return (TupleExpr)qc.jjtAccept(tupleExprBuilder, null); } catch (VisitorException e) { throw new MalformedQueryException(e.getMessage(), e); } }
Set<SameTerm> sameTermConstraints = getSameTermConstraints((Filter)constructExpr); statementPatterns = replaceSameTermVars(statementPatterns, sameTermConstraints); Set<Var> constructVars = getConstructVars(statementPatterns);
@Override public Var visit(ASTBlankNodePropertyList node, Object data) throws VisitorException { Var bnodeVar = createAnonVar(); super.visit(node, bnodeVar); return bnodeVar; }
@Override public Var visit(ASTCollection node, Object data) throws VisitorException { Var rootListVar = createAnonVar(); Var listVar = rootListVar; int childCount = node.jjtGetNumChildren(); for (int i = 0; i < childCount; i++) { ValueExpr childValue = (ValueExpr)node.jjtGetChild(i).jjtAccept(this, null); Var childVar = mapValueExprToVar(childValue); graphPattern.addRequiredSP(listVar, TupleExprs.createConstVar(RDF.FIRST), childVar); Var nextListVar; if (i == childCount - 1) { nextListVar = TupleExprs.createConstVar(RDF.NIL); } else { nextListVar = createAnonVar(); } graphPattern.addRequiredSP(listVar, TupleExprs.createConstVar(RDF.REST), nextListVar); listVar = nextListVar; } return rootListVar; }
private ASTObjectList getObjectList(Node node) { if (node == null) { return null; } if (node instanceof ASTPropertyListPath) { return ((ASTPropertyListPath)node).getObjectList(); } else { return getObjectList(node.jjtGetParent()); } }
private boolean checkInverse(Node node) { if (node instanceof ASTPathElt) { return ((ASTPathElt)node).isInverse(); } else { Node parent = node.jjtGetParent(); if (parent != null) { return checkInverse(parent); } else { return false; } } }
TupleExpr path = createPath(scope, subjVar, te, endVar, contextVar, length); path = createPath(scope, subjVar, te, endVar, contextVar, length + 1); currentUnion.setRightArg(path); TupleExpr path = createPath(scope, subjVar, te, endVar, contextVar, lowerBound); result = path;
if (qc.containsQuery()) { TupleExpr tupleExpr; final TupleExprBuilder tupleExprBuilder = new TupleExprBuilder(
nextVar = createAnonVar(); for (long i = 0L; i < length; i++) { if (i < length - 1L) { nextVar = createAnonVar();
@Override public FunctionCall visit(ASTSHA1 node, Object data) throws VisitorException { return createFunctionCall("SHA1", node, 1, 1); }
if (qc.containsQuery()) { TupleExpr tupleExpr; final TupleExprBuilder tupleExprBuilder = new TupleExprBuilder(
Var v = createAnonVar(); name = v.getName();
@Override public FunctionCall visit(ASTRand node, Object data) throws VisitorException { return createFunctionCall("RAND", node, 0, 0); }
@Override public FunctionCall visit(ASTTz node, Object data) throws VisitorException { return createFunctionCall("TZ", node, 1, 1); }
@Override public FunctionCall visit(ASTMD5 node, Object data) throws VisitorException { return createFunctionCall("MD5", node, 1, 1); }
Var anonVar = createAnonVar(); expr.replaceChildNode(operator, anonVar); anonymousExtension.addElement(new ExtensionElem(operator, anonVar.getName()));