Package | Description |
---|---|
com.bigdata.rdf.sparql.ast |
This package contains an Abstract Syntax Tree which provides an intermediate translation
target for SPARQL parsers.
|
com.bigdata.rdf.sparql.ast.eval | |
com.bigdata.rdf.sparql.ast.optimizers |
Modifier and Type | Class and Description |
---|---|
class |
ValueExpressionListBaseNode<E extends IValueExpressionNode>
Base class for AST nodes which model an ordered list of value expressions.
|
Modifier and Type | Class and Description |
---|---|
class |
AssignmentNode
AST node models the assignment of a value expression to a variable
|
class |
ConstantNode
Used to represent a constant in the AST.
|
class |
DummyConstantNode
The dummy constant node is used to represent constants in the AST that do not
actually exist in the database.
|
class |
ExistsNode
A special function node for modeling EXISTS.
|
class |
FunctionNode
AST node for anything which is neither a constant nor a variable, including
math operators, string functions, etc.
|
class |
NotExistsNode
A special function node for modeling NOT EXISTS.
|
class |
SubqueryFunctionNodeBase
A special function node for modeling value expression nodes which are
evaluated against an inner graph expression, such as EXISTS and NOT EXISTS.
|
class |
TermNode
Used to represent a variable or constant in the AST (a term in a statement
pattern for example).
|
class |
ValueExpressionNode
AST node for value expressions.
|
class |
VarNode
Used to represent a variable in the AST.
|
Modifier and Type | Method and Description |
---|---|
abstract IValueExpressionNode |
GroupMemberValueExpressionNodeBase.getValueExpressionNode() |
IValueExpressionNode |
IValueExpressionNodeContainer.getValueExpressionNode()
Return the value expression node.
|
IValueExpressionNode |
FilterNode.getValueExpressionNode() |
IValueExpressionNode |
AssignmentNode.getValueExpressionNode()
Return the value expression node.
|
IValueExpressionNode |
OrderByExpr.getValueExpressionNode() |
static IValueExpressionNode |
StaticAnalysis.pushDisjuncts(IValueExpressionNode vexp)
Recursively pushes logical ORs below logical ANDs in the operator tree,
such that in the returned node all OR expressions are situated below
AND expressions.
|
static IValueExpressionNode |
StaticAnalysis.pushNegations(IValueExpressionNode vexp)
Recursively pushes negations down the operator tree, such that in the
returned node, negations are always at the bottom of the tree.
|
static IValueExpressionNode |
StaticAnalysis.toCNF(IValueExpressionNode vexpr)
Returns the corresponding (equivalent) value expression in CNF.
|
static IValueExpressionNode |
StaticAnalysis.toConjunctiveValueExpression(List<IValueExpressionNode> conjuncts)
Constructs an (unbalanced) tree out of the list of conjuncts.
|
Modifier and Type | Method and Description |
---|---|
static List<IValueExpressionNode> |
StaticAnalysis.extractToplevelConjuncts(IValueExpressionNode vexp,
List<IValueExpressionNode> nodes)
Extracts all AND-connected conjuncts located at the top of a given
value expression node (recursively, unless an operator different from
AND is encountered).
|
Modifier and Type | Method and Description |
---|---|
static List<IValueExpressionNode> |
StaticAnalysis.extractToplevelConjuncts(IValueExpressionNode vexp,
List<IValueExpressionNode> nodes)
Extracts all AND-connected conjuncts located at the top of a given
value expression node (recursively, unless an operator different from
AND is encountered).
|
static boolean |
StaticAnalysis.isCNF(IValueExpressionNode vexpr)
Checks whether the given value expression node is in CNF.
|
static IValueExpressionNode |
StaticAnalysis.pushDisjuncts(IValueExpressionNode vexp)
Recursively pushes logical ORs below logical ANDs in the operator tree,
such that in the returned node all OR expressions are situated below
AND expressions.
|
static IValueExpressionNode |
StaticAnalysis.pushNegations(IValueExpressionNode vexp)
Recursively pushes negations down the operator tree, such that in the
returned node, negations are always at the bottom of the tree.
|
static IValueExpressionNode |
StaticAnalysis.toCNF(IValueExpressionNode vexpr)
Returns the corresponding (equivalent) value expression in CNF.
|
Modifier and Type | Method and Description |
---|---|
static List<IValueExpressionNode> |
StaticAnalysis.extractToplevelConjuncts(IValueExpressionNode vexp,
List<IValueExpressionNode> nodes)
Extracts all AND-connected conjuncts located at the top of a given
value expression node (recursively, unless an operator different from
AND is encountered).
|
static IValueExpressionNode |
StaticAnalysis.toConjunctiveValueExpression(List<IValueExpressionNode> conjuncts)
Constructs an (unbalanced) tree out of the list of conjuncts.
|
Constructor and Description |
---|
AssignmentNode(VarNode var,
IValueExpressionNode ve) |
FilterNode(IValueExpressionNode ve) |
OrderByExpr(IValueExpressionNode ve,
boolean ascending) |
RangeNode(VarNode var,
IValueExpressionNode from,
IValueExpressionNode to)
Set the bounds now.
|
Modifier and Type | Method and Description |
---|---|
static IValueExpression<? extends IV> |
AST2BOpUtility.toVE(BOpContextBase context,
GlobalAnnotations globals,
IValueExpressionNode node)
Convert an
IValueExpressionNode (recursively) to an
IValueExpression . |
Modifier and Type | Method and Description |
---|---|
protected IValueExpressionNode |
AbstractOptimizerTestCase.Helper.functionNode(String uri,
ValueExpressionNode... args)
Return a
FunctionNode |
protected IValueExpressionNode |
AbstractOptimizerTestCase.Helper.functionNode(org.openrdf.model.URI uri,
ValueExpressionNode... args)
Return a
FunctionNode |
Modifier and Type | Method and Description |
---|---|
protected AssignmentNode |
AbstractOptimizerTestCase.Helper.bind(IValueExpressionNode valueNode,
VarNode varNode)
BIND(expression AS variable) |
List<FilterNode> |
ASTFilterNormalizationOptimizer.constructFiltersForValueExpressionNode(IValueExpressionNode vexp,
List<FilterNode> filters)
Construct FILTERs for the given value expression node, exploiting
AND nodes at the top to split the node into multiple filters (if
possible).
|
protected FilterNode |
AbstractOptimizerTestCase.Helper.filter(IValueExpressionNode f) |
boolean |
ASTFilterNormalizationOptimizer.isDecomposable(IValueExpressionNode vexpr)
Checks if there might be potential for decomposing the filter
(overestimation).
|
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.