org.semanticweb.owlapi.reasoner.impl
Class DefaultNode<E extends OWLObject>

java.lang.Object
  extended by org.semanticweb.owlapi.reasoner.impl.DefaultNode<E>
All Implemented Interfaces:
java.lang.Iterable<E>, Node<E>
Direct Known Subclasses:
OWLClassNode, OWLDataPropertyNode, OWLDatatypeNode, OWLNamedIndividualNode, OWLObjectPropertyNode

public abstract class DefaultNode<E extends OWLObject>
extends java.lang.Object
implements Node<E>

Author: Matthew Horridge
The University of Manchester
Information Management Group
Date: 05-Dec-2009


Constructor Summary
protected DefaultNode()
           
  DefaultNode(E entity)
           
  DefaultNode(java.util.Set<E> entities)
           
 
Method Summary
 void add(E entity)
           
 boolean contains(E entity)
          Determines if this node contains the specified entity.
 boolean equals(java.lang.Object obj)
           
protected abstract  E getBottomEntity()
           
 java.util.Set<E> getEntities()
          Gets the entities contained in this node.
 java.util.Set<E> getEntitiesMinus(E E)
          Gets the entities contained in this node minus the specified entitie e.
 java.util.Set<E> getEntitiesMinusBottom()
          Gets the entities contained in this node minus the bottom entity.
 java.util.Set<E> getEntitiesMinusTop()
          Gets the entities contained in this node minus the top entity.
 E getRepresentativeElement()
          Gets one of the entities contained in this entity set.
 int getSize()
          Gets the number of entities contained in this Node
protected abstract  E getTopEntity()
           
 int hashCode()
           
 boolean isBottomNode()
          Determines if this node represents the bottom node (in a hierarchy).
 boolean isSingleton()
          Determines if this Node contains just one entity.
 boolean isTopNode()
          Determines if this node represents the top node (in a hierarchy).
 java.util.Iterator<E> iterator()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DefaultNode

public DefaultNode(E entity)

DefaultNode

public DefaultNode(java.util.Set<E> entities)

DefaultNode

protected DefaultNode()
Method Detail

getTopEntity

protected abstract E getTopEntity()

getBottomEntity

protected abstract E getBottomEntity()

add

public void add(E entity)

isTopNode

public boolean isTopNode()
Description copied from interface: Node
Determines if this node represents the top node (in a hierarchy). For a named class node, the top node is the node that contains owl:Thing. For an object property node, the top node is the node that contains owl:topObjectProperty. For a data property node, the top node is the node that contains owl:topDataProperty

Specified by:
isTopNode in interface Node<E extends OWLObject>
Returns:
true if this node is an OWLClass node and it contains owl:Thing.

true if this node is an OWLObjectProperty node and it contains owl:topObjectProperty.

true if this node is an OWLDataProperty node and it contains owl:topDataProperty.

false if none of the above.

isBottomNode

public boolean isBottomNode()
Description copied from interface: Node
Determines if this node represents the bottom node (in a hierarchy). For a named class node, the bottom node is the node that contains owl:Nothing. For an object property node, the bottom node is the node that contains owl:bottomObjectProperty. For a data property node, the bottom node is the node that contains owl:bottomDataProperty

Specified by:
isBottomNode in interface Node<E extends OWLObject>
Returns:
true if this node is an OWLClass node and it contains owl:Nothing.

true if this node is an OWLObjectProperty node and it contains owl:bottomObjectProperty.

true if this node is an OWLDataProperty node and it contains owl:bottomDataProperty.

false if none of the above.

getEntities

public java.util.Set<E> getEntities()
Description copied from interface: Node
Gets the entities contained in this node. The entities are equivalent to each other.

Specified by:
getEntities in interface Node<E extends OWLObject>
Returns:
The set of entities contained in this Node.

getSize

public int getSize()
Description copied from interface: Node
Gets the number of entities contained in this Node

Specified by:
getSize in interface Node<E extends OWLObject>
Returns:
The number of entities contained in this node.

contains

public boolean contains(E entity)
Description copied from interface: Node
Determines if this node contains the specified entity.

Specified by:
contains in interface Node<E extends OWLObject>
Parameters:
entity - The entity to check for
Returns:
true if this node contains entity, or false if this node does not contain entity

getEntitiesMinus

public java.util.Set<E> getEntitiesMinus(E E)
Description copied from interface: Node
Gets the entities contained in this node minus the specified entitie e. This essentially returns the entities that are returned by Node.getEntities() minus the specified entity e

Specified by:
getEntitiesMinus in interface Node<E extends OWLObject>
Parameters:
E - The entity that, is contained within this node, but should not be included in the return set.
Returns:
The set of entities that are contained in this node minus the specified entity, e. If e is not contained within this node then the full set of entities returned is the same as that returned by Node.getEntities()

getEntitiesMinusTop

public java.util.Set<E> getEntitiesMinusTop()
Description copied from interface: Node
Gets the entities contained in this node minus the top entity. For a node of named classes the top entity is owl:Thing. For a node of object properties the top entity is owl:topObjectProperty. For a node of data properties the top entity is owl:topDataProperty

Specified by:
getEntitiesMinusTop in interface Node<E extends OWLObject>
Returns:
The set of entities contained within this node minus the top entity. If this node does not contain the top entity then the set of entities returned is the same as that returned by Node.getEntities().

getEntitiesMinusBottom

public java.util.Set<E> getEntitiesMinusBottom()
Description copied from interface: Node
Gets the entities contained in this node minus the bottom entity. For a node of named classes the bottom entity is owl:Nothing. For a node of object properties the bottom entity is owl:bottomObjectProperty. For a node of data properties the bottom entity is owl:bottomDataProperty

Specified by:
getEntitiesMinusBottom in interface Node<E extends OWLObject>
Returns:
The set of entities contained within this node minus the bottom entity. If this node does not contain the bottom entity then the set of entities returned is the same as that returned by Node.getEntities().

isSingleton

public boolean isSingleton()
Description copied from interface: Node
Determines if this Node contains just one entity.

Specified by:
isSingleton in interface Node<E extends OWLObject>
Returns:
true if this Node contains just one entity, otherwise false

getRepresentativeElement

public E getRepresentativeElement()
Description copied from interface: Node
Gets one of the entities contained in this entity set. If this is a singleton set it will be the one and only entity.

Specified by:
getRepresentativeElement in interface Node<E extends OWLObject>
Returns:
An entity from the set of entities contained within this node

iterator

public java.util.Iterator<E> iterator()
Specified by:
iterator in interface java.lang.Iterable<E extends OWLObject>

toString

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

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object