|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.semanticweb.HermiT.Reasoner
public class Reasoner
Answers queries about the logical implications of a particular knowledge base. A Reasoner is associated with a single knowledge base, which is "loaded" when the reasoner is constructed. By default a full classification of all atomic terms in the knowledge base is also performed at this time (which can take quite a while for large or complex ontologies), but this behavior can be disabled as a part of the Reasoner configuration. Internal details of the loading and reasoning algorithms can be configured in the Reasoner constructor and do not change over the lifetime of the Reasoner object---internal data structures and caches are optimized for a particular configuration. By default, HermiT will use the set of options which provide optimal performance.
Nested Class Summary | |
---|---|
protected class |
Reasoner.OntologyChangeListener
|
static class |
Reasoner.ProtegeReasonerFactory
|
static class |
Reasoner.ReasonerFactory
|
Constructor Summary | |
---|---|
Reasoner(Configuration configuration,
org.semanticweb.owlapi.model.OWLOntology rootOntology)
Creates a new reasoner object with the parameters for blocking, expansion strategy etc as specified in the given configuration object. |
|
Reasoner(Configuration configuration,
org.semanticweb.owlapi.model.OWLOntology rootOntology,
java.util.Collection<DescriptionGraph> descriptionGraphs)
Creates a new reasoner object loaded with the given ontology and the given description graphs. |
|
Reasoner(org.semanticweb.owlapi.model.OWLOntology rootOntology)
Creates a new reasoner object with standard parameters for blocking, expansion strategy etc. |
Method Summary | |
---|---|
protected void |
addIRI(java.lang.String uri,
java.util.Set<java.lang.String> prefixIRIs)
|
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
atomicConceptHierarchyNodesToNodeSet(java.util.Collection<HierarchyNode<AtomicConcept>> hierarchyNodes)
|
protected org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> |
atomicConceptHierarchyNodeToNode(HierarchyNode<AtomicConcept> hierarchyNode)
|
protected void |
checkPreConditions(org.semanticweb.owlapi.model.OWLObject... objects)
|
void |
classify()
Deprecated. As of release 1.3, replaced by precomputeInferences(InferenceType... inferenceTypes)
with inference type CLASS_HIERARCHY |
protected static Hierarchy<AtomicConcept> |
classifyAtomicConcepts(Tableau tableau,
ClassificationProgressMonitor progressMonitor,
AtomicConcept topElement,
AtomicConcept bottomElement,
java.util.Set<AtomicConcept> elements,
boolean forceQuasiOrder)
|
protected static Hierarchy<AtomicConcept> |
classifyAtomicConceptsForRoles(Tableau tableau,
ClassificationProgressMonitor progressMonitor,
AtomicConcept topElement,
AtomicConcept bottomElement,
java.util.Set<AtomicConcept> elements,
boolean hasInverses,
java.util.Map<Role,AtomicConcept> conceptsForRoles,
java.util.Map<AtomicConcept,Role> rolesForConcepts,
boolean forceQuasiOrder)
|
void |
classifyClasses()
|
void |
classifyDataProperties()
|
void |
classifyObjectProperties()
|
protected void |
clearState()
|
protected boolean |
containsFreshEntities(org.semanticweb.owlapi.model.OWLObject... objects)
|
protected DLOntology |
createDeltaDLOntology(Configuration configuration,
DLOntology originalDLOntology,
org.semanticweb.owlapi.model.OWLAxiom... additionalAxioms)
|
protected void |
createPrefixes()
|
protected static Tableau |
createTableau(InterruptFlag interruptFlag,
Configuration config,
DLOntology permanentDLOntology,
DLOntology additionalDLOntology,
Prefixes prefixes)
|
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> |
dataPropertyHierarchyNodesToNodeSet(java.util.Collection<HierarchyNode<AtomicRole>> hierarchyNodes)
|
protected org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> |
dataPropertyHierarchyNodeToNode(HierarchyNode<AtomicRole> hierarchyNode)
|
void |
dispose()
|
void |
dumpHierarchies(java.io.PrintWriter out,
boolean classes,
boolean objectProperties,
boolean dataProperties)
Writes out the hierarchies quickly |
protected void |
finalize()
|
void |
flush()
|
protected void |
flushChangesIfRequired()
|
protected java.util.Set<org.semanticweb.owlapi.model.OWLNamedIndividual> |
getAllNamedIndividuals()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> |
getBottomClassNode()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> |
getBottomDataPropertyNode()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getBottomObjectPropertyNode()
|
org.semanticweb.owlapi.reasoner.BufferingMode |
getBufferingMode()
|
int |
getClassHierarchyDepth()
|
Configuration |
getConfiguration()
|
org.semanticweb.owlapi.model.OWLDataFactory |
getDataFactory()
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getDataPropertyDomains(org.semanticweb.owlapi.model.OWLDataProperty property,
boolean direct)
|
int |
getDataPropertyHierarchyDepth()
|
java.util.Set<org.semanticweb.owlapi.model.OWLLiteral> |
getDataPropertyValues(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual,
org.semanticweb.owlapi.model.OWLDataProperty property)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> |
getDifferentIndividuals(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual)
|
protected java.util.Set<HierarchyNode<AtomicConcept>> |
getDirectSuperConceptNodes(Individual individual)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getDisjointClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
|
protected java.util.Set<HierarchyNode<AtomicConcept>> |
getDisjointConceptNodes(HierarchyNode<AtomicConcept> node)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> |
getDisjointDataProperties(org.semanticweb.owlapi.model.OWLDataPropertyExpression propertyExpression)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getDisjointObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
DLOntology |
getDLOntology()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> |
getEquivalentClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> |
getEquivalentDataProperties(org.semanticweb.owlapi.model.OWLDataProperty property)
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getEquivalentObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
org.semanticweb.owlapi.reasoner.FreshEntityPolicy |
getFreshEntityPolicy()
|
protected HierarchyNode<AtomicConcept> |
getHierarchyNode(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
|
protected HierarchyNode<AtomicRole> |
getHierarchyNode(org.semanticweb.owlapi.model.OWLDataProperty property)
|
protected HierarchyNode<Role> |
getHierarchyNode(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
org.semanticweb.owlapi.reasoner.IndividualNodeSetPolicy |
getIndividualNodeSetPolicy()
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> |
getInstances(org.semanticweb.owlapi.model.OWLClassExpression classExpression,
boolean direct)
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getInverseObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
int[] |
getNumberOfInstances(org.semanticweb.owlapi.model.OWLClass owlClass)
|
int[] |
getNumberOfInstances(org.semanticweb.owlapi.model.OWLObjectProperty property)
|
int[] |
getNumberOfPredecessors(org.semanticweb.owlapi.model.OWLObjectProperty property,
org.semanticweb.owlapi.model.OWLIndividual individual)
|
int[] |
getNumberOfPropertyInstances(org.semanticweb.owlapi.model.OWLObjectProperty property)
|
int[] |
getNumberOfSameIndividuals(org.semanticweb.owlapi.model.OWLIndividual individual)
|
int[] |
getNumberOfSuccessors(org.semanticweb.owlapi.model.OWLObjectProperty property,
org.semanticweb.owlapi.model.OWLIndividual individual)
|
int[] |
getNumberOfTypes(org.semanticweb.owlapi.model.OWLIndividual individual)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getObjectPropertyDomains(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression,
boolean direct)
|
int |
getObjectPropertyHierarchyDepth()
|
java.util.Map<org.semanticweb.owlapi.model.OWLNamedIndividual,java.util.Set<org.semanticweb.owlapi.model.OWLNamedIndividual>> |
getObjectPropertyInstances(org.semanticweb.owlapi.model.OWLObjectProperty property)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getObjectPropertyRanges(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression,
boolean direct)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> |
getObjectPropertyValues(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual,
org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
java.util.Set<org.semanticweb.owlapi.model.OWLAxiom> |
getPendingAxiomAdditions()
|
java.util.Set<org.semanticweb.owlapi.model.OWLAxiom> |
getPendingAxiomRemovals()
|
java.util.List<org.semanticweb.owlapi.model.OWLOntologyChange> |
getPendingChanges()
|
java.util.Set<org.semanticweb.owlapi.reasoner.InferenceType> |
getPrecomputableInferenceTypes()
|
Prefixes |
getPrefixes()
|
java.lang.String |
getReasonerName()
|
org.semanticweb.owlapi.util.Version |
getReasonerVersion()
|
org.semanticweb.owlapi.model.OWLOntology |
getRootOntology()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLNamedIndividual> |
getSameIndividuals(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getSubClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression,
boolean direct)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> |
getSubDataProperties(org.semanticweb.owlapi.model.OWLDataProperty property,
boolean direct)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getSubObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression,
boolean direct)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getSuperClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression,
boolean direct)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> |
getSuperDataProperties(org.semanticweb.owlapi.model.OWLDataProperty property,
boolean direct)
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getSuperObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression,
boolean direct)
|
protected Tableau |
getTableau()
|
Tableau |
getTableau(org.semanticweb.owlapi.model.OWLAxiom... additionalAxioms)
A mostly internal method. |
long |
getTimeOut()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> |
getTopClassNode()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> |
getTopDataPropertyNode()
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
getTopObjectPropertyNode()
|
org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> |
getTypes(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual,
boolean direct)
|
org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> |
getUnsatisfiableClasses()
|
protected static Individual |
H(org.semanticweb.owlapi.model.OWLAnonymousIndividual anonymousIndividual)
|
protected static AtomicConcept |
H(org.semanticweb.owlapi.model.OWLClass owlClass)
|
protected static AtomicRole |
H(org.semanticweb.owlapi.model.OWLDataProperty dataProperty)
|
protected static Role |
H(org.semanticweb.owlapi.model.OWLDataPropertyExpression dataPropertyExpression)
|
protected static Individual |
H(org.semanticweb.owlapi.model.OWLIndividual individual)
|
protected static Individual |
H(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual)
|
protected static AtomicRole |
H(org.semanticweb.owlapi.model.OWLObjectProperty objectProperty)
|
protected static Role |
H(org.semanticweb.owlapi.model.OWLObjectPropertyExpression objectPropertyExpression)
|
boolean |
hasDataPropertyRelationship(org.semanticweb.owlapi.model.OWLNamedIndividual subject,
org.semanticweb.owlapi.model.OWLDataProperty property,
org.semanticweb.owlapi.model.OWLLiteral object)
|
boolean |
hasObjectPropertyRelationship(org.semanticweb.owlapi.model.OWLNamedIndividual subject,
org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression,
org.semanticweb.owlapi.model.OWLNamedIndividual object)
|
boolean |
hasType(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual,
org.semanticweb.owlapi.model.OWLClassExpression type,
boolean direct)
|
protected void |
initialiseClassInstanceManager()
|
protected void |
initialisePropertiesInstanceManager()
|
void |
interrupt()
|
protected boolean |
isAsymmetric(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
boolean |
isConsistent()
|
boolean |
isDefined(org.semanticweb.owlapi.model.OWLClass owlClass)
|
boolean |
isDefined(org.semanticweb.owlapi.model.OWLDataProperty owlDataProperty)
|
boolean |
isDefined(org.semanticweb.owlapi.model.OWLIndividual owlIndividual)
|
boolean |
isDefined(org.semanticweb.owlapi.model.OWLObjectProperty owlObjectProperty)
|
protected boolean |
isDisjointObjectProperty(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression1,
org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression2)
|
boolean |
isEntailed(org.semanticweb.owlapi.model.OWLAxiom axiom)
|
boolean |
isEntailed(java.util.Set<? extends org.semanticweb.owlapi.model.OWLAxiom> axioms)
|
boolean |
isEntailmentCheckingSupported(org.semanticweb.owlapi.model.AxiomType<?> axiomType)
|
protected boolean |
isFunctional(org.semanticweb.owlapi.model.OWLDataProperty property)
|
protected boolean |
isFunctional(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
protected boolean |
isInverseFunctional(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
protected boolean |
isIrreflexive(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
boolean |
isPrecomputed(org.semanticweb.owlapi.reasoner.InferenceType inferenceType)
|
protected boolean |
isReflexive(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
protected static boolean |
isResultRelevantIndividual(Individual individual)
|
boolean |
isSameIndividual(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual1,
org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual2)
|
boolean |
isSatisfiable(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
|
protected boolean |
isSubClassOf(org.semanticweb.owlapi.model.OWLClassExpression subClassExpression,
org.semanticweb.owlapi.model.OWLClassExpression superClassExpression)
|
protected boolean |
isSubDataPropertyOf(org.semanticweb.owlapi.model.OWLDataProperty subDataProperty,
org.semanticweb.owlapi.model.OWLDataProperty superDataProperty)
|
protected boolean |
isSubObjectPropertyExpressionOf(java.util.List<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> subPropertyChain,
org.semanticweb.owlapi.model.OWLObjectPropertyExpression superObjectPropertyExpression)
|
protected boolean |
isSubObjectPropertyExpressionOf(org.semanticweb.owlapi.model.OWLObjectPropertyExpression subObjectPropertyExpression,
org.semanticweb.owlapi.model.OWLObjectPropertyExpression superObjectPropertyExpression)
|
protected boolean |
isSymmetric(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
protected boolean |
isTransitive(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
|
protected static boolean |
isUnsupportedExtensionAxiom(org.semanticweb.owlapi.model.OWLAxiom axiom)
|
protected void |
loadOntology()
|
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
objectPropertyHierarchyNodesToNodeSet(java.util.Collection<HierarchyNode<Role>> hierarchyNodes)
|
protected org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> |
objectPropertyHierarchyNodeToNode(HierarchyNode<Role> hierarchyNode)
|
void |
precomputeDisjointClasses()
|
void |
precomputeInferences(org.semanticweb.owlapi.reasoner.InferenceType... inferenceTypes)
|
void |
precomputeSameAsEquivalenceClasses()
|
void |
printHierarchies(java.io.PrintWriter out,
boolean classes,
boolean objectProperties,
boolean dataProperties)
Prints the hierarchies into a functional style syntax ontology all nicely sorted alphabetically. |
protected void |
realise()
|
void |
realiseObjectProperties()
|
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> |
sortBySameAsIfNecessary(java.util.Set<Individual> individuals)
|
protected void |
throwFreshEntityExceptionIfNecessary(org.semanticweb.owlapi.model.OWLObject... objects)
|
protected void |
throwInconsistentOntologyExceptionIfNecessary()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final Reasoner.OntologyChangeListener m_ontologyChangeListener
protected final Configuration m_configuration
protected final org.semanticweb.owlapi.model.OWLOntology m_rootOntology
protected final java.util.List<org.semanticweb.owlapi.model.OWLOntologyChange> m_pendingChanges
protected final java.util.Collection<DescriptionGraph> m_descriptionGraphs
protected final InterruptFlag m_interruptFlag
protected ObjectPropertyInclusionManager m_objectPropertyInclusionManager
protected DLOntology m_dlOntology
protected Prefixes m_prefixes
protected Tableau m_tableau
protected java.lang.Boolean m_isConsistent
protected Hierarchy<AtomicConcept> m_atomicConceptHierarchy
protected Hierarchy<Role> m_objectRoleHierarchy
protected Hierarchy<AtomicRole> m_dataRoleHierarchy
protected java.util.Map<Role,java.util.Set<HierarchyNode<AtomicConcept>>> m_directObjectRoleDomains
protected java.util.Map<Role,java.util.Set<HierarchyNode<AtomicConcept>>> m_directObjectRoleRanges
protected java.util.Map<AtomicRole,java.util.Set<HierarchyNode<AtomicConcept>>> m_directDataRoleDomains
protected java.util.Map<HierarchyNode<AtomicConcept>,java.util.Set<HierarchyNode<AtomicConcept>>> m_directDisjointClasses
protected InstanceManager m_instanceManager
Constructor Detail |
---|
public Reasoner(org.semanticweb.owlapi.model.OWLOntology rootOntology)
rootOntology
- - the ontology that should be loaded by the reasonerpublic Reasoner(Configuration configuration, org.semanticweb.owlapi.model.OWLOntology rootOntology)
configuration
- - a configuration in which parameters can be defined such as the blocking strategy to be used etcrootOntology
- - the ontology that should be loaded by the reasonerpublic Reasoner(Configuration configuration, org.semanticweb.owlapi.model.OWLOntology rootOntology, java.util.Collection<DescriptionGraph> descriptionGraphs)
configuration
- - a configuration in which parameters can be defined such as the blocking strategy to be used etcrootOntology
- - the ontology that should be loaded by the reasonerdescriptionGraphs
- - a set of description graphsMethod Detail |
---|
protected void loadOntology()
protected void createPrefixes()
protected void addIRI(java.lang.String uri, java.util.Set<java.lang.String> prefixIRIs)
protected void finalize()
finalize
in class java.lang.Object
public void dispose()
dispose
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected void clearState()
public void interrupt()
interrupt
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.model.OWLDataFactory getDataFactory()
public java.lang.String getReasonerName()
getReasonerName
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.util.Version getReasonerVersion()
getReasonerVersion
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.model.OWLOntology getRootOntology()
getRootOntology
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public long getTimeOut()
getTimeOut
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.IndividualNodeSetPolicy getIndividualNodeSetPolicy()
getIndividualNodeSetPolicy
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.FreshEntityPolicy getFreshEntityPolicy()
getFreshEntityPolicy
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public Prefixes getPrefixes()
public DLOntology getDLOntology()
public Configuration getConfiguration()
public org.semanticweb.owlapi.reasoner.BufferingMode getBufferingMode()
getBufferingMode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public java.util.Set<org.semanticweb.owlapi.model.OWLAxiom> getPendingAxiomAdditions()
getPendingAxiomAdditions
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public java.util.Set<org.semanticweb.owlapi.model.OWLAxiom> getPendingAxiomRemovals()
getPendingAxiomRemovals
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public java.util.List<org.semanticweb.owlapi.model.OWLOntologyChange> getPendingChanges()
getPendingChanges
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public void flush()
flush
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isDefined(org.semanticweb.owlapi.model.OWLClass owlClass)
public boolean isDefined(org.semanticweb.owlapi.model.OWLIndividual owlIndividual)
public boolean isDefined(org.semanticweb.owlapi.model.OWLObjectProperty owlObjectProperty)
public boolean isDefined(org.semanticweb.owlapi.model.OWLDataProperty owlDataProperty)
public java.util.Set<org.semanticweb.owlapi.reasoner.InferenceType> getPrecomputableInferenceTypes()
getPrecomputableInferenceTypes
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isPrecomputed(org.semanticweb.owlapi.reasoner.InferenceType inferenceType)
isPrecomputed
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public void precomputeInferences(org.semanticweb.owlapi.reasoner.InferenceType... inferenceTypes) throws org.semanticweb.owlapi.reasoner.ReasonerInterruptedException, org.semanticweb.owlapi.reasoner.TimeOutException, org.semanticweb.owlapi.reasoner.InconsistentOntologyException
precomputeInferences
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
org.semanticweb.owlapi.reasoner.ReasonerInterruptedException
org.semanticweb.owlapi.reasoner.TimeOutException
org.semanticweb.owlapi.reasoner.InconsistentOntologyException
protected void initialisePropertiesInstanceManager()
protected void initialiseClassInstanceManager()
public boolean isConsistent()
isConsistent
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isEntailmentCheckingSupported(org.semanticweb.owlapi.model.AxiomType<?> axiomType)
isEntailmentCheckingSupported
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isEntailed(org.semanticweb.owlapi.model.OWLAxiom axiom)
isEntailed
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isEntailed(java.util.Set<? extends org.semanticweb.owlapi.model.OWLAxiom> axioms)
isEntailed
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
@Deprecated public void classify()
precomputeInferences(InferenceType... inferenceTypes)
with inference type CLASS_HIERARCHY
public void classifyClasses()
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> getTopClassNode()
getTopClassNode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> getBottomClassNode()
getBottomClassNode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isSatisfiable(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
isSatisfiable
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected boolean isSubClassOf(org.semanticweb.owlapi.model.OWLClassExpression subClassExpression, org.semanticweb.owlapi.model.OWLClassExpression superClassExpression)
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> getEquivalentClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
getEquivalentClasses
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getSuperClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression, boolean direct)
getSuperClasses
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getSubClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression, boolean direct)
getSubClasses
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> getUnsatisfiableClasses()
getUnsatisfiableClasses
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getDisjointClasses(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
getDisjointClasses
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected java.util.Set<HierarchyNode<AtomicConcept>> getDisjointConceptNodes(HierarchyNode<AtomicConcept> node)
public void precomputeDisjointClasses()
protected HierarchyNode<AtomicConcept> getHierarchyNode(org.semanticweb.owlapi.model.OWLClassExpression classExpression)
public void classifyObjectProperties()
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getTopObjectPropertyNode()
getTopObjectPropertyNode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getBottomObjectPropertyNode()
getBottomObjectPropertyNode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected boolean isSubObjectPropertyExpressionOf(org.semanticweb.owlapi.model.OWLObjectPropertyExpression subObjectPropertyExpression, org.semanticweb.owlapi.model.OWLObjectPropertyExpression superObjectPropertyExpression)
protected boolean isSubObjectPropertyExpressionOf(java.util.List<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> subPropertyChain, org.semanticweb.owlapi.model.OWLObjectPropertyExpression superObjectPropertyExpression)
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getSuperObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression, boolean direct)
getSuperObjectProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getSubObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression, boolean direct)
getSubObjectProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getEquivalentObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
getEquivalentObjectProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getObjectPropertyDomains(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression, boolean direct)
getObjectPropertyDomains
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getObjectPropertyRanges(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression, boolean direct)
getObjectPropertyRanges
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getInverseObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
getInverseObjectProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> getDisjointObjectProperties(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
getDisjointObjectProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected boolean isDisjointObjectProperty(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression1, org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression2)
protected boolean isFunctional(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected boolean isInverseFunctional(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected boolean isIrreflexive(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected boolean isReflexive(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected boolean isAsymmetric(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected boolean isSymmetric(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected boolean isTransitive(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
protected HierarchyNode<Role> getHierarchyNode(org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
public void classifyDataProperties()
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> getTopDataPropertyNode()
getTopDataPropertyNode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> getBottomDataPropertyNode()
getBottomDataPropertyNode
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected boolean isSubDataPropertyOf(org.semanticweb.owlapi.model.OWLDataProperty subDataProperty, org.semanticweb.owlapi.model.OWLDataProperty superDataProperty)
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> getSuperDataProperties(org.semanticweb.owlapi.model.OWLDataProperty property, boolean direct)
getSuperDataProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> getSubDataProperties(org.semanticweb.owlapi.model.OWLDataProperty property, boolean direct)
getSubDataProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> getEquivalentDataProperties(org.semanticweb.owlapi.model.OWLDataProperty property)
getEquivalentDataProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getDataPropertyDomains(org.semanticweb.owlapi.model.OWLDataProperty property, boolean direct)
getDataPropertyDomains
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> getDisjointDataProperties(org.semanticweb.owlapi.model.OWLDataPropertyExpression propertyExpression)
getDisjointDataProperties
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
protected boolean isFunctional(org.semanticweb.owlapi.model.OWLDataProperty property)
protected HierarchyNode<AtomicRole> getHierarchyNode(org.semanticweb.owlapi.model.OWLDataProperty property)
protected void realise()
public void realiseObjectProperties()
public void precomputeSameAsEquivalenceClasses()
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> getTypes(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual, boolean direct)
getTypes
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean hasType(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual, org.semanticweb.owlapi.model.OWLClassExpression type, boolean direct)
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> getInstances(org.semanticweb.owlapi.model.OWLClassExpression classExpression, boolean direct)
getInstances
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean isSameIndividual(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual1, org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual2)
public org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLNamedIndividual> getSameIndividuals(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual)
getSameIndividuals
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> getDifferentIndividuals(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual)
getDifferentIndividuals
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> getObjectPropertyValues(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual, org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression)
getObjectPropertyValues
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public java.util.Map<org.semanticweb.owlapi.model.OWLNamedIndividual,java.util.Set<org.semanticweb.owlapi.model.OWLNamedIndividual>> getObjectPropertyInstances(org.semanticweb.owlapi.model.OWLObjectProperty property)
public boolean hasObjectPropertyRelationship(org.semanticweb.owlapi.model.OWLNamedIndividual subject, org.semanticweb.owlapi.model.OWLObjectPropertyExpression propertyExpression, org.semanticweb.owlapi.model.OWLNamedIndividual object)
public java.util.Set<org.semanticweb.owlapi.model.OWLLiteral> getDataPropertyValues(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual, org.semanticweb.owlapi.model.OWLDataProperty property)
getDataPropertyValues
in interface org.semanticweb.owlapi.reasoner.OWLReasoner
public boolean hasDataPropertyRelationship(org.semanticweb.owlapi.model.OWLNamedIndividual subject, org.semanticweb.owlapi.model.OWLDataProperty property, org.semanticweb.owlapi.model.OWLLiteral object)
protected java.util.Set<HierarchyNode<AtomicConcept>> getDirectSuperConceptNodes(Individual individual)
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLNamedIndividual> sortBySameAsIfNecessary(java.util.Set<Individual> individuals)
protected java.util.Set<org.semanticweb.owlapi.model.OWLNamedIndividual> getAllNamedIndividuals()
protected static boolean isResultRelevantIndividual(Individual individual)
protected Tableau getTableau()
public Tableau getTableau(org.semanticweb.owlapi.model.OWLAxiom... additionalAxioms) throws java.lang.IllegalArgumentException
additionalAxioms
- - a list of additional axioms that should be included in the tableau
java.lang.IllegalArgumentException
- - if the axioms lead to non-admissible clauses, some configuration parameters are incompatible or other such errorsprotected static Tableau createTableau(InterruptFlag interruptFlag, Configuration config, DLOntology permanentDLOntology, DLOntology additionalDLOntology, Prefixes prefixes) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
protected static Hierarchy<AtomicConcept> classifyAtomicConcepts(Tableau tableau, ClassificationProgressMonitor progressMonitor, AtomicConcept topElement, AtomicConcept bottomElement, java.util.Set<AtomicConcept> elements, boolean forceQuasiOrder)
protected static Hierarchy<AtomicConcept> classifyAtomicConceptsForRoles(Tableau tableau, ClassificationProgressMonitor progressMonitor, AtomicConcept topElement, AtomicConcept bottomElement, java.util.Set<AtomicConcept> elements, boolean hasInverses, java.util.Map<Role,AtomicConcept> conceptsForRoles, java.util.Map<AtomicConcept,Role> rolesForConcepts, boolean forceQuasiOrder)
protected DLOntology createDeltaDLOntology(Configuration configuration, DLOntology originalDLOntology, org.semanticweb.owlapi.model.OWLAxiom... additionalAxioms) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
protected static boolean isUnsupportedExtensionAxiom(org.semanticweb.owlapi.model.OWLAxiom axiom)
public void dumpHierarchies(java.io.PrintWriter out, boolean classes, boolean objectProperties, boolean dataProperties)
out
- - the printwriter that is used to output the hierarchiesclasses
- - if true, the class hierarchy is printedobjectProperties
- - if true, the object property hierarchy is printeddataProperties
- - if true, the data property hierarchy is printedpublic void printHierarchies(java.io.PrintWriter out, boolean classes, boolean objectProperties, boolean dataProperties)
out
- - the printwriter that is used to output the hierarchiesclasses
- - if true, the class hierarchy is printedobjectProperties
- - if true, the object property hierarchy is printeddataProperties
- - if true, the data property hierarchy is printedprotected void checkPreConditions(org.semanticweb.owlapi.model.OWLObject... objects)
protected void flushChangesIfRequired()
protected void throwInconsistentOntologyExceptionIfNecessary()
protected void throwFreshEntityExceptionIfNecessary(org.semanticweb.owlapi.model.OWLObject... objects)
protected boolean containsFreshEntities(org.semanticweb.owlapi.model.OWLObject... objects)
protected static AtomicConcept H(org.semanticweb.owlapi.model.OWLClass owlClass)
protected static AtomicRole H(org.semanticweb.owlapi.model.OWLObjectProperty objectProperty)
protected static Role H(org.semanticweb.owlapi.model.OWLObjectPropertyExpression objectPropertyExpression)
protected static AtomicRole H(org.semanticweb.owlapi.model.OWLDataProperty dataProperty)
protected static Role H(org.semanticweb.owlapi.model.OWLDataPropertyExpression dataPropertyExpression)
protected static Individual H(org.semanticweb.owlapi.model.OWLNamedIndividual namedIndividual)
protected static Individual H(org.semanticweb.owlapi.model.OWLAnonymousIndividual anonymousIndividual)
protected static Individual H(org.semanticweb.owlapi.model.OWLIndividual individual)
protected org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLClass> atomicConceptHierarchyNodeToNode(HierarchyNode<AtomicConcept> hierarchyNode)
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLClass> atomicConceptHierarchyNodesToNodeSet(java.util.Collection<HierarchyNode<AtomicConcept>> hierarchyNodes)
protected org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> objectPropertyHierarchyNodeToNode(HierarchyNode<Role> hierarchyNode)
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLObjectPropertyExpression> objectPropertyHierarchyNodesToNodeSet(java.util.Collection<HierarchyNode<Role>> hierarchyNodes)
protected org.semanticweb.owlapi.reasoner.Node<org.semanticweb.owlapi.model.OWLDataProperty> dataPropertyHierarchyNodeToNode(HierarchyNode<AtomicRole> hierarchyNode)
protected org.semanticweb.owlapi.reasoner.NodeSet<org.semanticweb.owlapi.model.OWLDataProperty> dataPropertyHierarchyNodesToNodeSet(java.util.Collection<HierarchyNode<AtomicRole>> hierarchyNodes)
public int[] getNumberOfSameIndividuals(org.semanticweb.owlapi.model.OWLIndividual individual)
public int[] getNumberOfInstances(org.semanticweb.owlapi.model.OWLClass owlClass)
public int[] getNumberOfInstances(org.semanticweb.owlapi.model.OWLObjectProperty property)
public int[] getNumberOfSuccessors(org.semanticweb.owlapi.model.OWLObjectProperty property, org.semanticweb.owlapi.model.OWLIndividual individual)
public int[] getNumberOfPredecessors(org.semanticweb.owlapi.model.OWLObjectProperty property, org.semanticweb.owlapi.model.OWLIndividual individual)
public int[] getNumberOfPropertyInstances(org.semanticweb.owlapi.model.OWLObjectProperty property)
property
-
public int getClassHierarchyDepth()
public int getObjectPropertyHierarchyDepth()
public int getDataPropertyHierarchyDepth()
public int[] getNumberOfTypes(org.semanticweb.owlapi.model.OWLIndividual individual)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |