public class TriplePatternExprBuilder extends ValueExprBuilder
graphPattern
context
Constructor and Description |
---|
TriplePatternExprBuilder(BigdataASTContext context) |
Modifier and Type | Method and Description |
---|---|
VarNode |
visit(ASTBlankNodePropertyList node,
Object data) |
VarNode |
visit(ASTCollection node,
Object data)
Handle the RDF Collection syntax.
|
List<TermNode> |
visit(ASTObjectList node,
Object data) |
PathNode.PathAlternative |
visit(ASTPathAlternative pathAltNode,
Object data) |
Object |
visit(ASTPathElt pathEltNode,
Object data) |
Object |
visit(ASTPathOneInPropertySet node,
Object data) |
PathNode.PathSequence |
visit(ASTPathSequence pathSeqNode,
Object data) |
Object |
visit(ASTPropertyList propListNode,
Object data) |
Object |
visit(ASTPropertyListPath propListNode,
Object data) |
TermNode |
visit(ASTTRefPattern node,
Object data)
This is invoked in two different contexts.
|
aggregate, binary, left, nary, noneary, quadary, right, ternary, unary, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
depth, firstASTGraphGraphAncestor, indent, indent, scopedGroupGraphPattern, visit, visit, visit, visit, visit, visit, visit, visit, visit
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
public TriplePatternExprBuilder(BigdataASTContext context)
context
- public final Object visit(ASTPropertyList propListNode, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public final Object visit(ASTPropertyListPath propListNode, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public PathNode.PathAlternative visit(ASTPathAlternative pathAltNode, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public PathNode.PathSequence visit(ASTPathSequence pathSeqNode, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public Object visit(ASTPathElt pathEltNode, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public Object visit(ASTPathOneInPropertySet node, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public final List<TermNode> visit(ASTObjectList node, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public final VarNode visit(ASTBlankNodePropertyList node, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public VarNode visit(ASTCollection node, Object data) throws VisitorException
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
public TermNode visit(ASTTRefPattern node, Object data) throws VisitorException
<> d eand the other for a BIND() of a triple reference pattern onto a statement identifier variable:
BIND(<> as ?sidVar)In both cases we translate the triple reference pattern into a new
StatementPatternNode
. We reach back to the parent to decide which
of the two invocation contexts applies and either generate a new SID
variable or use the one from the BIND(). Then we set the SID variable on
the StatementPatternNode
and add it to the current graph pattern
group.
If either the subject or object position in the triple reference pattern
is a triple reference pattern, then it will have been turned into a
StatementPatternNode
by recursion through this method and we
replace it with the SID variable which was assigned to that
StatementPatternNode
.
visit
in interface SyntaxTreeBuilderVisitor
visit
in class ASTVisitorBase
VisitorException
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.