Package openllet.core.tableau.completion
Class CompletionStrategy
- java.lang.Object
-
- openllet.core.tableau.completion.CompletionStrategy
-
- Direct Known Subclasses:
EmptySRIQStrategy,SROIQStrategy
public abstract class CompletionStrategy extends java.lang.ObjectA completion _strategy specifies how the tableau rules will be applied to an ABox. Depending on the expressivity of the KB, e.g. SHIN, SHON, etc., different (more efficient) strategies may be used. This class is the base for all different implementations and contains _strategy independent functions.- Author:
- Evren Sirin
-
-
Field Summary
Fields Modifier and Type Field Description static java.util.logging.Logger_logger
-
Constructor Summary
Constructors Constructor Description CompletionStrategy(ABox abox)
-
Method Summary
-
-
-
Constructor Detail
-
CompletionStrategy
public CompletionStrategy(ABox abox)
-
-
Method Detail
-
getABox
public ABox getABox()
-
getTBox
public TBox getTBox()
-
getBlocking
public Blocking getBlocking()
-
checkTimer
public void checkTimer()
-
getInitializeIterator
public java.util.Iterator<Individual> getInitializeIterator()
- Returns:
- individuals to which we need to apply the initialization rules
-
initialize
public void initialize(Expressivity expressivity)
-
complete
public abstract void complete(Expressivity expr)
apply all the tableau rules to the designated ABox- Parameters:
expr- of the tableau
-
createFreshIndividual
public Individual createFreshIndividual(Individual parent, DependencySet ds)
-
applyUniversalRestrictions
public void applyUniversalRestrictions(Individual node)
-
addType
public void addType(Node startNode, openllet.aterm.ATermAppl c, DependencySet ds)
-
addEdge
public Edge addEdge(Individual subj, Role pred, Node obj, DependencySet ds)
-
applyPropertyRestrictions
public void applyPropertyRestrictions(Edge edge)
-
applyPropertyRestrictions
public void applyPropertyRestrictions(Individual subj, Role pred, Node obj, DependencySet ds)
-
applyDomainRange
public void applyDomainRange(Individual subj, Role pred, Node obj, DependencySet ds)
-
applyFunctionality
public void applyFunctionality(Individual subj, Role pred, Node obj)
-
checkReflexivitySymmetry
public void checkReflexivitySymmetry(Individual subj, Role pred, Individual obj, DependencySet dsParam)
-
mergeAll
public void mergeAll()
Merge all _node pairs in the _queue.
-
mergeTo
public void mergeTo(Node y, Node z, DependencySet dsParam)
Merge _node y into z. Node y and all its descendants will be pruned from the completion graph.- Parameters:
y- Node being prunedz- Node that is being merged intodsParam- Dependency of this merge operation
-
setDifferent
public boolean setDifferent(Node y, Node z, DependencySet ds)
-
restoreLocal
public void restoreLocal(Individual ind, Branch br)
-
restore
public void restore(Branch br)
-
addBranch
public void addBranch(Branch newBranch)
-
printBlocked
public void printBlocked()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-