org.semanticweb.owlapi.debugging
Class AbstractOWLDebugger

java.lang.Object
  extended by org.semanticweb.owlapi.debugging.AbstractOWLDebugger
All Implemented Interfaces:
OWLDebugger
Direct Known Subclasses:
BlackBoxOWLDebugger

public abstract class AbstractOWLDebugger
extends Object
implements OWLDebugger

Author: Matthew Horridge
The University Of Manchester
Bio-Health Informatics Group
Date: 24-Nov-2006

An abstract debugger which provides common infrastructure for finding multiple justification. This functionality relies on a concrete implementation of a debugger that can compute a minimal set of axioms that cause the unsatisfiability.


Constructor Summary
protected AbstractOWLDebugger(org.semanticweb.owlapi.model.OWLOntologyManager owlOntologyManager, org.semanticweb.owlapi.model.OWLOntology ontology)
           
 
Method Summary
 void constructHittingSetTree(Set<org.semanticweb.owlapi.model.OWLAxiom> mups, Set<Set<org.semanticweb.owlapi.model.OWLAxiom>> allMups, Set<Set<org.semanticweb.owlapi.model.OWLAxiom>> satPaths, Set<org.semanticweb.owlapi.model.OWLAxiom> currentPathContents)
          This is a recursive method that builds a hitting set tree to obtain all justifications for an unsatisfiable class.
 Set<Set<org.semanticweb.owlapi.model.OWLAxiom>> getAllSOSForIncosistentClass(org.semanticweb.owlapi.model.OWLClassExpression cls)
           
protected abstract  org.semanticweb.owlapi.model.OWLClassExpression getCurrentClass()
           
 org.semanticweb.owlapi.model.OWLOntology getOWLOntology()
           
 org.semanticweb.owlapi.model.OWLOntologyManager getOWLOntologyManager()
           
 
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.debugging.OWLDebugger
dispose, getSOSForIncosistentClass
 

Constructor Detail

AbstractOWLDebugger

protected AbstractOWLDebugger(org.semanticweb.owlapi.model.OWLOntologyManager owlOntologyManager,
                              org.semanticweb.owlapi.model.OWLOntology ontology)
Method Detail

getCurrentClass

protected abstract org.semanticweb.owlapi.model.OWLClassExpression getCurrentClass()
                                                                            throws org.semanticweb.owlapi.model.OWLException
Throws:
org.semanticweb.owlapi.model.OWLException

getOWLOntology

public org.semanticweb.owlapi.model.OWLOntology getOWLOntology()
                                                        throws org.semanticweb.owlapi.model.OWLException
Specified by:
getOWLOntology in interface OWLDebugger
Returns:
the OWLOntology that is being debugged.
Throws:
org.semanticweb.owlapi.model.OWLException - if there is any problem

getOWLOntologyManager

public org.semanticweb.owlapi.model.OWLOntologyManager getOWLOntologyManager()
Returns:
the manager

getAllSOSForIncosistentClass

public Set<Set<org.semanticweb.owlapi.model.OWLAxiom>> getAllSOSForIncosistentClass(org.semanticweb.owlapi.model.OWLClassExpression cls)
                                                                             throws org.semanticweb.owlapi.model.OWLException
Specified by:
getAllSOSForIncosistentClass in interface OWLDebugger
Parameters:
cls - the inconsistent class
Returns:
all sets of supporting axioms that are responsible for the specified class being inconsistent
Throws:
org.semanticweb.owlapi.model.OWLException - if there is any problem

constructHittingSetTree

public void constructHittingSetTree(Set<org.semanticweb.owlapi.model.OWLAxiom> mups,
                                    Set<Set<org.semanticweb.owlapi.model.OWLAxiom>> allMups,
                                    Set<Set<org.semanticweb.owlapi.model.OWLAxiom>> satPaths,
                                    Set<org.semanticweb.owlapi.model.OWLAxiom> currentPathContents)
                             throws org.semanticweb.owlapi.model.OWLException
This is a recursive method that builds a hitting set tree to obtain all justifications for an unsatisfiable class.

Parameters:
mups - The current justification for the current class. This corresponds to a node in the hitting set tree.
allMups - All of the MUPS that have been found - this set gets populated over the course of the tree building process. Initially this should just contain the first justification
satPaths - Paths that have been completed.
currentPathContents - The contents of the current path. Initially this should be an empty set.
Throws:
org.semanticweb.owlapi.model.OWLException - if there is any problem


Copyright © 2012 The University of Manchester. All Rights Reserved.