Class CompletionStrategy

  • Direct Known Subclasses:
    EmptySRIQStrategy, SROIQStrategy

    public abstract class CompletionStrategy
    extends java.lang.Object
    A 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 Detail

      • _logger

        public static final java.util.logging.Logger _logger
    • 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
      • applyUniversalRestrictions

        public void applyUniversalRestrictions​(Individual node)
      • addType

        public void addType​(Node startNode,
                            openllet.aterm.ATermAppl c,
                            DependencySet ds)
      • applyPropertyRestrictions

        public void applyPropertyRestrictions​(Edge edge)
      • applyFunctionality

        public void applyFunctionality​(Individual subj,
                                       Role pred,
                                       Node obj)
      • 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 pruned
        z - Node that is being merged into
        dsParam - Dependency of this merge operation
      • restore

        public void restore​(Branch br)
      • addBranch

        public void addBranch​(Branch newBranch)
      • printBlocked

        public void printBlocked()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object