org.eclipse.rdf4j.sail.spin

## Class SpinSail

- java.lang.Object
- - org.eclipse.rdf4j.sail.helpers.SailWrapper
  - - org.eclipse.rdf4j.sail.helpers.NotifyingSailWrapper
    - - org.eclipse.rdf4j.sail.inferencer.fc.AbstractForwardChainingInferencer
      - - org.eclipse.rdf4j.sail.spin.SpinSail

- All Implemented Interfaces:
    FederatedServiceResolverClient, NotifyingSail, Sail, StackableSail

  Deprecated.

      @Deprecated
      public class SpinSail
      extends AbstractForwardChainingInferencer

  The SpinSail is currently deprecated. If you are using SPIN to validate your data then it is recommended to move to SHACL with the ShaclSail. Currently, the SHACL W3C Recommendation only supports validation, and has no equivalent to SPIN's inference features.

  Deprecating the SpinSail has been discussed at https://github.com/eclipse/rdf4j/issues/1262 and can be summarized with there being no developers actively supporting it and that SPIN in itself is no longer recommended by TopQuadrant. Do not expect the SpinSail to scale in any way and expect simple delete operations to take seconds to complete. There are still a number of open issues in GitHub connected to the SpinSail, none of these are likely to get fixed.

  Since:
    3.1.0 2019

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SpinSail()` Deprecated.
    `SpinSail(NotifyingSail baseSail)` Deprecated.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addQueryContextInitializer(QueryContextInitializer initializer)` Deprecated.
    `org.eclipse.rdf4j.sail.spin.SpinSailConnection` | `getConnection()` Deprecated. Opens a connection on the Sail which can be used to query and update data.
    `TupleFunctionEvaluationMode` | `getEvaluationMode()` Deprecated.
    `FederatedServiceResolver` | `getFederatedServiceResolver()` Deprecated.
    `FunctionRegistry` | `getFunctionRegistry()` Deprecated.
    `protected List<QueryContextInitializer>` | `getQueryContextInitializers()` Deprecated.
    `SpinParser` | `getSpinParser()` Deprecated.
    `TupleFunctionRegistry` | `getTupleFunctionRegistry()` Deprecated.
    `void` | `initialize()` Deprecated. Initializes the Sail.
    `boolean` | `isAxiomClosureNeeded()` Deprecated. Indicates if the SPIN Sail should itself load the full deductive closure of the SPIN axioms.
    `boolean` | `isInitializing()` Deprecated.
    `boolean` | `isValidateConstraints()` Deprecated. Check is SPIN constraint validation is enabled.
    `void` | `setAxiomClosureNeeded(boolean axiomClosureNeeded)` Deprecated.
    `void` | `setBaseSail(Sail baseSail)` Deprecated. Sets the base Sail that this Sail will work on top of.
    `void` | `setEvaluationMode(TupleFunctionEvaluationMode mode)` Deprecated.
    `void` | `setFederatedServiceResolver(FederatedServiceResolver resolver)` Deprecated. Sets the `FederatedServiceResolver` to use for this client.
    `void` | `setFunctionRegistry(FunctionRegistry registry)` Deprecated.
    `void` | `setSpinParser(SpinParser parser)` Deprecated.
    `void` | `setTupleFunctionRegistry(TupleFunctionRegistry registry)` Deprecated.
    `void` | `setValidateConstraints(boolean validateConstraints)` Deprecated. Disable or enable SPIN constraint validation.

    - ### Methods inherited from class org.eclipse.rdf4j.sail.inferencer.fc.AbstractForwardChainingInferencer

      `getDefaultIsolationLevel, getSupportedIsolationLevels`

    - ### Methods inherited from class org.eclipse.rdf4j.sail.helpers.NotifyingSailWrapper

      `addSailChangedListener, getBaseSail, removeSailChangedListener`

    - ### Methods inherited from class org.eclipse.rdf4j.sail.helpers.SailWrapper

      `getDataDir, getValueFactory, isWritable, setDataDir, shutDown, verifyBaseSailSet`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.rdf4j.sail.Sail

      `getDataDir, getValueFactory, init, isWritable, setDataDir, shutDown`

- - ### Constructor Detail

    - #### SpinSail

          public SpinSail()

      Deprecated.

    - #### SpinSail

          public SpinSail(NotifyingSail baseSail)

      Deprecated.

  - ### Method Detail

    - #### setBaseSail

          public void setBaseSail(Sail baseSail)

      Deprecated.
      Description copied from interface: `StackableSail`
      Sets the base Sail that this Sail will work on top of. This method will be called before the initialize() method is called.
      Specified by:
        `setBaseSail` in interface `StackableSail`
      Overrides:
        `setBaseSail` in class `NotifyingSailWrapper`

    - #### getFunctionRegistry

          public FunctionRegistry getFunctionRegistry()

      Deprecated.

    - #### setFunctionRegistry

          public void setFunctionRegistry(FunctionRegistry registry)

      Deprecated.

    - #### getTupleFunctionRegistry

          public TupleFunctionRegistry getTupleFunctionRegistry()

      Deprecated.

    - #### setTupleFunctionRegistry

          public void setTupleFunctionRegistry(TupleFunctionRegistry registry)

      Deprecated.

    - #### getFederatedServiceResolver

          public FederatedServiceResolver getFederatedServiceResolver()

      Deprecated.

    - #### setFederatedServiceResolver

          public void setFederatedServiceResolver(FederatedServiceResolver resolver)

      Deprecated.
      Description copied from interface: `FederatedServiceResolverClient`
      Sets the `FederatedServiceResolver` to use for this client.
      Specified by:
        `setFederatedServiceResolver` in interface `FederatedServiceResolverClient`
      Overrides:
        `setFederatedServiceResolver` in class `SailWrapper`
      Parameters:
        `resolver` - The resolver to use.

    - #### setEvaluationMode

          public void setEvaluationMode(TupleFunctionEvaluationMode mode)

      Deprecated.

    - #### getEvaluationMode

          public TupleFunctionEvaluationMode getEvaluationMode()

      Deprecated.

    - #### setAxiomClosureNeeded

          public void setAxiomClosureNeeded(boolean axiomClosureNeeded)

      Deprecated.

    - #### isAxiomClosureNeeded

          public boolean isAxiomClosureNeeded()

      Deprecated.
      Indicates if the SPIN Sail should itself load the full deductive closure of the SPIN axioms. Typically, this will be `false` if the underlying Sail stack already supports RDFS inferencing, `true` if not.
      Returns:
        `true` if the SpinSail needs to load the full axiom closure, `false` otherwise.

    - #### addQueryContextInitializer

          public void addQueryContextInitializer(QueryContextInitializer initializer)

      Deprecated.

    - #### getQueryContextInitializers

          protected List<QueryContextInitializer> getQueryContextInitializers()

      Deprecated.

    - #### getSpinParser

          public SpinParser getSpinParser()

      Deprecated.

    - #### setSpinParser

          public void setSpinParser(SpinParser parser)

      Deprecated.

    - #### getConnection

          public org.eclipse.rdf4j.sail.spin.SpinSailConnection getConnection()
                                                                       throws SailException

      Deprecated.
      Description copied from interface: `Sail`
      Opens a connection on the Sail which can be used to query and update data. Depending on how the implementation handles concurrent access, a call to this method might block when there is another open connection on this Sail.
      Specified by:
        `getConnection` in interface `NotifyingSail`
      Specified by:
        `getConnection` in interface `Sail`
      Overrides:
        `getConnection` in class `NotifyingSailWrapper`
      Throws:
        `SailException` - If no transaction could be started, for example because the Sail is not writable.

    - #### initialize

          public void initialize()
                          throws SailException

      Deprecated.
      Description copied from interface: `Sail`
      Initializes the Sail. Care should be taken that required initialization parameters have been set before this method is called. Please consult the specific Sail implementation for information about the relevant parameters.
      Specified by:
        `initialize` in interface `Sail`
      Overrides:
        `initialize` in class `SailWrapper`
      Throws:
        `SailException` - If the Sail could not be initialized.

    - #### isInitializing

          public boolean isInitializing()

      Deprecated.

    - #### setValidateConstraints

          public void setValidateConstraints(boolean validateConstraints)

      Deprecated.

      Disable or enable SPIN constraint validation. This can be very useful in order to improve performance

      Default true (constraint validation enabled).

      Parameters:
        `validateConstraints` - (true if enabled)

    - #### isValidateConstraints

          public boolean isValidateConstraints()

      Deprecated.
      Check is SPIN constraint validation is enabled.
      Returns:
        true if enabled

Copyright © 2015-2021 Eclipse Foundation. All Rights Reserved.