Interface ModelCon

All Known Subinterfaces:
InfModel, Model, OntModel
All Known Implementing Classes:
InfModelImpl, ModelCom, MonitorModel, OntModelImpl

public interface ModelCon
Convenience methods which extend the Model interface.

The Model interface provides a set of primitive operations on an RDF model. This interface extends those methods with a set of convenience methods.

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.

This interface provides methods for supporting enhanced resources. An enhanced resource is a resource to which the application has added behaviour. RDF containers are examples of enhanced resources built in to this package. Enhanced resources are supported by encapsulating a resource created by an implementation in another class which adds the extra behaviour. Factory objects are used to construct such enhanced resources.

  • Method Details

    • getProperty

      Property getProperty(String uri)
      Return a Property instance in this model.

      Subsequent operations on the returned property may modify this model.

      The property is assumed to already exist in the model. If it does not, createProperty should be used instead.

      Parameters:
      uri - the URI of the property
      Returns:
      a property object
    • getBag

      Bag getBag(String uri)
      Return a Bag instance in this model.

      Subsequent operations on the returned bag may modify this model.

      The bag is assumed to already exist in the model. If it does not, createBag should be used instead.

      Parameters:
      uri - the URI of the bag.
      Returns:
      a bag instance
    • getBag

      Bag getBag(Resource r)
      Return a bag instance based on a given resource.

      This method enables an application to treat any resource as a bag. It is in effect an unsafe downcast.

      Subsequent operations on the returned bag may modify this model.

      The bag is assumed to already exist in the model. If it does not, createBag should be used instead.

      Parameters:
      r - an untyped Resource instance
      Returns:
      a bag instance
    • getAlt

      Alt getAlt(String uri)
      Return an Alt instance in this model.

      Subsequent operations on the returned object may modify this model.

      The alt is assumed to already exist in the model. If it does not, createAlt should be used instead.

      Parameters:
      uri - the URI of the alt
      Returns:
      an alt instance
    • getAlt

      Alt getAlt(Resource r)
      Return an Alt instance based on a given resource.

      This method enables an application to treat any resource as an Alt. It is in effect an unsafe downcast.

      Subsequent operations on the returned Alt may modify this model.

      The Alt is assumed to already exist in the model. If it does not, createAlt should be used instead.

      Parameters:
      r - an untyped Resource instance
      Returns:
      an Alt instance
    • getSeq

      Seq getSeq(String uri)
      Return a Seq instance in this model.

      Subsequent operations on the returned sequence may modify this model.

      The seq is assumed to already exist in the model. If it does not, createSeq should be used instead.

      Parameters:
      uri - the URI of the seq
      Returns:
      a seq instance
    • getSeq

      Seq getSeq(Resource r)
      Return a Seq instance based on a given resource.

      This method enables an application to treat any resource as a Seq. It is in effect an unsafe downcast.

      Subsequent operations on the returned Seq may modify this model.

      The Seq is assumed to already exist in the model. If it does not, createSeq should be used instead.

      Parameters:
      r - an untyped Resource instance
      Returns:
      an Seq instance
    • getList

      RDFList getList(String uri)
      Return a RDF List instance in this model.

      Subsequent operations on the returned list may modify this model.

      The list is assumed to already exist in the model. If it does not, createList should be used instead.

      Parameters:
      uri - the URI of the list
      Returns:
      a list instance
    • getList

      RDFList getList(Resource r)
      Return a RDF List based on a given resource.

      This method enables an application to treat any resource as a list. It is in effect an unsafe downcast.

      Subsequent operations on the returned list may modify this model.

      The list is assumed to already exist in the model. If it does not, createList should be used instead.

      Parameters:
      r - the resource of the list
      Returns:
      a list instance
    • createResource

      Resource createResource(Resource type)
      Create a new anonymous resource with a given type.

      Subsequent operations on the returned resource may modify this model.

      The resource is created and an rdf:type property added to the model to specify its type.

      Parameters:
      type - the type of the resource to be created.
      Returns:
      a new anonymous resource linked to this model.
    • getRDFNode

      RDFNode getRDFNode(Node n)
      Create or find an RDFNode (a Resource or a Literal) from a graph Node. This is provided for users and developers operating at the API/SPI interface, where Resources are constructed from Nodes. Providing this method allows each Model the opportunity to cache node-to-resource maps if it requires.
      Parameters:
      n - the graph.Node on which to base the Model.RDFNode
      Returns:
      a suitable RDFNode
    • createResource

      Resource createResource(String uri, Resource type)
      Create a new resource with a given type.

      Subsequent operations on the returned resource may modify this model.

      The resource is created and an rdf:type property added to the model to specify its type.

      Parameters:
      type - the type of the resource to be created.
      uri - The URI of the new resource.
      Returns:
      a new resource linked to this model.
    • createProperty

      Property createProperty(String uri)
      Create a property.

      Subsequent operations on the returned property may modify this model.

      Parameters:
      uri - the URI of the property
      Returns:
      a property instance
    • createLiteral

      Literal createLiteral(String v)
      create a literal from a String value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(boolean v)
      create a type literal from a boolean value.

      The value is converted to a string using its toString method.

      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(int v)
      create a typed literal from an integer value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(long v)
      create a typed literal from an integer value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(Calendar d)
      Create a typed literal of type xsd:dateTime from a Calendar object.
    • createTypedLiteral

      Literal createTypedLiteral(char v)
      create a typed literal from a char value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(float v)
      create a typed literal from a float value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(double v)
      create a typed literal from a double value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(String v)
      create a typed literal from a String value.
      Parameters:
      v - the value of the literal
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(Object v)
      create a literal from an Object.
      Parameters:
      v - the value of the literal.
      Returns:
      a new literal representing the value v
    • createTypedLiteral

      Literal createTypedLiteral(String lex, String typeURI)
      Build a typed literal from its lexical form. The lexical form will be parsed now and the value stored. If the form is not legal this will throw an exception.
      Parameters:
      lex - the lexical form of the literal
      typeURI - the uri of the type of the literal, null for xsd;string (RDF 1.1)
      Throws:
      DatatypeFormatException - if lex is not a legal form of dtype
    • createTypedLiteral

      Literal createTypedLiteral(Object value, String typeURI)
      Build a typed literal from its value form.

      Note that in preview releases of Jena2 it was also possible to specify a language type. Changes to the RDF specification mean that this is no longer legal except for plain literals. To create a plain literal with a language tag use createLiteral.

      Parameters:
      value - the value of the literal
      typeURI - the URI of the type of the literal, null for old style "plain" literals
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, boolean o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, float o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, double o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, long o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, int o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, char o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createLiteralStatement

      Statement createLiteralStatement(Resource s, Property p, Object o)
      Answer a new Statement object (s, p, o') where o' is the typed literal corresponding to o using createTypedLiteral.
    • createStatement

      Statement createStatement(Resource s, Property p, String o)
      Create a Statement instance.

      Subsequent operations on the statement or any of its parts may modify this model.

      Creating a statement does not add it to the set of statements in the model.

      The Object o will be converted to a Literal.

      Parameters:
      s - the subject of the statement
      p - the predicate of the statement
      o - is the value to be the object of the statement
      Returns:
      the new statement
    • createStatement

      Statement createStatement(Resource s, Property p, String o, String l)
      Create a Statement instance.

      Subsequent operations on the statement or any of its parts may modify this model.

      Creating a statement does not add it to the set of statements in the model.

      The Object o will be converted to a Literal.

      Parameters:
      s - the subject of the statement
      p - the predicate of the statement
      o - is the value to be the object of the statement
      l - the language associated with the object
      Returns:
      the new statement
    • createBag

      Bag createBag()
      Create a new anonymous bag.

      Subsequent operations on the bag or any of its parts may modify this model.

      A statement defining the type of the new bag is added to this model.

      Returns:
      a new anonymous bag.
    • createBag

      Bag createBag(String uri)
      Create a new bag.

      Subsequent operations on the bag or any of its parts may modify this model.

      A statement defining the type of the new bag is added to this model.

      Parameters:
      uri - The URI of the new Bag.
      Returns:
      a new bag.
    • createAlt

      Alt createAlt()
      Create a new anonymous alt.

      Subsequent operations on the alt or any of its parts may modify this model.

      A statement defining the type of the new alt is added to this model.

      Returns:
      a new anonymous alt.
    • createAlt

      Alt createAlt(String uri)
      Create a new alt.

      Subsequent operations on the alt or any of its parts may modify this model.

      A statement defining the type of the new alt is added to this model.

      Parameters:
      uri - The URI of the new alt.
      Returns:
      a new alt.
    • createSeq

      Seq createSeq()
      Create a new anonymous seq.

      Subsequent operations on the seq or any of its parts may modify this model.

      A statement defining the type of the new seq is added to this model.

      Returns:
      a new anonymous seq.
    • createSeq

      Seq createSeq(String uri)
      Create a new seq.

      Subsequent operations on the seq or any of its parts may modify this model.

      A statement defining the type of the new seq is added to this model.

      Parameters:
      uri - The URI of the new seq.
      Returns:
      a new seq.
    • add

      Model add(Resource s, Property p, RDFNode o)
      add a statement to this model.
      Parameters:
      s - the subject of the statement to add
      p - the predicate of the statement to add
      o - the object of the statement to add
      Returns:
      this model
    • addLiteral

      Model addLiteral(Resource s, Property p, boolean o)
      Add the statement (s, p, createTypedLiteral( o )) to this model and answer this model.
    • addLiteral

      Model addLiteral(Resource s, Property p, long o)
      Add the statement (s, p, createTypedLiteral( o )) to this model and answer this model.
    • addLiteral

      Model addLiteral(Resource s, Property p, int o)
      Add the statement (s, p, createTypedLiteral( o )) to this model and answer this model.
    • addLiteral

      Model addLiteral(Resource s, Property p, char o)
      Add the statement (s, p, createTypedLiteral( o )) to this model and answer this model.
    • addLiteral

      Model addLiteral(Resource s, Property p, float o)
      Add the statement (s, p, o') to the model, where o' is the typed literal corresponding to o. Answer this model.
    • addLiteral

      Model addLiteral(Resource s, Property p, double o)
      Add the statement (s, p, o') to the model, where o' is the typed literal corresponding to o. Answer this model.
    • addLiteral

      Model addLiteral(Resource s, Property p, Literal o)
      add a statement to this model.
      Parameters:
      s - the subject of the statement to add
      p - the predicate of the statement to add
      o - the object of the statement to add
      Returns:
      this model
    • add

      Model add(Resource s, Property p, String o)
      add a statement to this model.
      Parameters:
      s - the subject of the statement to add
      p - the predicate of the statement to add
      o - the object of the statement to add
      Returns:
      this model
    • add

      Model add(Resource s, Property p, String lex, RDFDatatype datatype)
      add a statement to this model.
      Parameters:
      s - the subject of the statement to add
      p - the predicate of the statement to add
      lex - the lexcial form of the literal
      datatype - the datatype of the literal
      Returns:
      this model
    • add

      Model add(Resource s, Property p, String o, String l)
    • remove

      Model remove(Resource s, Property p, RDFNode o)
      remove the statement (s, p, o) from this model and answer this model. None of s, p, o are permitted to be null: for wildcard removal, see removeAll.
    • remove

      Model remove(StmtIterator iter)
      Remove all the Statements returned by an iterator.
      Parameters:
      iter - the iterator which returns the statements to be removed.
      Returns:
      this model
    • remove

      Model remove(Model m)
      Remove all the Statements in a given model, including reified statements
      Parameters:
      m - the model containing the statements to be removed.
      Returns:
      this model
    • listLiteralStatements

      StmtIterator listLiteralStatements(Resource subject, Property predicate, boolean object)
      Answer a statement iterator that will iterate over all the statements (S, P, O) in this model where S matches subject, P matches predicate, and O matches the typed literal corresponding to object.
    • listLiteralStatements

      StmtIterator listLiteralStatements(Resource subject, Property predicate, char object)
      Answer a statement iterator that will iterate over all the statements (S, P, O) in this model where S matches subject, P matches predicate, and O matches the typed literal corresponding to object.
    • listLiteralStatements

      StmtIterator listLiteralStatements(Resource subject, Property predicate, long object)
      Answer a statement iterator that will iterate over all the statements (S, P, O) in this model where S matches subject, P matches predicate, and O matches the typed literal corresponding to object.
    • listLiteralStatements

      StmtIterator listLiteralStatements(Resource subject, Property predicate, int object)
      Answer a statement iterator that will iterate over all the statements (S, P, O) in this model where S matches subject, P matches predicate, and O matches the typed literal corresponding to object.
    • listLiteralStatements

      StmtIterator listLiteralStatements(Resource subject, Property predicate, float object)
      Answer a statement iterator that will iterate over all the statements (S, P, O) in this model where S matches subject, P matches predicate, and O matches the typed literal corresponding to object.
    • listLiteralStatements

      StmtIterator listLiteralStatements(Resource subject, Property predicate, double object)
      Answer a statement iterator that will iterate over all the statements (S, P, O) in this model where S matches subject, P matches predicate, and O matches the typed literal corresponding to object.
    • listStatements

      StmtIterator listStatements(Resource subject, Property predicate, String object)
      Find all the statements matching a pattern.

      Return an iterator over all the statements in a model that match a pattern. The statements selected are those whose subject matches the subject argument, whose predicate matches the predicate argument and whose object matchesthe object argument.

      Parameters:
      subject - The subject sought
      predicate - The predicate sought
      object - The value sought
      Returns:
      an iterator over the subjects
    • listStatements

      StmtIterator listStatements(Resource subject, Property predicate, String object, String lang)
      Find all the statements matching a pattern.

      Return an iterator over all the statements in a model that match a pattern. The statements selected are those whose subject matches the subject argument, whose predicate matches the predicate argument and whose object matchesthe object argument. If an argument is null it matches anything.

      Parameters:
      subject - The subject sought
      predicate - The predicate sought
      object - The value sought
      lang - The lang code ofthe string.
      Returns:
      an iterator over the subjects
    • listResourcesWithProperty

      ResIterator listResourcesWithProperty(Property p, boolean o)
      Answer an iterator [without duplicates] over all the resources in this model which have value o' for property p, where o' is the typed literal corresponding to o.
    • listResourcesWithProperty

      ResIterator listResourcesWithProperty(Property p, long o)
      Answer an iterator [without duplicates] over all the resources in this model which have value o' for property p, where o' is the typed literal corresponding to o.
    • listResourcesWithProperty

      ResIterator listResourcesWithProperty(Property p, char o)
      Answer an iterator [without duplicates] over all the resources in this model which have value o' for property p, where o' is the typed literal corresponding to o.
    • listResourcesWithProperty

      ResIterator listResourcesWithProperty(Property p, float o)
      Answer an iterator [without duplicates] over all the resources in this model which have value o' for property p, where o' is the typed literal corresponding to o.
    • listResourcesWithProperty

      ResIterator listResourcesWithProperty(Property p, double o)
      Answer an iterator [without duplicates] over all the resources in this model which have value o' for property p, where o' is the typed literal corresponding to o.
    • listResourcesWithProperty

      ResIterator listResourcesWithProperty(Property p, Object o)
      Answer an iterator [without duplicates] over all the resources in this model which have value o' for property p, where o' is the typed literal corresponding to o.
    • listSubjectsWithProperty

      ResIterator listSubjectsWithProperty(Property p, String o)
      lists all subjects with a given property and property value.
      Parameters:
      p - The predicate sought.
      o - The property value sought.
      Returns:
      an iterator over the set of subjects
    • listSubjectsWithProperty

      ResIterator listSubjectsWithProperty(Property p, String o, String l)
      lists all subjects with a given property and property value.
      Parameters:
      p - The predicate sought.
      o - The property value sought.
      l - the language associated with the object
      Returns:
      an iterator over the set of subjects
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, boolean o)
      Answer true iff this model contains the statement (s, p, o') where o' is the typed literal corresponding to the value o.
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, long o)
      Answer true iff this model contains the statement (s, p, o') where o' is the typed literal corresponding to the value o.
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, int o)
      Answer true iff this model contains the statement (s, p, o') where o' is the typed literal corresponding to the value o.
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, char o)
      Answer true iff this model contains the statement (s, p, o') where o' is the typed literal corresponding to the value o.
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, float o)
      Answer true iff this model contains (s, p, o') where o' is the typed literal corresponding to o.
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, double o)
      Answer true iff this model contains the statement (s, p, o') where o' is the typed literal corresponding to the value o.
    • containsLiteral

      boolean containsLiteral(Resource s, Property p, Object o)
      Answer true iff this model contains the statement (s, p, o') where o' is the typed literal corresponding to the value o.
    • contains

      boolean contains(Resource s, Property p, String o)
      Determine if a statement is present in this model.
      Parameters:
      s - The subject of the statment tested.
      p - The predicate of the statement tested.
      o - The object of the statement tested.
      Returns:
      true if the statement with subject s, property p and object o is in the model, false otherwise
    • contains

      boolean contains(Resource s, Property p, String o, String l)
      Determine if a statement is present in this model.
      Parameters:
      s - The subject of the statment tested.
      p - The predicate of the statement tested.
      o - The object of the statement tested.
      l - the language associated with the object
      Returns:
      true if the statement with subject s, property p and object o is in the model, false otherwise