public class OntModelSpec extends Object
Encapsulates a description of the components of an ontology model, including the storage scheme, reasoner and language profile.
Modifier and Type | Field and Description |
---|---|
static OntModelSpec |
OWL_DL_MEM
A specification for OWL DL models that are stored in memory and do no additional entailment reasoning
|
static OntModelSpec |
OWL_DL_MEM_RDFS_INF
A specification for OWL DL models that are stored in memory and use the RDFS inferencer for additional entailments
|
static OntModelSpec |
OWL_DL_MEM_RULE_INF
A specification for OWL DL models that are stored in memory and use the OWL rules inference engine for additional entailments
|
static OntModelSpec |
OWL_DL_MEM_TRANS_INF
A specification for OWL DL models that are stored in memory and use the transitive inferencer for additional entailments
|
static OntModelSpec |
OWL_LITE_MEM
A specification for OWL Lite models that are stored in memory and do no entailment additional reasoning
|
static OntModelSpec |
OWL_LITE_MEM_RDFS_INF
A specification for OWL Lite models that are stored in memory and use the RDFS inferencer for additional entailments
|
static OntModelSpec |
OWL_LITE_MEM_RULES_INF
A specification for OWL Lite models that are stored in memory and use the OWL rules inference engine for additional entailments
|
static OntModelSpec |
OWL_LITE_MEM_TRANS_INF
A specification for OWL Lite models that are stored in memory and use the transitive inferencer for additional entailments
|
static OntModelSpec |
OWL_MEM
A specification for OWL models that are stored in memory and do no additional entailment reasoning
|
static OntModelSpec |
OWL_MEM_MICRO_RULE_INF
A specification for OWL models that are stored in memory and use the micro OWL rules inference engine for additional entailments
|
static OntModelSpec |
OWL_MEM_MINI_RULE_INF
A specification for OWL models that are stored in memory and use the mini OWL rules inference engine for additional entailments
|
static OntModelSpec |
OWL_MEM_RDFS_INF
A specification for OWL models that are stored in memory and use the RDFS inferencer for additional entailments
|
static OntModelSpec |
OWL_MEM_RULE_INF
A specification for OWL models that are stored in memory and use the OWL rules inference engine for additional entailments
|
static OntModelSpec |
OWL_MEM_TRANS_INF
A specification for OWL models that are stored in memory and use the transitive inferencer for additional entailments
|
static OntModelSpec |
RDFS_MEM
A specification for RDFS ontology models that are stored in memory and do no additional entailment reasoning
|
static OntModelSpec |
RDFS_MEM_RDFS_INF
A specification for RDFS ontology models that are stored in memory and use the RDFS inferencer for additional entailments
|
static OntModelSpec |
RDFS_MEM_TRANS_INF
A specification for RDFS ontology models that are stored in memory and use the transitive reasoner for entailments
|
Constructor and Description |
---|
OntModelSpec(ModelMaker baseMaker,
ModelMaker importsMaker,
OntDocumentManager docMgr,
ReasonerFactory rFactory,
String languageURI)
Construct a new ontology model specification from the supplied components.
|
OntModelSpec(ModelMaker importsMaker,
OntDocumentManager docMgr,
ReasonerFactory rFactory,
String languageURI)
Construct a new ontology model specification with the given specification parameters
|
OntModelSpec(OntModelSpec spec)
Create one model spec as a copy of another.
|
OntModelSpec(String baseModelName,
ModelMaker baseMaker,
ModelMaker importsMaker,
OntDocumentManager docMgr,
ReasonerFactory rFactory,
String languageURI)
Construct a new ontology model specification from the supplied components.
|
Modifier and Type | Method and Description |
---|---|
static OntModelSpec |
assemble(Model model)
Answer the OntModelSpec described using the Jena Assembler vocabulary
properties of the single resource in
model of type
JA:OntModelSpec. |
static OntModelSpec |
assemble(Resource root)
Answer the OntModelSpec described using the Jena Assembler vocabulary
properties of
root . |
Model |
createBaseModel()
Answer a base model constructed according to this specification.
|
Model |
doCreateModel()
Create an OntModel according to this model specification.
|
boolean |
equals(Object other) |
ModelMaker |
getBaseModelMaker()
Answer the model maker used for creating base models.
|
static OntModelSpec |
getDefaultSpec(String languageURI)
Answer a default specification for the given language URI.
|
OntDocumentManager |
getDocumentManager()
Answer the document manager for this model specification.
|
ModelGetter |
getImportModelGetter() |
ModelMaker |
getImportModelMaker()
Answer the model maker used for creating imported models.
|
String[][] |
getKnownPrefixes()
Returns the set of known (built-in) namespace prefixes for this OntModelSpec
|
String |
getLanguage()
Answer the URI of the ontology language to use when constructing
models from this specification.
|
Profile |
getProfile()
Answer the language profile for this ontology specification
|
Reasoner |
getReasoner()
Answer the reasoner that will be used to infer additional entailed
triples in the ontology model.
|
ReasonerFactory |
getReasonerFactory()
Answer the current reasoner factory
|
Model |
implementCreateModelOver(String name)
Create an OntModel according to this model specification.
|
void |
setBaseModelMaker(ModelMaker m)
Set the model maker used for base models.
|
void |
setDocumentManager(OntDocumentManager docMgr)
Set the document manager in this specification
|
void |
setImportModelGetter(ModelGetter mg) |
void |
setImportModelMaker(ModelMaker maker)
Set the model maker that will be used when the ontology model needs to create
an additional container for an imported ontology
|
void |
setLanguage(String languageURI)
Set the URI of the ontology to use for models that conform to
this specification.
|
void |
setReasoner(Reasoner reasoner)
Set the reasoner that will be used by ontology models that conform
to this specification to compute entailments.
|
void |
setReasonerFactory(ReasonerFactory rFactory)
Set the factory object that will be used to generate the reasoner object
for this model specification.
|
public static final OntModelSpec OWL_MEM
public static final OntModelSpec OWL_MEM_RDFS_INF
public static final OntModelSpec OWL_MEM_TRANS_INF
public static final OntModelSpec OWL_MEM_RULE_INF
public static final OntModelSpec OWL_MEM_MICRO_RULE_INF
public static final OntModelSpec OWL_MEM_MINI_RULE_INF
public static final OntModelSpec OWL_DL_MEM
public static final OntModelSpec OWL_DL_MEM_RDFS_INF
public static final OntModelSpec OWL_DL_MEM_TRANS_INF
public static final OntModelSpec OWL_DL_MEM_RULE_INF
public static final OntModelSpec OWL_LITE_MEM
public static final OntModelSpec OWL_LITE_MEM_TRANS_INF
public static final OntModelSpec OWL_LITE_MEM_RDFS_INF
public static final OntModelSpec OWL_LITE_MEM_RULES_INF
public static final OntModelSpec RDFS_MEM
public static final OntModelSpec RDFS_MEM_TRANS_INF
public static final OntModelSpec RDFS_MEM_RDFS_INF
public OntModelSpec(ModelMaker importsMaker, OntDocumentManager docMgr, ReasonerFactory rFactory, String languageURI)
Construct a new ontology model specification with the given specification parameters
importsMaker
- The model maker, which will be used to construct stores for statements in the
imported ontologies and the base ontology. Use null to get a default (memory) model maker.docMgr
- The document manager, or null for the default document manager.rFactory
- The factory for the reasoner to use to infer additional triples in the model, or null for no reasonerlanguageURI
- The URI of the ontology language. Required.public OntModelSpec(ModelMaker baseMaker, ModelMaker importsMaker, OntDocumentManager docMgr, ReasonerFactory rFactory, String languageURI)
baseMaker
- the model-maker to use for the base modelimportsMaker
- the model-maker to use for imported modelsdocMgr
- the document manager (null for the default manager)rFactory
- the reasoner (null for no reasoner)languageURI
- the ontology language URI (must not be null)public OntModelSpec(String baseModelName, ModelMaker baseMaker, ModelMaker importsMaker, OntDocumentManager docMgr, ReasonerFactory rFactory, String languageURI)
baseModelName
- the name of the model in the baseModelMakerbaseMaker
- the model-maker to use for the base modelimportsMaker
- the model-maker to use for imported modelsdocMgr
- the document manager (null for the default manager)rFactory
- the reasoner (null for no reasoner)languageURI
- the ontology language URI (must not be null)public OntModelSpec(OntModelSpec spec)
Create one model spec as a copy of another. This is useful when what is required is similar to
an existing spec, but with some changes. Note: this is only a shallow copy, so the
structured objects (reasoners, document managers, etc) are not themselves copied. Thus, even after
calling this copy constructor, making a change to the document manager in the copy specification
will also affect the one that the copy was made from. The correct idiom is to replace the object
before side-effecting it, e.g:
OntModelSpec newSpec = new OntModelSpec( existingSpec );
newSpec.setDocumentManager( new OntDocumentManager() );
newSpec.getDocumentManager().setMetaDataSearchPath( "..." );
spec
- public ModelMaker getImportModelMaker()
public ModelMaker getBaseModelMaker()
public ModelGetter getImportModelGetter()
public void setImportModelGetter(ModelGetter mg)
public static OntModelSpec assemble(Resource root)
root
. If the assembled resource is not
an OntModelSpec, throw an exception reporting the constructed class.public static OntModelSpec assemble(Model model)
model
of type
JA:OntModelSpec.public static OntModelSpec getDefaultSpec(String languageURI)
Answer a default specification for the given language URI. This default
will typically use a memory model and have minimal inferencing capabilities.
Specifically, OWL and RDFS languages will have RDFS level inferencing
capability (chosen to give a reasonable balance between power and efficiency
of computation).
To get other (more powerful or less powerful) reasoning capabilities, users
should create ontology models by passing an explicit OntModelSpec
parameter to the
model factory
.
languageURI
- The ontology language we want a default model spec forOntologyException
- if the URI is not a recognised name of an ontology languagepublic OntDocumentManager getDocumentManager()
Answer the document manager for this model specification. Defaults to
a standard instance of OntDocumentManager
public void setDocumentManager(OntDocumentManager docMgr)
Set the document manager in this specification
docMgr
- The new document managerpublic void setImportModelMaker(ModelMaker maker)
Set the model maker that will be used when the ontology model needs to create an additional container for an imported ontology
maker
- The new model maker to usepublic void setBaseModelMaker(ModelMaker m)
Set the model maker used for base models.
m
- The model maker that is used to create the base model
if one is not supplied when a model is created.public Reasoner getReasoner()
Answer the reasoner that will be used to infer additional entailed triples in the ontology model.
public void setReasoner(Reasoner reasoner)
Set the reasoner that will be used by ontology models that conform
to this specification to compute entailments.
Note: The reasoner is generated on demand by the reasoner
factory. To prevent this spec from having a reasoner, set the reasoner factory
to null, see setReasonerFactory(org.apache.jena.reasoner.ReasonerFactory)
.
reasoner
- The new reasonerpublic void setReasonerFactory(ReasonerFactory rFactory)
Set the factory object that will be used to generate the reasoner object
for this model specification. Note that the reasoner itself is cached, so setting
the factory after a call to getReasoner()
will have no effect.
rFactory
- The new reasoner factory, or null to prevent any reasoner being usedpublic ReasonerFactory getReasonerFactory()
Answer the current reasoner factory
public String getLanguage()
Answer the URI of the ontology language to use when constructing
models from this specification. Well known language URI's are
available from the ProfileRegistry
public void setLanguage(String languageURI)
Set the URI of the ontology to use for models that conform to this specification.
languageURI
- The new language URIOntologyException
- if the URI does not map to a known language profilepublic Profile getProfile()
Answer the language profile for this ontology specification
public Model doCreateModel()
Create an OntModel according to this model specification. The base model comes from the attached base ModelMaker.
public Model implementCreateModelOver(String name)
Create an OntModel according to this model specification. The base model comes from the underlying ModelMaker and is named by the given name.
public Model createBaseModel()
public String[][] getKnownPrefixes()
Licenced under the Apache License, Version 2.0