public class StructuralReasoner extends OWLReasonerBase
Constructor and Description |
---|
StructuralReasoner(OWLOntology rootOntology,
OWLReasonerConfiguration configuration,
BufferingMode bufferingMode) |
Modifier and Type | Method and Description |
---|---|
void |
dumpClassHierarchy(boolean showBottomNode) |
void |
dumpDataPropertyHierarchy(boolean showBottomNode) |
void |
dumpObjectPropertyHierarchy(boolean showBottomNode) |
Node<OWLClass> |
getBottomClassNode()
Gets the
Node corresponding to the bottom node (containing
owl:Nothing ) in the class hierarchy. |
Node<OWLDataProperty> |
getBottomDataPropertyNode()
Gets the
Node corresponding to the bottom node (containing
owl:bottomDataProperty ) in the data property hierarchy. |
Node<OWLObjectPropertyExpression> |
getBottomObjectPropertyNode()
Gets the
Node corresponding to the bottom node (containing
owl:bottomObjectProperty ) in the object property hierarchy. |
NodeSet<OWLClass> |
getDataPropertyDomains(OWLDataProperty pe,
boolean direct)
Gets the named classes that are the direct or indirect domains of this
property with respect to the imports closure of the root ontology.
|
Set<OWLLiteral> |
getDataPropertyValues(OWLNamedIndividual ind,
OWLDataProperty pe)
Gets the data property values for the specified individual and data
property expression.
|
NodeSet<OWLNamedIndividual> |
getDifferentIndividuals(OWLNamedIndividual ind)
Gets the individuals which are entailed to be different from the
specified individual.
|
NodeSet<OWLClass> |
getDisjointClasses(OWLClassExpression ce)
Gets the classes that are disjoint with the specified class expression
ce . |
NodeSet<OWLDataProperty> |
getDisjointDataProperties(OWLDataPropertyExpression pe)
Gets the data properties that are disjoint with the specified data
property expression
pe . |
NodeSet<OWLObjectPropertyExpression> |
getDisjointObjectProperties(OWLObjectPropertyExpression pe)
Gets the simplified object property expressions that
are disjoint with the specified object property expression
pe . |
Node<OWLClass> |
getEquivalentClasses(OWLClassExpression ce)
Gets the set of named classes that are equivalent to the specified class
expression with respect to the set of reasoner axioms.
|
Node<OWLDataProperty> |
getEquivalentDataProperties(OWLDataProperty pe)
Gets the set of named data properties that are equivalent to the
specified data property expression with respect to the imports closure of
the root ontology.
|
Node<OWLObjectPropertyExpression> |
getEquivalentObjectProperties(OWLObjectPropertyExpression pe)
Gets the set of simplified object property expressions
that are equivalent to the specified object property expression with
respect to the set of reasoner axioms.
|
FreshEntityPolicy |
getFreshEntityPolicy()
Gets the Fresh Entity Policy in use by this reasoner.
|
IndividualNodeSetPolicy |
getIndividualNodeSetPolicy()
Gets the IndividualNodeSetPolicy in use by this reasoner.
|
NodeSet<OWLNamedIndividual> |
getInstances(OWLClassExpression ce,
boolean direct)
Gets the individuals which are instances of the specified class
expression.
|
Node<OWLObjectPropertyExpression> |
getInverseObjectProperties(OWLObjectPropertyExpression pe)
Gets the set of simplified object property expressions
that are the inverses of the specified object property expression with
respect to the imports closure of the root ontology.
|
NodeSet<OWLClass> |
getObjectPropertyDomains(OWLObjectPropertyExpression pe,
boolean direct)
Gets the named classes that are the direct or indirect domains of this
property with respect to the imports closure of the root ontology.
|
NodeSet<OWLClass> |
getObjectPropertyRanges(OWLObjectPropertyExpression pe,
boolean direct)
Gets the named classes that are the direct or indirect ranges of this
property with respect to the imports closure of the root ontology.
|
NodeSet<OWLNamedIndividual> |
getObjectPropertyValues(OWLNamedIndividual ind,
OWLObjectPropertyExpression pe)
Gets the object property values for the specified individual and object
property expression.
|
Set<InferenceType> |
getPrecomputableInferenceTypes()
Returns the set of
InferenceType s
that are precomputable by reasoner. |
String |
getReasonerName()
Gets the name of this reasoner.
|
Version |
getReasonerVersion()
Gets the version of this reasoner.
|
Node<OWLNamedIndividual> |
getSameIndividuals(OWLNamedIndividual ind)
Gets the individuals that are the same as the specified individual.
|
NodeSet<OWLClass> |
getSubClasses(OWLClassExpression ce,
boolean direct)
Gets the set of named classes that are the strict (potentially direct)
subclasses of the specified class expression with respect to the reasoner
axioms.
|
NodeSet<OWLDataProperty> |
getSubDataProperties(OWLDataProperty pe,
boolean direct)
Gets the set of named data properties that are the strict (potentially
direct) subproperties of the specified data property expression with
respect to the imports closure of the root ontology.
|
NodeSet<OWLObjectPropertyExpression> |
getSubObjectProperties(OWLObjectPropertyExpression pe,
boolean direct)
Gets the set of simplified object property expressions
that are the strict (potentially direct) subproperties of the specified
object property expression with respect to the imports closure of the
root ontology.
|
NodeSet<OWLClass> |
getSuperClasses(OWLClassExpression ce,
boolean direct)
Gets the set of named classes that are the strict (potentially direct)
super classes of the specified class expression with respect to the
imports closure of the root ontology.
|
NodeSet<OWLDataProperty> |
getSuperDataProperties(OWLDataProperty pe,
boolean direct)
Gets the set of named data properties that are the strict (potentially
direct) super properties of the specified data property with respect to
the imports closure of the root ontology.
|
NodeSet<OWLObjectPropertyExpression> |
getSuperObjectProperties(OWLObjectPropertyExpression pe,
boolean direct)
Gets the set of simplified object property expressions
that are the strict (potentially direct) super properties of the
specified object property expression with respect to the imports closure
of the root ontology.
|
Node<OWLClass> |
getTopClassNode()
Gets the
Node corresponding to the top node (containing
owl:Thing ) in the class hierarchy. |
Node<OWLDataProperty> |
getTopDataPropertyNode()
Gets the
Node corresponding to the top node (containing
owl:topDataProperty ) in the data property hierarchy. |
Node<OWLObjectPropertyExpression> |
getTopObjectPropertyNode()
Gets the
Node corresponding to the top node (containing
owl:topObjectProperty ) in the object property hierarchy. |
NodeSet<OWLClass> |
getTypes(OWLNamedIndividual ind,
boolean direct)
Gets the named classes which are (potentially direct) types of the
specified named individual.
|
Node<OWLClass> |
getUnsatisfiableClasses()
A convenience method that obtains the classes in the signature of the
root ontology that are unsatisfiable.
|
void |
interrupt()
Asks the reasoner to interrupt what it is currently doing.
|
boolean |
isConsistent()
Determines if the set of reasoner axioms is consistent.
|
boolean |
isEntailed(OWLAxiom axiom)
A convenience method that determines if the specified axiom is entailed
by the set of reasoner axioms.
|
boolean |
isEntailed(Set<? extends OWLAxiom> axioms)
Determines if the specified set of axioms is entailed by the reasoner
axioms.
|
boolean |
isEntailmentCheckingSupported(AxiomType<?> axiomType)
Determines if entailment checking for the specified axiom type is
supported.
|
boolean |
isPrecomputed(InferenceType inferenceType)
Determines if a specific set of inferences have been precomputed.
|
boolean |
isSatisfiable(OWLClassExpression classExpression)
A convenience method that determines if the specified class expression is
satisfiable with respect to the reasoner axioms.
|
void |
precomputeInferences(InferenceType... inferenceTypes)
Asks the reasoner to precompute certain types of inferences.
|
void |
prepareReasoner() |
dispose, flush, getBufferingMode, getOWLDataFactory, getPendingAxiomAdditions, getPendingAxiomRemovals, getPendingChanges, getReasonerAxioms, getReasonerConfiguration, getRootOntology, getTimeOut
public StructuralReasoner(OWLOntology rootOntology, OWLReasonerConfiguration configuration, BufferingMode bufferingMode)
rootOntology
- the ontologyconfiguration
- the reasoner configurationbufferingMode
- the buffering modepublic String getReasonerName()
OWLReasoner
public FreshEntityPolicy getFreshEntityPolicy()
OWLReasoner
getFreshEntityPolicy
in interface OWLReasoner
getFreshEntityPolicy
in class OWLReasonerBase
public IndividualNodeSetPolicy getIndividualNodeSetPolicy()
OWLReasoner
getIndividualNodeSetPolicy
in interface OWLReasoner
getIndividualNodeSetPolicy
in class OWLReasonerBase
public Version getReasonerVersion()
OWLReasoner
null
.public void interrupt()
OWLReasoner
public void prepareReasoner() throws ReasonerInterruptedException, TimeOutException
ReasonerInterruptedException
- on interruptionTimeOutException
- on timeoutpublic void precomputeInferences(InferenceType... inferenceTypes) throws ReasonerInterruptedException, TimeOutException, InconsistentOntologyException
OWLReasoner
SubClassOf(A B)
then the result of
getSubClasses(B)
will contain A
, regardless of whether
precomputeInferences( InferenceType#CLASS_HIERARCHY)
has been
called. inferenceTypes
- Suggests a list of the types of inferences that should be
precomputed. If the list is empty then the reasoner will determine
which types of inferences are precomputed. Note that the order of
the list is unimportant - the reasoner will determine the order in
which inferences are computed.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentpublic boolean isPrecomputed(InferenceType inferenceType)
OWLReasoner
inferenceType
- The type of inference to check for.true
if the specified type of inferences have been
precomputed, otherwise false
.public Set<InferenceType> getPrecomputableInferenceTypes()
OWLReasoner
InferenceType
s
that are precomputable by reasoner.InferenceType
s
that can be precomputed by this reasoner.public boolean isConsistent() throws ReasonerInterruptedException, TimeOutException
OWLReasoner
InconsistentOntologyException
even if the root ontology imports closure is inconsistent.true
if the imports closure of the root ontology is
consistent, or false
if the imports closure of the root
ontology is inconsistent.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process).TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public boolean isSatisfiable(OWLClassExpression classExpression) throws ReasonerInterruptedException, TimeOutException, ClassExpressionNotInProfileException, FreshEntitiesException, InconsistentOntologyException
OWLReasoner
classExpression
- The class expressiontrue
if classExpression is satisfiable with respect to
the set of axioms, or false
if classExpression is
unsatisfiable with respect to the axioms.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.ClassExpressionNotInProfileException
- if classExpression
is not within the profile that is
supported by this reasoner.FreshEntitiesException
- if the signature of the classExpression is not contained within
the signature of the set of reasoner axioms.InconsistentOntologyException
- if the set of reasoner axioms is inconsistentpublic Node<OWLClass> getUnsatisfiableClasses() throws ReasonerInterruptedException, TimeOutException
OWLReasoner
Node
that is the bottom node in the class hierarchy.
This node represents owl:Nothing
and contains
owl:Nothing
itself plus classes that are equivalent to
owl:Nothing
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public boolean isEntailed(OWLAxiom axiom) throws ReasonerInterruptedException, UnsupportedEntailmentTypeException, TimeOutException, AxiomNotInProfileException, FreshEntitiesException, InconsistentOntologyException
OWLReasoner
axiom
- The axiomtrue
if axiom
is entailed by the reasoner axioms
or false
if axiom
is not entailed by the reasoner
axioms. true
if the set of reasoner axioms is
inconsistent.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)UnsupportedEntailmentTypeException
- if the reasoner cannot perform a check to see if the specified
axiom is entailedTimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.AxiomNotInProfileException
- if axiom
is not in the profile that is supported by this
reasoner.FreshEntitiesException
- if the signature of the axiom is not contained within the
signature of the imports closure of the root ontology.InconsistentOntologyException
- if the set of reasoner axioms is inconsistentOWLReasoner.isEntailmentCheckingSupported(org.semanticweb.owlapi.model.AxiomType)
public boolean isEntailed(Set<? extends OWLAxiom> axioms) throws ReasonerInterruptedException, UnsupportedEntailmentTypeException, TimeOutException, AxiomNotInProfileException, FreshEntitiesException, InconsistentOntologyException
OWLReasoner
axioms
- The set of axioms to be testedtrue
if the set of axioms is entailed by the axioms in
the imports closure of the root ontology, otherwise false
. If the set of reasoner axioms is inconsistent then true
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)UnsupportedEntailmentTypeException
- if the reasoner cannot perform a check to see if the specified
axiom is entailedTimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.AxiomNotInProfileException
- if axiom
is not in the profile that is supported by this
reasoner.FreshEntitiesException
- if the signature of the set of axioms is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.InconsistentOntologyException
- if the set of reasoner axioms is inconsistentOWLReasoner.isEntailmentCheckingSupported(org.semanticweb.owlapi.model.AxiomType)
public boolean isEntailmentCheckingSupported(AxiomType<?> axiomType)
OWLReasoner
axiomType
- The axiom typetrue
if entailment checking for the specified axiom type
is supported, otherwise false
. If true
then
asking OWLReasoner.isEntailed(org.semanticweb.owlapi.model.OWLAxiom)
will not throw an exception of
UnsupportedEntailmentTypeException
. If false
then asking
OWLReasoner.isEntailed(org.semanticweb.owlapi.model.OWLAxiom)
will throw an
UnsupportedEntailmentTypeException
.public Node<OWLClass> getTopClassNode()
OWLReasoner
Node
corresponding to the top node (containing
owl:Thing
) in the class hierarchy.Node
containing owl:Thing
that is the top node
in the class hierarchy. This Node
is essentially equal to
the Node
returned by calling
OWLReasoner.getEquivalentClasses(org.semanticweb.owlapi.model.OWLClassExpression)
with a parameter of owl:Thing
.public Node<OWLClass> getBottomClassNode()
OWLReasoner
Node
corresponding to the bottom node (containing
owl:Nothing
) in the class hierarchy.Node
containing owl:Nothing
that is the bottom
node in the class hierarchy. This Node
is essentially
equal to the Node
that will be returned by calling
OWLReasoner.getEquivalentClasses(org.semanticweb.owlapi.model.OWLClassExpression)
with a parameter of owl:Nothing
.public NodeSet<OWLClass> getSubClasses(OWLClassExpression ce, boolean direct) throws InconsistentOntologyException, ClassExpressionNotInProfileException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.ce
- The class expression whose strict (direct) subclasses are to be
retrieved.direct
- Specifies if the direct subclasses should be retrived (
true
) or if the all subclasses (descendant) classes should
be retrieved (false
).true
, a NodeSet
such that for each
class C
in the NodeSet
the set of reasoner axioms
entails DirectSubClassOf(C, ce)
. false
, a NodeSet
such that for each
class C
in the NodeSet
the set of reasoner axioms
entails StrictSubClassOf(C, ce)
. ce
is equivalent to owl:Nothing
then the empty
NodeSet
will be returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentClassExpressionNotInProfileException
- if classExpression
is not within the profile that is
supported by this reasoner.FreshEntitiesException
- if the signature of the classExpression is not contained within
the signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLClass> getSuperClasses(OWLClassExpression ce, boolean direct) throws InconsistentOntologyException, ClassExpressionNotInProfileException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.ce
- The class expression whose strict (direct) super classes are to be
retrieved.direct
- Specifies if the direct super classes should be retrived (
true
) or if the all super classes (ancestors) classes
should be retrieved (false
).true
, a NodeSet
such that for each
class C
in the NodeSet
the set of reasoner axioms
entails DirectSubClassOf(ce, C)
. false
, a NodeSet
such that for each
class C
in the NodeSet
the set of reasoner axioms
entails StrictSubClassOf(ce, C)
. ce
is equivalent to owl:Thing
then the empty
NodeSet
will be returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentClassExpressionNotInProfileException
- if classExpression
is not within the profile that is
supported by this reasoner.FreshEntitiesException
- if the signature of the classExpression is not contained within
the signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public Node<OWLClass> getEquivalentClasses(OWLClassExpression ce) throws InconsistentOntologyException, ClassExpressionNotInProfileException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
Node
.ce
- The class expression whose equivalent classes are to be retrieved.C
in the node the root ontology imports closure
entails EquivalentClasses(ce C)
. If ce
is not a
class name (i.e. it is an anonymous class expression) and there
are no such classes C
then the node will be empty. ce
is a named class then ce
will be contained
in the node. ce
is unsatisfiable with respect to the set of
reasoner axioms then the node representing and containing
owl:Nothing
, i.e. the bottom node, will be returned. ce
is equivalent to owl:Thing
with respect to
the set of reasoner axioms then the node representing and
containing owl:Thing
, i.e. the top node, will be returned InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentClassExpressionNotInProfileException
- if classExpression
is not within the profile that is
supported by this reasoner.FreshEntitiesException
- if the signature of the classExpression is not contained within
the signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLClass> getDisjointClasses(OWLClassExpression ce)
OWLReasoner
ce
. The classes are returned as a
NodeSet
.ce
- The class expression whose disjoint classes are to be retrieved.NodeSet
such that for each class
D
in the NodeSet
the set of reasoner axioms
entails EquivalentClasses(D, ObjectComplementOf(ce))
or
StrictSubClassOf(D, ObjectComplementOf(ce))
.public Node<OWLObjectPropertyExpression> getTopObjectPropertyNode()
OWLReasoner
Node
corresponding to the top node (containing
owl:topObjectProperty
) in the object property hierarchy.Node
containing owl:topObjectProperty
that is
the top node in the object property hierarchy. This Node
is essentially equivalent to the Node
returned by calling
OWLReasoner.getEquivalentObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression)
with a parameter of owl:topObjectProperty
.public Node<OWLObjectPropertyExpression> getBottomObjectPropertyNode()
OWLReasoner
Node
corresponding to the bottom node (containing
owl:bottomObjectProperty
) in the object property hierarchy.Node
, containing owl:bottomObjectProperty
, that
is the bottom node in the object property hierarchy. This
Node
is essentially equal to the Node
that will
be returned by calling
OWLReasoner.getEquivalentObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression)
with a parameter of owl:bottomObjectProperty
.public NodeSet<OWLObjectPropertyExpression> getSubObjectProperties(OWLObjectPropertyExpression pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The object property expression whose strict (direct) subproperties
are to be retrieved.direct
- Specifies if the direct subproperties should be retrived (
true
) or if the all subproperties (descendants) should be
retrieved (false
).true
, a NodeSet
of simplified object property expressions, such that
for each simplified object property
expression, P
, in the NodeSet
the set of
reasoner axioms entails DirectSubObjectPropertyOf(P, pe)
. false
, a NodeSet
of simplified object property expressions, such that
for each simplified object property
expression, P
, in the NodeSet
the set of
reasoner axioms entails StrictSubObjectPropertyOf(P, pe)
. pe
is equivalent to owl:bottomObjectProperty
then the empty NodeSet
will be returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLObjectPropertyExpression> getSuperObjectProperties(OWLObjectPropertyExpression pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The object property expression whose strict (direct) super
properties are to be retrieved.direct
- Specifies if the direct super properties should be retrived (
true
) or if the all super properties (ancestors) should be
retrieved (false
).true
, a NodeSet
of simplified object property expressions, such that
for each simplified object property
expression, P
, in the NodeSet
, the set of
reasoner axioms entails DirectSubObjectPropertyOf(pe, P)
. false
, a NodeSet
of simplified object property expressions, such that
for each simplified object property
expression, P
, in the NodeSet
, the set of
reasoner axioms entails StrictSubObjectPropertyOf(pe, P)
. pe
is equivalent to owl:topObjectProperty
then
the empty NodeSet
will be returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public Node<OWLObjectPropertyExpression> getEquivalentObjectProperties(OWLObjectPropertyExpression pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
Node
.pe
- The object property expression whose equivalent properties are to
be retrieved.P
, in the node, the set
of reasoner axioms entails
EquivalentObjectProperties(pe P)
. pe
is a simplified object property
expression If pe
is unsatisfiable with respect to the
set of reasoner axioms then the node representing and containing
owl:bottomObjectProperty
, i.e. the bottom node, will be
returned. pe
is equivalent to owl:topObjectProperty
with
respect to the set of reasoner axioms then the node representing
and containing owl:topObjectProperty
, i.e. the top node,
will be returned InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLObjectPropertyExpression> getDisjointObjectProperties(OWLObjectPropertyExpression pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
pe
. The
object properties are returned as a
NodeSet
.pe
- The object property expression whose disjoint object properties
are to be retrieved.NodeSet
of simplified object property expressions, such that
for each simplified object property
expression, P
, in the NodeSet
the set of
reasoner axioms entails
EquivalentObjectProperties(P, ObjectPropertyComplementOf(pe))
or
StrictSubObjectPropertyOf(P, ObjectPropertyComplementOf(pe))
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of pe
is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.and the undeclared entity
policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public Node<OWLObjectPropertyExpression> getInverseObjectProperties(OWLObjectPropertyExpression pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
pe
- The property expression whose inverse properties are to be
retrieved.NodeSet
of simplified object property
expressions, such that for each simplified object property
expression P
in the nodes set, the set of reasoner axioms
entails InverseObjectProperties(pe, P)
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLClass> getObjectPropertyDomains(OWLObjectPropertyExpression pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The property expression whose domains are to be retrieved.direct
- Specifies if the direct domains should be retrieved ( true
), or if all domains should be retrieved ( false
).N = getEquivalentClasses(ObjectSomeValuesFrom(pe owl:Thing))
. direct
is true
: then if N
is not empty
then the return value is N
, else the return value is the
result of
getSuperClasses(ObjectSomeValuesFrom(pe owl:Thing), true)
. direct
is false
: then the result of
getSuperClasses(ObjectSomeValuesFrom(pe owl:Thing), false)
together with N
if N
is non-empty.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLClass> getObjectPropertyRanges(OWLObjectPropertyExpression pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The property expression whose ranges are to be retrieved.direct
- Specifies if the direct ranges should be retrieved ( true
), or if all ranges should be retrieved ( false
).N = getEquivalentClasses(ObjectSomeValuesFrom(ObjectInverseOf(pe) owl:Thing))
. direct
is true
: then if N
is not empty
then the return value is N
, else the return value is the
result of
getSuperClasses(ObjectSomeValuesFrom(ObjectInverseOf(pe) owl:Thing), true)
. direct
is false
: then the result of
getSuperClasses(ObjectSomeValuesFrom(ObjectInverseOf(pe) owl:Thing), false)
together with N
if N
is non-empty.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public Node<OWLDataProperty> getTopDataPropertyNode()
OWLReasoner
Node
corresponding to the top node (containing
owl:topDataProperty
) in the data property hierarchy.Node
, containing owl:topDataProperty
, that is
the top node in the data property hierarchy. This Node
is
essentially equal to the Node
returned by calling
OWLReasoner.getEquivalentDataProperties(org.semanticweb.owlapi.model.OWLDataProperty)
with a parameter of owl:topDataProperty
.public Node<OWLDataProperty> getBottomDataPropertyNode()
OWLReasoner
Node
corresponding to the bottom node (containing
owl:bottomDataProperty
) in the data property hierarchy.Node
, containing owl:bottomDataProperty
, that
is the bottom node in the data property hierarchy. This
Node
is essentially equal to the Node
that will
be returned by calling
OWLReasoner.getEquivalentDataProperties(org.semanticweb.owlapi.model.OWLDataProperty)
with a parameter of owl:bottomDataProperty
.public NodeSet<OWLDataProperty> getSubDataProperties(OWLDataProperty pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The data property whose strict (direct) subproperties are to be
retrieved.direct
- Specifies if the direct subproperties should be retrived (
true
) or if the all subproperties (descendants) should be
retrieved (false
).true
, a NodeSet
such that for each
property P
in the NodeSet
the set of reasoner
axioms entails DirectSubDataPropertyOf(P, pe)
. false
, a NodeSet
such that for each
property P
in the NodeSet
the set of reasoner
axioms entails StrictSubDataPropertyOf(P, pe)
. pe
is equivalent to owl:bottomDataProperty
then the empty NodeSet
will be returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the data property is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLDataProperty> getSuperDataProperties(OWLDataProperty pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The data property whose strict (direct) super properties are to be
retrieved.direct
- Specifies if the direct super properties should be retrived (
true
) or if the all super properties (ancestors) should be
retrieved (false
).true
, a NodeSet
such that for each
property P
in the NodeSet
the set of reasoner
axioms entails DirectSubDataPropertyOf(pe, P)
. false
, a NodeSet
such that for each
property P
in the NodeSet
the set of reasoner
axioms entails StrictSubDataPropertyOf(pe, P)
. pe
is equivalent to owl:topDataProperty
then
the empty NodeSet
will be returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the data property is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public Node<OWLDataProperty> getEquivalentDataProperties(OWLDataProperty pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
Node
.pe
- The data property expression whose equivalent properties are to be
retrieved.P
in the node, the set of reasoner
axioms entails EquivalentDataProperties(pe P)
. pe
is a named data property then pe
will be
contained in the node. pe
is unsatisfiable with respect to the set of
reasoner axioms then the node representing and containing
owl:bottomDataProperty
, i.e. the bottom node, will be
returned. ce
is equivalent to owl:topDataProperty
with
respect to the set of reasoner axioms then the node representing
and containing owl:topDataProperty
, i.e. the top node,
will be returned InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the data property expression is not contained
within the signature of the imports closure of the root ontology
and the undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLDataProperty> getDisjointDataProperties(OWLDataPropertyExpression pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
pe
. The data properties are returned as a
NodeSet
.pe
- The data property expression whose disjoint data properties are to
be retrieved.NodeSet
such that for each data
property P
in the NodeSet
the set of reasoner
axioms entails
EquivalentDataProperties(P, DataPropertyComplementOf(pe))
or
StrictSubDataPropertyOf(P, DataPropertyComplementOf(pe))
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of pe
is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLClass> getDataPropertyDomains(OWLDataProperty pe, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.pe
- The property expression whose domains are to be retrieved.direct
- Specifies if the direct domains should be retrieved ( true
), or if all domains should be retrieved ( false
).N = getEquivalentClasses(DataSomeValuesFrom(pe rdfs:Literal))
. direct
is true
: then if N
is not empty
then the return value is N
, else the return value is the
result of
getSuperClasses(DataSomeValuesFrom(pe rdfs:Literal), true)
. direct
is false
: then the result of
getSuperClasses(DataSomeValuesFrom(pe rdfs:Literal), false)
together with N
if N
is non-empty. rdfs:Literal
is the top datatype).InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the object property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLClass> getTypes(OWLNamedIndividual ind, boolean direct) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.ind
- The individual whose types are to be retrieved.direct
- Specifies if the direct types should be retrieved ( true
),
or if all types should be retrieved ( false
).direct
is true
, a NodeSet
containing
named classes such that for each named class C
in the
node set, the set of reasoner axioms entails
DirectClassAssertion(C, ind)
. direct
is false
, a NodeSet
containing
named classes such that for each named class C
in the
node set, the set of reasoner axioms entails
ClassAssertion(C, ind)
. InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the individual is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLNamedIndividual> getInstances(OWLClassExpression ce, boolean direct) throws InconsistentOntologyException, ClassExpressionNotInProfileException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.ce
- The class expression whose instances are to be retrieved.direct
- Specifies if the direct instances should be retrieved (
true
), or if all instances should be retrieved (
false
).direct
is true
, a NodeSet
containing
named individuals such that for each named individual j
in the node set, the set of reasoner axioms entails
DirectClassAssertion(ce, j)
. direct
is false
, a NodeSet
containing
named individuals such that for each named individual j
in the node set, the set of reasoner axioms entails
ClassAssertion(ce, j)
. NodeSet
is returned.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentClassExpressionNotInProfileException
- if the class expression ce
is not in the profile that is
supported by this reasoner.FreshEntitiesException
- if the signature of the class expression is not contained within
the signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.IndividualNodeSetPolicy
public NodeSet<OWLNamedIndividual> getObjectPropertyValues(OWLNamedIndividual ind, OWLObjectPropertyExpression pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.ind
- The individual that is the subject of the object property valuespe
- The object property expression whose values are to be retrieved
for the specified individualNodeSet
containing named individuals such that for each
individual j
in the node set, the set of reasoner axioms
entails ObjectPropertyAssertion(pe ind j)
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the individual and property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.IndividualNodeSetPolicy
public Set<OWLLiteral> getDataPropertyValues(OWLNamedIndividual ind, OWLDataProperty pe) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
ind
- The individual that is the subject of the data property valuespe
- The data property expression whose values are to be retrieved for
the specified individualOWLLiteral
s containing literals such that for
each literal l
in the set, the set of reasoner axioms
entails DataPropertyAssertion(pe ind l)
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the individual and property expression is not
contained within the signature of the imports closure of the root
ontology and the undeclared entity policy of this reasoner is set
to FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.IndividualNodeSetPolicy
public Node<OWLNamedIndividual> getSameIndividuals(OWLNamedIndividual ind) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
ind
- The individual whose same individuals are to be retrieved.j
in the node, the root ontology imports closure entails
SameIndividual(j, ind)
. Note that the node will contain
j
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the individual is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public NodeSet<OWLNamedIndividual> getDifferentIndividuals(OWLNamedIndividual ind) throws InconsistentOntologyException, FreshEntitiesException, ReasonerInterruptedException, TimeOutException
OWLReasoner
NodeSet
.ind
- The individual whose different individuals are to be returned.NodeSet
containing OWLNamedIndividual
s such
that for each individual i
in the NodeSet
the set
of reasoner axioms entails DifferentIndividuals(ind, i)
.InconsistentOntologyException
- if the imports closure of the root ontology is inconsistentFreshEntitiesException
- if the signature of the individual is not contained within the
signature of the imports closure of the root ontology and the
undeclared entity policy of this reasoner is set to
FreshEntityPolicy.DISALLOW
.ReasonerInterruptedException
- if the reasoning process was interrupted for any particular
reason (for example if reasoning was cancelled by a client
process)TimeOutException
- if the reasoner timed out during a basic reasoning operation. See
OWLReasoner.getTimeOut()
.public void dumpClassHierarchy(boolean showBottomNode)
showBottomNode
- true if bottom node is to be showedpublic void dumpObjectPropertyHierarchy(boolean showBottomNode)
showBottomNode
- true if bottom node is to be showedpublic void dumpDataPropertyHierarchy(boolean showBottomNode)
showBottomNode
- true if bottom node is to be showedCopyright © 2017 The University of Manchester. All Rights Reserved.