Interface SailDataset

All Superinterfaces:
AutoCloseable, SailClosable

public interface SailDataset extends SailClosable
A state of an SailSource at a point in time that will remain consistent until close() is called. The life cycle follows that of a read operation.
Author:
James Leigh
  • Method Details

    • close

      void close() throws SailException
      Called when this SailDataset is no longer is used, such as when a read operation is complete. An isolation level compatible with IsolationLevels.SNAPSHOT will ensure the state of this SailDataset dose not change between the first call to this object until
      invalid reference
      SailClosable#release()
      is called.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface SailClosable
      Throws:
      SailException - if this resource cannot be closed
    • getNamespaces

      CloseableIteration<? extends Namespace> getNamespaces() throws SailException
      Gets the namespaces relevant to the data contained in this object.
      Returns:
      An iterator over the relevant namespaces, should not contain any duplicates.
      Throws:
      SailException - If this object encountered an error or unexpected situation internally.
    • getNamespace

      String getNamespace(String prefix) throws SailException
      Gets the namespace that is associated with the specified prefix, if any.
      Parameters:
      prefix - A namespace prefix, or an empty string in case of the default namespace.
      Returns:
      The namespace name that is associated with the specified prefix, or null if there is no such namespace.
      Throws:
      SailException - If this object encountered an error or unexpected situation internally.
      NullPointerException - In case prefix is null.
    • getContextIDs

      CloseableIteration<? extends Resource> getContextIDs() throws SailException
      Returns the set of all unique context identifiers that are used to store statements.
      Returns:
      An iterator over the context identifiers, should not contain any duplicates.
      Throws:
      SailException
    • getStatements

      CloseableIteration<? extends Statement> getStatements(Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException
      Gets all statements that have a specific subject, predicate and/or object. All three parameters may be null to indicate wildcards. Optionally a (set of) context(s) may be specified in which case the result will be restricted to statements matching one or more of the specified contexts.
      Parameters:
      subj - A Resource specifying the subject, or null for a wildcard.
      pred - A IRI specifying the predicate, or null for a wildcard.
      obj - A Value specifying the object, or null for a wildcard.
      contexts - The context(s) to get the statements from. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on all contexts.
      Returns:
      An iterator over the relevant statements.
      Throws:
      SailException - If the triple source failed to get the statements.
    • getStatements

      @Experimental default CloseableIteration<? extends Statement> getStatements(StatementOrder statementOrder, Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException
      Gets all statements that have a specific subject, predicate and/or object. All three parameters may be null to indicate wildcards. Optionally a (set of) context(s) may be specified in which case the result will be restricted to statements matching one or more of the specified contexts.
      Parameters:
      statementOrder - The order that the statements should be returned in.
      subj - A Resource specifying the subject, or null for a wildcard.
      pred - A IRI specifying the predicate, or null for a wildcard.
      obj - A Value specifying the object, or null for a wildcard.
      contexts - The context(s) to get the statements from. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on all contexts.
      Returns:
      An iterator over the relevant statements.
      Throws:
      SailException - If the triple source failed to get the statements.
    • getTriples

      default CloseableIteration<? extends Triple> getTriples(Resource subj, IRI pred, Value obj) throws SailException
      Gets all RDF-star triples that have a specific subject, predicate and/or object. All three parameters may be null to indicate wildcards.
      Parameters:
      subj - A Resource specifying the subject, or null for a wildcard.
      pred - A IRI specifying the predicate, or null for a wildcard.
      obj - A Value specifying the object, or null for a wildcard.
      Returns:
      An iterator over the relevant triples.
      Throws:
      SailException - If the triple source failed to get the RDF-star triples.
    • getSupportedOrders

      @Experimental default Set<StatementOrder> getSupportedOrders(Resource subj, IRI pred, Value obj, Resource... contexts)
    • getComparator

      @Experimental default Comparator<Value> getComparator()