Class AbstractConstraintComponent
java.lang.Object
org.eclipse.rdf4j.sail.shacl.ast.constraintcomponents.AbstractConstraintComponent
- All Implemented Interfaces:
ConstraintComponent, Exportable, TargetChainInterface
- Direct Known Subclasses:
AbstractSimpleConstraintComponent, ClassConstraintComponent, ClosedConstraintComponent, DashHasValueInConstraintComponent, DisjointConstraintComponent, EqualsConstraintComponent, HasValueConstraintComponent, LessThanConstraintComponent, LessThanOrEqualsConstraintComponent, LogicalOperatorConstraintComponent, MaxCountConstraintComponent, MinCountConstraintComponent, NotConstraintComponent, QualifiedMaxCountConstraintComponent, QualifiedMinCountConstraintComponent, SparqlConstraintComponent, UniqueLangConstraintComponent, XoneConstraintComponent
-
Nested Class Summary
Nested classes/interfaces inherited from interface ConstraintComponent
ConstraintComponent.Scope -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Resourceprivate static final org.slf4j.Loggerprivate TargetChainstatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuildSparqlValidNodes_rsx_targetShape(StatementMatcher.Variable<Value> subject, StatementMatcher.Variable<Value> object, RdfsSubClassOfReasoner rdfsSubClassOfReasoner, ConstraintComponent.Scope scope, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider) generateSparqlValidationQuery(ConnectionsGroup connectionsGroup, ValidationSettings validationSettings, boolean negatePlan, boolean negateChildren, ConstraintComponent.Scope scope) generateTransactionalValidationPlan(ConnectionsGroup connectionsGroup, ValidationSettings validationSettings, PlanNodeProvider overrideTargetNode, ConstraintComponent.Scope scope) (package private) static PlanNodegetAllTargetsIncludingThoseAddedByPath(ConnectionsGroup connectionsGroup, ValidationSettings validationSettings, ConstraintComponent.Scope scope, EffectiveTarget effectiveTarget, Path path, boolean includeTargetsAffectedByRemoval) getAllTargetsPlan(ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider, ValidationSettings validationSettings) getId()Should return the fastest validation approach for bulk validation.getPreferredValidationApproach(ConnectionsGroup connectionsGroup) A constraint component should decide which validation approach is going to be the optimal performance wise based on the state of the transaction and base sail.booleanrequiresEvaluation(ConnectionsGroup connectionsGroup, ConstraintComponent.Scope scope, Resource[] dataGraph, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider) voidsetTargetChain(TargetChain targetChain) stringRepresentationOfValue(Value value) (package private) static CharSequence[]Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ConstraintComponent
deepClone, getConstraintComponent, getDefaultMessageMethods inherited from interface Exportable
toModel
-
Field Details
-
logger
private static final org.slf4j.Logger logger -
VALUES_INJECTION_POINT
- See Also:
-
id
-
targetChain
-
-
Constructor Details
-
AbstractConstraintComponent
-
AbstractConstraintComponent
public AbstractConstraintComponent()
-
-
Method Details
-
getId
-
getTargetChain
- Specified by:
getTargetChainin interfaceTargetChainInterface
-
setTargetChain
- Specified by:
setTargetChainin interfaceTargetChainInterface
-
generateSparqlValidationQuery
public ValidationQuery generateSparqlValidationQuery(ConnectionsGroup connectionsGroup, ValidationSettings validationSettings, boolean negatePlan, boolean negateChildren, ConstraintComponent.Scope scope) - Specified by:
generateSparqlValidationQueryin interfaceConstraintComponent
-
generateTransactionalValidationPlan
public PlanNode generateTransactionalValidationPlan(ConnectionsGroup connectionsGroup, ValidationSettings validationSettings, PlanNodeProvider overrideTargetNode, ConstraintComponent.Scope scope) - Specified by:
generateTransactionalValidationPlanin interfaceConstraintComponent
-
getPreferredValidationApproach
Description copied from interface:ConstraintComponentA constraint component should decide which validation approach is going to be the optimal performance wise based on the state of the transaction and base sail.- Specified by:
getPreferredValidationApproachin interfaceConstraintComponent
-
getOptimalBulkValidationApproach
Description copied from interface:ConstraintComponentShould return the fastest validation approach for bulk validation. When aggregating multiple constraint components the most compatible should be chosen.- Specified by:
getOptimalBulkValidationApproachin interfaceConstraintComponent
-
requiresEvaluation
public boolean requiresEvaluation(ConnectionsGroup connectionsGroup, ConstraintComponent.Scope scope, Resource[] dataGraph, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider) - Specified by:
requiresEvaluationin interfaceConstraintComponent- Parameters:
connectionsGroup-scope-dataGraph-stableRandomVariableProvider-- Returns:
- true if the constraint component should be evaluated, eg. if validation is needed.
-
getAllTargetsPlan
public PlanNode getAllTargetsPlan(ConnectionsGroup connectionsGroup, Resource[] dataGraph, ConstraintComponent.Scope scope, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider, ValidationSettings validationSettings) - Specified by:
getAllTargetsPlanin interfaceConstraintComponent
-
buildSparqlValidNodes_rsx_targetShape
public SparqlFragment buildSparqlValidNodes_rsx_targetShape(StatementMatcher.Variable<Value> subject, StatementMatcher.Variable<Value> object, RdfsSubClassOfReasoner rdfsSubClassOfReasoner, ConstraintComponent.Scope scope, StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider) - Specified by:
buildSparqlValidNodes_rsx_targetShapein interfaceConstraintComponent
-
trim
-
stringRepresentationOfValue
-
getAllTargetsIncludingThoseAddedByPath
static PlanNode getAllTargetsIncludingThoseAddedByPath(ConnectionsGroup connectionsGroup, ValidationSettings validationSettings, ConstraintComponent.Scope scope, EffectiveTarget effectiveTarget, Path path, boolean includeTargetsAffectedByRemoval)
-