Interface ConstraintComponent

    • Method Detail

      • getPreferredValidationApproach

        org.eclipse.rdf4j.sail.shacl.ast.ValidationApproach 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.
      • getOptimalBulkValidationApproach

        org.eclipse.rdf4j.sail.shacl.ast.ValidationApproach getOptimalBulkValidationApproach()
        Should return the fastest validation approach for bulk validation. When aggregating multiple constraint components the most compatible should be chosen.
      • requiresEvaluation

        boolean requiresEvaluation​(ConnectionsGroup connectionsGroup,
                                   ConstraintComponent.Scope scope,
                                   Resource[] dataGraph,
                                   org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider)
        Parameters:
        connectionsGroup -
        scope -
        dataGraph -
        stableRandomVariableProvider -
        Returns:
        true if the constraint component should be evaluated, eg. if validation is needed.
      • buildSparqlValidNodes_rsx_targetShape

        org.eclipse.rdf4j.sail.shacl.ast.SparqlFragment buildSparqlValidNodes_rsx_targetShape​(org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.Variable subject,
                                                                                              org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.Variable object,
                                                                                              RdfsSubClassOfReasoner rdfsSubClassOfReasoner,
                                                                                              ConstraintComponent.Scope scope,
                                                                                              org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.StableRandomVariableProvider stableRandomVariableProvider)