org.mindswap.pellet.tbox
Interface TBox

All Known Implementing Classes:
TBoxExpImpl, TBoxImpl

public interface TBox


Method Summary
 boolean addAxiom(aterm.ATermAppl axiom)
          Add a TBox axiom.
 boolean addClass(aterm.ATermAppl term)
          Add a named class declaration
 java.util.Set<aterm.ATermAppl> getAllClasses()
          Return all the named classes plus TOP and BOTTOM
 java.util.Collection<aterm.ATermAppl> getAssertedAxioms()
          Return all the asserted axioms in this TBox
 java.util.Set<aterm.ATermAppl> getAxiomExplanation(aterm.ATermAppl axiom)
          Return a single explanation for the given TBox axiom.
 java.util.Set<java.util.Set<aterm.ATermAppl>> getAxiomExplanations(aterm.ATermAppl axiom)
          Return multiple explanations for the given TBox axiom.
 java.util.Collection<aterm.ATermAppl> getAxioms()
          Return all the axioms defined in this TBox (may include new axioms introduced during absorption)
 java.util.Collection<aterm.ATermAppl> getAxioms(aterm.ATermAppl concept)
          Return all the sub and equivalent class axioms that have the given concept on the left hand side
 java.util.Set<aterm.ATermAppl> getClasses()
          Return all the named classes
 boolean isPrimitive(aterm.ATermAppl c)
          Returns if a concept has only primitive definitions in this TBox.
 void prepare()
          Make any preparation necessary before reasoning.
 boolean removeAxiom(aterm.ATermAppl axiom)
          Remove axiom from TBox and all other axioms that depend on it.
 boolean removeAxiom(aterm.ATermAppl dependantAxiom, aterm.ATermAppl explanationAxiom)
          Remove all explanations for dependantAxiom that contain explanationAxiom.
 java.util.Iterator<Unfolding> unfold(aterm.ATermAppl c)
          Lazy unfold the given concept
 

Method Detail

addClass

boolean addClass(aterm.ATermAppl term)
Add a named class declaration

Returns:
true if TBox changed as a result of this call

getClasses

java.util.Set<aterm.ATermAppl> getClasses()
Return all the named classes


getAllClasses

java.util.Set<aterm.ATermAppl> getAllClasses()
Return all the named classes plus TOP and BOTTOM


getAxioms

java.util.Collection<aterm.ATermAppl> getAxioms()
Return all the axioms defined in this TBox (may include new axioms introduced during absorption)


getAssertedAxioms

java.util.Collection<aterm.ATermAppl> getAssertedAxioms()
Return all the asserted axioms in this TBox


getAxioms

java.util.Collection<aterm.ATermAppl> getAxioms(aterm.ATermAppl concept)
Return all the sub and equivalent class axioms that have the given concept on the left hand side


unfold

java.util.Iterator<Unfolding> unfold(aterm.ATermAppl c)
Lazy unfold the given concept

Parameters:
c -
Returns:

isPrimitive

boolean isPrimitive(aterm.ATermAppl c)
Returns if a concept has only primitive definitions in this TBox. Only primitive definitions mean the concept did not have any equivalents defined or all equivalence axioms has been absorbed into primitive definitions. This function returns false for complex class expressions.

Parameters:
c - a concept (named concept or a concept expression)
Returns:
true if the concept is not complex and has only primitive definitions

addAxiom

boolean addAxiom(aterm.ATermAppl axiom)
Add a TBox axiom.

Parameters:
axiom -
Returns:

removeAxiom

boolean removeAxiom(aterm.ATermAppl axiom)
Remove axiom from TBox and all other axioms that depend on it. An axiom depends on another axiom if it is a syntactic transformation (as in disjoint axiom is transformed into subclass) or it is obtained via absorption (as equivalent class axioms are absorbed into subclass axioms). This method is syntactic sugar for removeAxiom(ATermAppl, ATermAppl) where both parameters are axiom.

Parameters:
axiom -
Returns:

removeAxiom

boolean removeAxiom(aterm.ATermAppl dependantAxiom,
                    aterm.ATermAppl explanationAxiom)
Remove all explanations for dependantAxiom that contain explanationAxiom. If no explanations remain, dependantAxiom is removed and all axioms which depend on it are updated (and will be removed if they have no additional explanations).

Parameters:
dependantAxiom -
explanationAxiom -
Returns:

getAxiomExplanation

java.util.Set<aterm.ATermAppl> getAxiomExplanation(aterm.ATermAppl axiom)
Return a single explanation for the given TBox axiom.

Parameters:
axiom -
Returns:

getAxiomExplanations

java.util.Set<java.util.Set<aterm.ATermAppl>> getAxiomExplanations(aterm.ATermAppl axiom)
Return multiple explanations for the given TBox axiom.

Parameters:
axiom -
Returns:

prepare

void prepare()
Make any preparation necessary before reasoning.



Copyright © 2004 Evren Sirin. All Rights Reserved.