The value constraint owl:allValuesFrom is a built-in OWL property that links a restriction class to either a class description or a data range. A restriction containing an owl:allValuesFromconstraint is used to describe a class of all individuals for which all values of the property under consideration are either members of the class extension of the class description or are data values within the specified data range. In other words, it defines a class of individuals x for which holds that if the pair (x,y) is an instance of P (the property concerned), then y should be an instance of the class description or a value in the data range, respectively.
owl:allValuesFrom has owl:Restriction as domain, and rdfs:Class as range.
owl:allValuesFrom is used in a class
description and is only enforced on the property when applied to that class.
<owl:onProperty rdf:resource="#hasParent" />
<owl:allValuesFrom rdf:resource="#Human" />
This example describes an anonymous OWL class of all individuals for which
hasParent property only has values of class
Note that this class description does not state that the property always has
values of this class; just that this is true for individuals that belong to the
class extension of the anonymous restriction class.
OWL Lite requires that the object of owl:allValuesFrom
is analogous to the universal (for-all) quantifier of Predicate logic - for each
instance of the class that is being described, every value for P must fulfill
the constraint. Also notice that the correspondence of
owl:allValuesFrom with the universal
quantifier means that an
owl:allValuesFrom constraint for a property
P is trivially satisfied for an individual that has no value for property P at
all. To see why this is so, observe that the
owl:allValuesFrom constraint demands that
all values of P should be of type T, and if no such values exist, the constraint
is trivially true.