Class ModelFactory

java.lang.Object
org.apache.jena.rdf.model.ModelFactoryBase
org.apache.jena.rdf.model.ModelFactory

public class ModelFactory extends ModelFactoryBase
ModelFactory provides methods for creating standard kinds of Model. (ModelFactoryBase is helper functions for it).
  • Method Details

    • assembleModelFrom

      public static Model assembleModelFrom(Model singleRoot)
      Answer a Model constructed from the single resource in singleRoot of type ja:Model. See the Assembler howto (doc/assembler/assembler-howto.html) for documentation of Assembler descriptions. See also findAssemblerRoots to find the set of possible roots in a description, and assemblerModelFrom(Resource) for assembling a model from its single description.
    • findAssemblerRoots

      public static Set<Resource> findAssemblerRoots(Model m)
      Answer a Set of resources present in m that are explicitly or implicitly of type ja:Object, ie, suitable as roots for assemblerModelFrom. Note that the resource objects returned need not have m as their getModel() - they may be members of an extended constructed model.
    • assembleModelFrom

      public static Model assembleModelFrom(Resource root)
      Answer a Model as described the Assembler specification rooted at the Resource root in its Model. Resource must be of rdf:type ja:Object, where ja is the prefix of Jena Assembler objects.
    • createDefaultModel

      public static Model createDefaultModel()
      Answer a fresh Model with the default specification.
    • createModelForGraph

      public static Model createModelForGraph(Graph g)
      Answer a model that encapsulates the given graph. Existing prefixes are undisturbed.
      Parameters:
      g - A graph structure
      Returns:
      A model presenting an API view of graph g
    • createMemModelMaker

      public static ModelMaker createMemModelMaker()
      Answer a ModelMaker that constructs memory-based Models that do not persist past JVM termination.
      Returns:
      a ModelMaker that constructs memory-based models
    • createRDFSModel

      public static InfModel createRDFSModel(Model model)
      Return a Model through which all the RDFS entailments derivable from the given model are accessible. Some work is done when the inferenced model is created but each query will also trigger some additional inference work.
      Parameters:
      model - the Model containing both instance data and schema assertions to be inferenced over
    • createRDFSModel

      public static InfModel createRDFSModel(Model schema, Model model)
      Return a Model through which all the RDFS entailments derivable from the given data and schema models are accessible. There is no strict requirement to separate schema and instance data between the two arguments.
      Parameters:
      model - a Model containing instance data assertions
      schema - a Model containing RDFS schema data
    • createInfModel

      public static InfModel createInfModel(Reasoner reasoner, Model model)
      Build an inferred model by attaching the given RDF model to the given reasoner.
      Parameters:
      reasoner - the reasoner to use to process the data
      model - the Model containing both instance data and schema assertions to be inferenced over, any statements added to the InfModel will be added to this underlying data model.
    • createInfModel

      public static InfModel createInfModel(Reasoner reasoner, Model schema, Model model)
      Build an inferred model by attaching the given RDF model to the given reasoner. This form of the call allows two data sets to be merged and reasoned over - conventionally one contains schema data and one instance data but this is not a formal requirement.
      Parameters:
      reasoner - the reasoner to use to process the data
      schema - a Model containing RDFS schema data
      model - a Model containing instance data assertions, any statements added to the InfModel will be added to this underlying data model.
    • createInfModel

      public static InfModel createInfModel(InfGraph g)
      Build an inference model from an InfGraph. Graphs and InfGraphs are internal implementation level objects rather than normal user objects so this method should only be used if you are sure this is what you need.
      Parameters:
      g - and inference graph
      Returns:
      the same graph wrapped up as an InfModel
    • createOntologyModel

      public static OntModel createOntologyModel()

      Answer a new ontology model which will process in-memory models of ontologies expressed the default ontology language (OWL). The default document manager will be used to load the ontology's included documents.

      Note:The default model chosen for OWL and RDFS includes a weak reasoner that includes some entailments (such as transitive closure on the sub-class and sub-property hierarchies). Users who want either no inference at all, or alternatively more complete reasoning, should use one of the other createOntologyModel methods that allow the preferred OntModel specification to be stated.

      Returns:
      A new ontology model
      See Also:
    • createOntologyModel

      public static OntModel createOntologyModel(String languageURI)

      Answer a new ontology model which will process in-memory models of ontologies in the given language. The default document manager will be used to load the ontology's included documents.

      Parameters:
      languageURI - The URI specifying the ontology language we want to process
      Returns:
      A new ontology model
      See Also:
    • createOntologyModel

      public static OntModel createOntologyModel(OntModelSpec spec, ModelMaker maker, Model base)

      Answer a new ontology model which will process in-memory models of ontologies expressed the default ontology language (OWL). The default document manager will be used to load the ontology's included documents.

      Parameters:
      spec - An ontology model specification that defines the language and reasoner to use
      maker - A model maker that is used to get the initial store for the ontology (unless the base model is given), and create addtional stores for the models in the imports closure
      base - The base model, which contains the contents of the ontology to be processed
      Returns:
      A new ontology model
      See Also:
    • createOntologyModel

      public static OntModel createOntologyModel(OntModelSpec spec, Model base)

      Answer a new ontology model, constructed according to the given ontology model specification, and starting with the ontology data in the given model.

      Parameters:
      spec - An ontology model specification object, that will be used to construct the ontology model with different options of ontology language, reasoner, document manager and storage model
      base - An existing model to treat as an ontology model, or null.
      Returns:
      A new ontology model
      See Also:
    • createOntologyModel

      public static OntModel createOntologyModel(OntModelSpec spec)
      Answer a new ontology model constructed according to the specification, which includes a ModelMaker which will create the necessary base model.
    • createUnion

      public static Model createUnion(Model m1, Model m2)
      Answer a new model that is the dynamic union of two other models. By dynamic union, we mean that changes to either m1 or m2 will be reflected in the result model, and vice versa: specifically, additions to and removals from the union will be implemented as operations on m1 only. See also the behaviour of OntModel and the MultiUnion class.

      createUnion only creates two-element unions.