org.semanticweb.owlapi.reasoner.impl
Class OWLReasonerBase

java.lang.Object
  extended by org.semanticweb.owlapi.reasoner.impl.OWLReasonerBase
All Implemented Interfaces:
OWLReasoner

public abstract class OWLReasonerBase
extends java.lang.Object
implements OWLReasoner

Author: Matthew Horridge
The University of Manchester
Information Management Group
Date: 01-Aug-2009


Constructor Summary
protected OWLReasonerBase(OWLOntology rootOntology, BufferingMode bufferingMode)
           
 
Method Summary
 void flush()
          Flushes the pending changes from the pending change list.
 java.util.List<OWLOntologyChange> getPendingChanges()
          Gets the pending changes which need to be taken into consideration by the reasoner so that it is up to date with the root ontology imports closure.
 java.util.Collection<OWLAxiom> getReasonerAxioms()
          Gets the axioms that should be currently being reasoned over.
protected abstract  void handleChanges(java.util.Set<OWLAxiom> addAxioms, java.util.Set<OWLAxiom> removeAxioms)
          Asks the reasoner implementation to handle axiom additions and removals from the imports closure of the root ontology.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.semanticweb.owlapi.reasoner.OWLReasoner
dispose, getBufferingMode, getDataPropertyDomains, getDataPropertyValues, getEquivalentClasses, getEquivalentDataProperties, getEquivalentObjectProperties, getInstances, getInverseObjectProperties, getObjectPropertyDomains, getObjectPropertyRanges, getObjectPropertyValues, getPendingAxiomAdditions, getPendingAxiomRemovals, getRootOntology, getSameIndividuals, getSubClasses, getSubDataProperties, getSubObjectProperties, getSuperClasses, getSuperDataProperties, getSuperObjectProperties, getTimeOut, getTypes, interrupt, isConsistent, isEntailed, isEntailed, isEntailmentCheckingSupported, isSatisfiable, prepareReasoner
 

Constructor Detail

OWLReasonerBase

protected OWLReasonerBase(OWLOntology rootOntology,
                          BufferingMode bufferingMode)
Method Detail

getPendingChanges

public java.util.List<OWLOntologyChange> getPendingChanges()
Description copied from interface: OWLReasoner
Gets the pending changes which need to be taken into consideration by the reasoner so that it is up to date with the root ontology imports closure. After the OWLReasoner.flush() method is called the set of pending changes will be empty.

Specified by:
getPendingChanges in interface OWLReasoner
Returns:
A set of changes. Note that the changes represent the raw changes as applied to the imports closure of the root ontology.

flush

public void flush()
Flushes the pending changes from the pending change list. The changes will be analysed to dermine which axioms have actually been added and removed from the imports closure of the root ontology and then the reasoner will be asked to handle these changes via the handleChanges(java.util.Set, java.util.Set) method.

Specified by:
flush in interface OWLReasoner

getReasonerAxioms

public java.util.Collection<OWLAxiom> getReasonerAxioms()
Gets the axioms that should be currently being reasoned over.

Returns:
A collections of axioms (not containing duplicates) that the reasoner should be taking into consideration when reasoning. This set of axioms many not correspond to the current state of the imports closure of the reasoner root ontology if the reasoner is buffered.

handleChanges

protected abstract void handleChanges(java.util.Set<OWLAxiom> addAxioms,
                                      java.util.Set<OWLAxiom> removeAxioms)
Asks the reasoner implementation to handle axiom additions and removals from the imports closure of the root ontology. The changes will not include annotation axiom additions and removals.

Parameters:
addAxioms - The axioms to be added to the reasoner.
removeAxioms - The axioms to be removed from the reasoner