range subclass (rangeSubclass)
(rangeSubclass function class) means that
all of the values assigned by function are subclasses of class.
Ontology
SUMO / STRUCTURAL-ONTOLOGYClass(es)
Coordinate term(s)
back fn
cardinality fn
front fn
principal host fn
probability fn
skin fn
arc weight
attribute
authors
before or equal
causes
causes subclass
citizen
closed on
completely fills
connected
contains information
cooccur
copy
crosses
date
decreases likelihood
developmental form
disjoint
distributes
documentation
duration
earlier
editor
element
employs
equal
equivalence relation on
exploits
expressed in language
faces
family relation
fills
finishes
frequency
graph part
greater than
greater than or equal to
has purpose
has skill
holds during
holds obligation
holds right
hole
identity element
immediate instance
immediate subclass
in list
in scope of interest
increases likelihood
independent probability
inhabits
inhibits
initial list
instance
inverse
irreflexive on
larger
less than
less than or equal to
manner
material
measure
meets temporally
member
modal attribute
overlaps temporally
parent
partial ordering on
partially fills
partly located
path length
penetrates
possesses
precondition
prevents
proper part
properly fills
property
publishes
range
realization
refers
reflexive on
related internal concept
sibling
smaller
starts
sub attribute
sub collection
sub graph
sub list
sub process
sub proposition
subclass
subrelation
subsumes content class
subsumes content instance
successor attribute
successor attribute closure
surface
temporal part
time
total ordering on
trichotomizing on
uses
valence
version
Type restrictions
rangeSubclass(function, subclass set or class)
Axioms (5)
If the values returned by function are subclasses of class and "function()" is equal to value, then value is a subclass of class.
(=>
(and
(rangeSubclass ?FUNCTION ?CLASS)
(equal
(AssignmentFn ?FUNCTION @ROW)
?VALUE))
(subclass ?VALUE ?CLASS))
If rel1 is a subrelation of rel2 and the values returned by rel2 are subclasses of class1, then the values returned by rel1 are subclasses of class1.
(=>
(and
(subrelation ?REL1 ?REL2)
(rangeSubclass ?REL2 ?CLASS1))
(rangeSubclass ?REL1 ?CLASS1))
If the values returned by rel are subclasses of class1 and the values returned by rel are subclasses of class2, then class1 is a subclass of class2 or class2 is a subclass of class1.
(=>
(and
(rangeSubclass ?REL ?CLASS1)
(rangeSubclass ?REL ?CLASS2))
(or
(subclass ?CLASS1 ?CLASS2)
(subclass ?CLASS2 ?CLASS1)))
If the values returned by rel1 are subclasses of class1 and the values returned by rel2 are subclasses of class2 and class1 is disjoint from class2, then rel1 and rel2 are disjoint.
(=>
(and
(rangeSubclass ?REL1 ?CLASS1)
(rangeSubclass ?REL2 ?CLASS2)
(disjoint ?CLASS1 ?CLASS2))
(disjointRelation ?REL1 ?REL2))
If , then rel is an instance of asymmetric relation.
(=>
(and
(instance ?REL BinaryRelation)
(or
(domain ?REL 1 ?CLASS1)
(domainSubclass ?REL 1 ?CLASS1))
(or
(domain ?REL 2 ?CLASS2)
(domainSubclass ?REL 2 ?CLASS2)
(range ?REL ?CLASS2)
(rangeSubclass ?REL ?CLASS2))
(disjoint ?CLASS1 ?CLASS2))
(instance ?REL AsymmetricRelation))