Interface Statement

All Superinterfaces:
FrontsTriple
All Known Implementing Classes:
StatementImpl

public interface Statement extends FrontsTriple
An RDF Statement.

A Statement is not a Resource, but can produce a ReifiedStatement that represents it and from which the Statement can be recovered.

A statement instance tracks which model created it, if any. All the Resource components of a Statement are in the same model as the Statement, if it has one, and are in no model if the Statement isn't.

This interface provides methods supporting typed literals. This means that methods are provided which will translate a built in type, or an object to an RDF Literal. This translation is done by invoking the toString() method of the object, or its built in equivalent. The reverse translation is also supported. This is built in for built in types. Factory objects, provided by the application, are used for application objects.

  • Method Details

    • equals

      boolean equals(Object o)
      determine whether two statements are equal.

      Two statements are considered to be equal if they have the the same subject, predicate and object. A statement can only be equal to another statement object.

      Overrides:
      equals in class Object
      Parameters:
      o - the object to be compared
      Returns:
      true if and only if the equality condition is met.
    • hashCode

      int hashCode()
      Returns asTriple().hashCode()
      Overrides:
      hashCode in class Object
    • getSubject

      Resource getSubject()
      An accessor method to return the subject of the statements.
      Returns:
      The subject of the statement.
    • getPredicate

      Property getPredicate()
      An accessor function to return the predicate of the statement.
      Returns:
      The predicate of the statement.
    • getObject

      RDFNode getObject()
      An accessor funtion to return the object of the statement.
      Returns:
      Return the object of the statement.
    • getProperty

      Statement getProperty(Property p)
      Get a property of the object of the statement.

      There is an unfortunate ambiguity here. GetProperty would normally treat the statement as a resource, and return a property about this statement. This is not what is wanted in most cases, so getProperty on a statement is defined to call getProperty on its object. If a property of the statement itself is required, getStatementProperty should be used.

      If the object of the statement is not a resource, an exception is thrown.

      Parameters:
      p - the property sought
      Returns:
      a statement representing an instance of the required property
    • getStatementProperty

      Statement getStatementProperty(Property p)
      Return a property of this statement.

      The model associated with this statement is searched for a statement with this statement as subject and the specified property as predicate. If such a statement is found it is return. If more than one exists in the model, then it is undefined which is returned. If no such statement exists, an exception is thrown.

      Parameters:
      p - the property sought
      Returns:
      a statement representing an instance of the specified property.
    • getResource

      Resource getResource()
      Return the object of the statement.

      An exception will be thrown if the object is not a resource.

      Returns:
      The Resource which is the object of the statement.
    • getLiteral

      Literal getLiteral()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The Literal which is the object of the statement.
    • getBoolean

      boolean getBoolean()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getByte

      byte getByte()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getShort

      short getShort()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getInt

      int getInt()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getLong

      long getLong()
      Return the object of the statement.

      An exception will be thrown iof the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getChar

      char getChar()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getFloat

      float getFloat()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getDouble

      double getDouble()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getString

      String getString()
      Return the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getBag

      Bag getBag()
      Return the object of the statement.

      An exception will be thrown if the object is not a Resource.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getAlt

      Alt getAlt()
      Return the object of the statement.

      An exception will be thrown if the object is not a Resource.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getSeq

      Seq getSeq()
      Return the object of the statement.

      An exception will be thrown if the object is not a Resource.

      Returns:
      The object of the statement interpreted as a value of the specified type.
    • getList

      RDFList getList()
      Return the object of the statement as an RDF List.

      An exception will be thrown if the object is not an RDFList.

      Returns:
      The object of the statement interpreted as a value as RDFList.
    • getLanguage

      String getLanguage()
      Return the language of the object of the statement.

      An exception will be thrown if the object is not a Literal.

      Returns:
      the language of the object of the statement
    • changeLiteralObject

      Statement changeLiteralObject(boolean o)
      Remove this statement (s, p, x) from the model that contains it. Create a new statement (s, p, o'), where o' is the typed literal corresponding to o, add it to the model, and answer it.
    • changeLiteralObject

      Statement changeLiteralObject(long o)
      Remove this statement (s, p, x) from the model that contains it. Create a new statement (s, p, o'), where o' is the typed literal corresponding to o, add it to the model, and answer it.
    • changeLiteralObject

      Statement changeLiteralObject(int o)
      Remove this statement (s, p, x) from the model that contains it. Create a new statement (s, p, o'), where o' is the typed literal corresponding to o, add it to the model, and answer it.
    • changeLiteralObject

      Statement changeLiteralObject(char o)
      Remove this statement (s, p, x) from the model that contains it. Create a new statement (s, p, o'), where o' is the typed literal corresponding to o, add it to the model, and answer it.
    • changeLiteralObject

      Statement changeLiteralObject(float o)
      Remove this statement (s, p, x) from the model that contains it. Create a new statement (s, p, o'), where o' is the typed literal corresponding to o, add it to the model, and answer it.
    • changeLiteralObject

      Statement changeLiteralObject(double o)
      Remove this statement (s, p, x) from the model that contains it. Create a new statement (s, p, o'), where o' is the typed literal corresponding to o, add it to the model, and answer it.
    • changeObject

      Statement changeObject(String o)
      change the object of the statement (S, P, X) to (S, P, o).

      The statement with the old value is removed from the model and a new statement with the new value added and returned.

      Parameters:
      o - The value to be set.
      Returns:
      the new (S, P, o) statement.
    • changeObject

      Statement changeObject(String o, String l)
      change the object of the statement (S, P, X) to (S, P, o).

      The statement with the old value is removed from the model and a new statement with the new value added.

      Parameters:
      o - The value to be set.
      l - the language of the String
      Returns:
      the new (S, P, o) statement..
    • changeObject

      Statement changeObject(RDFNode o)
      change the object of the statement (S, P, X) to (S, P, o).

      The statement with the old value is removed from the model and a new statement with the new value added.

      Parameters:
      o - The value to be set
      Returns:
      the new (S, P, o) statement.
    • remove

      Statement remove()
      Remove this statement from its associated model.

      The statement with the same subject, predicate and object as this statement will be removed from the model associated with this statement.

      Returns:
      this statement.
    • getModel

      Model getModel()
      get the Model this Statement was created in.