Class ExclusiveArbitraryLengthPath
java.lang.Object
org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
org.eclipse.rdf4j.query.algebra.ArbitraryLengthPath
org.eclipse.rdf4j.federated.algebra.ExclusiveArbitraryLengthPath
- All Implemented Interfaces:
Serializable,Cloneable,ExclusiveTupleExpr,ExclusiveTupleExprRenderer,FedXTupleExpr,QueryRef,VariableExpr,QueryModelNode,TupleExpr,VariableScopeChange
public class ExclusiveArbitraryLengthPath
extends ArbitraryLengthPath
implements ExclusiveTupleExprRenderer
An
ArbitraryLengthPath node which can be evaluated at a single node.- Author:
- Andreas Schwarte
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionExclusiveArbitraryLengthPath(ArbitraryLengthPath path, StatementSource owner, QueryInfo queryInfo) -
Method Summary
Modifier and TypeMethodDescriptionclone()Returns a (deep) clone of this query model node.getOwner()Retrieve the attached query information of the tuple expressiontoQueryAlgebra(Set<String> varNames, BindingSet bindings) Returns a SPARQL algebra representation of this expression that can be inserted into a SELECTTupleExprtoQueryString(Set<String> varNames, BindingSet bindings) Returns a SPARQL string representation of this expression that can be inserted into a SELECT query.Methods inherited from class org.eclipse.rdf4j.query.algebra.ArbitraryLengthPath
equals, getAssuredBindingNames, getBindingNames, getContextVar, getMinLength, getObjectVar, getOrder, getPathExpression, getScope, getSignature, getSubjectVar, getSupportedOrders, hashCode, replaceChildNode, setContextVar, setMinLength, setObjectVar, setOrder, setPathExpression, setScope, setSubjectVar, visit, visitChildrenMethods inherited from class org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
getCardinality, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getTotalTimeNanosActual, isCardinalitySet, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, setVariableScopeChange, shouldCacheCardinality, toStringMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.eclipse.rdf4j.federated.algebra.FedXTupleExpr
getFreeVarCountMethods inherited from interface org.eclipse.rdf4j.query.algebra.QueryModelNode
equals, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, replaceChildNode, replaceWith, setCostEstimate, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, toString, visit, visitChildrenMethods inherited from interface org.eclipse.rdf4j.query.algebra.TupleExpr
getAssuredBindingNames, getBindingNames, getOrder, getSupportedOrders, setOrder
-
Constructor Details
-
ExclusiveArbitraryLengthPath
public ExclusiveArbitraryLengthPath(ArbitraryLengthPath path, StatementSource owner, QueryInfo queryInfo)
-
-
Method Details
-
getOwner
- Specified by:
getOwnerin interfaceExclusiveTupleExpr- Returns:
- the owner for this expression
-
clone
Description copied from interface:QueryModelNodeReturns a (deep) clone of this query model node. This method recursively clones the entire node tree, starting from this nodes.- Specified by:
clonein interfaceQueryModelNode- Specified by:
clonein interfaceTupleExpr- Overrides:
clonein classArbitraryLengthPath- Returns:
- A deep clone of this query model node.
-
toQueryString
Description copied from interface:ExclusiveTupleExprRendererReturns a SPARQL string representation of this expression that can be inserted into a SELECT query.Implementations are required to create a valid query string for this expression where the given bindings are inserted.
- Specified by:
toQueryStringin interfaceExclusiveTupleExprRenderer- Parameters:
varNames- the set of resulting (unbound) variables from this expressionbindings- the optional input bindings- Returns:
- the query string part
-
toQueryAlgebra
Description copied from interface:ExclusiveTupleExprRendererReturns a SPARQL algebra representation of this expression that can be inserted into a SELECTTupleExprImplementations are required to create a new equivalent expression or clone, where any provided input bindings are inserted. The free variable names after insertion need to be added to the provided set.
- Specified by:
toQueryAlgebrain interfaceExclusiveTupleExprRenderer- Parameters:
varNames- the set of resulting (unbound) variables from this expressionbindings- the input bindings that need to be inserted- Returns:
- the algebra expression
-
getFreeVars
- Specified by:
getFreeVarsin interfaceVariableExpr- Returns:
- a list of free (i.e. unbound) variables in this expression
-
getQueryInfo
Description copied from interface:QueryRefRetrieve the attached query information of the tuple expression- Specified by:
getQueryInfoin interfaceQueryRef- Returns:
- the
QueryInfo
-