Class EffectiveTarget
- java.lang.Object
-
- org.eclipse.rdf4j.sail.shacl.ast.targets.EffectiveTarget
-
public class EffectiveTarget extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
EffectiveTarget.ActiveTargetTupleMapper
static class
EffectiveTarget.EffectiveTargetFragment
static class
EffectiveTarget.Extend
static class
EffectiveTarget.StatementsAndMatcher
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayDeque<EffectiveTarget.EffectiveTargetFragment>
chain
private EffectiveTarget.EffectiveTargetFragment
optional
static java.lang.String[]
TARGET_NAMES
static java.lang.String
TARGET_VAR_PREFIX
-
Constructor Summary
Constructors Constructor Description EffectiveTarget(java.util.ArrayDeque<Targetable> chain, Targetable optional, RdfsSubClassOfReasoner rdfsSubClassOfReasoner, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
couldMatch(ConnectionsGroup connectionsGroup, Resource[] dataGraph)
PlanNode
extend(PlanNode source, ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope, EffectiveTarget.Extend direction, boolean includePropertyShapeValues, java.util.function.Function<PlanNode,PlanNode> filter)
PlanNode
getAllTargets(ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope)
java.util.List<StatementMatcher.Variable<Value>>
getAllTargetVariables()
PlanNode
getPlanNode(ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope, boolean includeTargetsAffectedByRemoval, java.util.function.Function<PlanNode,PlanNode> filter)
java.lang.String
getQuery(boolean includeOptional)
SparqlFragment
getQueryFragment(boolean includeOptional)
PlanNode
getTargetFilter(ConnectionsGroup connectionsGroup, Resource[] dataGraph, PlanNode parent)
StatementMatcher.Variable<Value>
getTargetVar()
private java.lang.String
getTargetVarName(int i)
private java.util.List<StatementMatcher.Variable<Value>>
getVars()
-
-
-
Field Detail
-
TARGET_VAR_PREFIX
public static final java.lang.String TARGET_VAR_PREFIX
- See Also:
- Constant Field Values
-
TARGET_NAMES
public static final java.lang.String[] TARGET_NAMES
-
chain
private final java.util.ArrayDeque<EffectiveTarget.EffectiveTargetFragment> chain
-
optional
private final EffectiveTarget.EffectiveTargetFragment optional
-
-
Constructor Detail
-
EffectiveTarget
public EffectiveTarget(java.util.ArrayDeque<Targetable> chain, Targetable optional, RdfsSubClassOfReasoner rdfsSubClassOfReasoner, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider)
-
-
Method Detail
-
getTargetVarName
private java.lang.String getTargetVarName(int i)
-
getTargetVar
public StatementMatcher.Variable<Value> getTargetVar()
-
extend
public PlanNode extend(PlanNode source, ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope, EffectiveTarget.Extend direction, boolean includePropertyShapeValues, java.util.function.Function<PlanNode,PlanNode> filter)
-
getVars
private java.util.List<StatementMatcher.Variable<Value>> getVars()
-
couldMatch
public boolean couldMatch(ConnectionsGroup connectionsGroup, Resource[] dataGraph)
- Returns:
- false if it is 100% sure that this will not match, else returns true
-
getAllTargets
public PlanNode getAllTargets(ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope)
-
getPlanNode
public PlanNode getPlanNode(ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope, boolean includeTargetsAffectedByRemoval, java.util.function.Function<PlanNode,PlanNode> filter)
-
getTargetFilter
public PlanNode getTargetFilter(ConnectionsGroup connectionsGroup, Resource[] dataGraph, PlanNode parent)
-
getQuery
public java.lang.String getQuery(boolean includeOptional)
-
getQueryFragment
public SparqlFragment getQueryFragment(boolean includeOptional)
-
getAllTargetVariables
public java.util.List<StatementMatcher.Variable<Value>> getAllTargetVariables()
-
-