Author: Matthew Horridge
The University Of Manchester
Bio-Health Informatics Group
Date: 16-Dec-2006
A utility class that can be used to determine is a class is a syntactic direct
subclass of owl:Thing. A class is considered NOT to be a syntactic direct subclass
of owl:Thing if ANY of the following conditions apply:
- It is equal to the left hand side of a subclass axiom, where the right hand side
is a named class other than owl:Thing
- It is an operand in an equivalent class axiom where at least one of the other other
operands is an intersection class that has a named operand other than the class in question.
For example
EquivalentClasses(A, (B and prop some C))
This functionality is provided because it is useful for displaying class hierarchies in
editors and browsers. In these situations it is needed because not all "orphan" classes
are asserted to be subclasses of owl:Thing. For example, if the only referencing axiom
of class A was ObjectDomain(propP A) then A is a syntactic subclass of owl:Thing