Interface CachedNode

  • All Known Implementing Classes:
    CachedConceptNode, CachedConstantNode, Individual

    public interface CachedNode

    Description: Represent the cached information for a concept or an _individual. For concepts this represents the root _node of the tableau completion graph built to check the satisfiability of the concept. For individuals, this is the _individual itself (Individual implements this interface}. The cached _node for concepts may be incomplete if the satisfiability status was cached when the satisfiability of another concept was being computed. Incomplete cached _nodes will not have any information regarding types or edges.

    Copyright: Copyright (c) 2008

    Company: Clark & Parsia, LLC.

    Author:
    Evren Sirin
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.Map<openllet.aterm.ATermAppl,​DependencySet> getDepends()
      Returns the types and their dependencies for this _node.
      EdgeList getInEdges()
      Returns the incoming edges of this _node.
      openllet.aterm.ATermAppl getName()
      Returns the name of this _node.
      EdgeList getOutEdges()
      Returns the outgoing edges of this _node.
      boolean hasRNeighbor​(Role role)
      Checks if this node is connected to another _node with the given role (or one of its subproperties).
      boolean isBottom()
      Returns if this is the cached _node for TOP concept.
      boolean isComplete()
      Returns if this cached _node is complete.
      boolean isIndependent()
      Returns if this _node was cached without any dependency to a non-deterministic _branch.
      boolean isNamedIndividual()
      Returns if this _node represent a named _individual (not an anonymous _individual or a concept _node)
      boolean isTop()
      Returns if this is the cached _node for BOTTOM concept.
    • Method Detail

      • isComplete

        boolean isComplete()
        Returns if this cached _node is complete.
        Returns:
        true if this cached _node is complete
      • isTop

        boolean isTop()
        Returns if this is the cached _node for BOTTOM concept.
        Returns:
        true if this is the cached _node for BOTTOM concept
      • isBottom

        boolean isBottom()
        Returns if this is the cached _node for TOP concept.
        Returns:
        true if this is the cached _node for TOP concept
      • getDepends

        java.util.Map<openllet.aterm.ATermAppl,​DependencySet> getDepends()
        Returns the types and their dependencies for this _node.
        Returns:
        a map from concepts to dependency sets
      • getOutEdges

        EdgeList getOutEdges()
        Returns the outgoing edges of this _node.
        Returns:
        Outgoing edges of this _node
      • getInEdges

        EdgeList getInEdges()
        Returns the incoming edges of this _node.
        Returns:
        Incoming edges of this node
      • hasRNeighbor

        boolean hasRNeighbor​(Role role)
        Checks if this node is connected to another _node with the given role (or one of its subproperties). The _node may have an incoming edge with the inverse of this role which would count as an r-neighbor.
        Parameters:
        role -
        Returns:
        Outgoing edges of this node
      • getName

        openllet.aterm.ATermAppl getName()
        Returns the name of this _node. For cached concept _nodes this is the name of the concept.
        Returns:
        Name of this _node
      • isNamedIndividual

        boolean isNamedIndividual()
        Returns if this _node represent a named _individual (not an anonymous _individual or a concept _node)
        Returns:
        If this _node represent a named _individual
      • isIndependent

        boolean isIndependent()
        Returns if this _node was cached without any dependency to a non-deterministic _branch. In the presence of nominals, when we are checking the satisfiability of a concept the root _node may be merged to a nominal _node and that merge may be due to a non-deterministic _branch. In such cases the types and edges that are cached do not necessarily show types and edges that will exist in every clash-free tableau completion.
        Returns:
        If this _node was cached without any dependency to a non-deterministic _branch