next up previous
Next: rdfs:Literal Up: Schema definition concepts Previous: rdfs:Class, rdf:type and rdfs:subClassOf

rdfs:domain and rdfs:range

These properties apply to properties and must be valued by classes. They are used to restrict the set of resources that may have a given property (the property's domain) and the set of valid values for a property (its range). A property may have as many values for rdfs:domain as needed, but no more than one value for rdfs:range:

\begin{eqnarray*}
&\forall p,r_1,r_2 \;\; \mathcal{T}(p,\:\mathtt{rdfs\!:\!range...
... \Rightarrow \neg \mathcal{T}(p,\:\mathtt{rdfs\!:\!range},\:r_2)
\end{eqnarray*}



For a triple to be valid, the object must match the range (if any) of the predicate (that is, it must have rdf:type valued by the corresponding class or one of its subclasses), and the subject must match at least one of the domains (if any) of the predicate (Note that if the predicate has super-properties, this must also be checked recursively for all of them). This can be logically expressed by:

\begin{eqnarray*}
&\forall s,p,o \;\; \mathcal{T}(s,\:p,\:o) \wedge \exists d \;...
...main},\:d') \wedge \mathcal{T}(s,\:\mathtt{rdf\!:\!type},\:d') )
\end{eqnarray*}



\begin{eqnarray*}
&\forall s,p,o,r \;\; \mathcal{T}(s,\:p,\:o) \wedge \mathcal{T...
...nge},\:r) \Rightarrow \mathcal{T}(o,\:\mathtt{rdf\!:\!type},\:r)
\end{eqnarray*}



It is worth noting that, although this two rules are intended to be used for validity checking only, and the first one (rdfs:domain rule) can actually only be used this way (it can not be used to perform inference since its consequence is existentially qualified), the second one (rdfs:range rule) has different interpretations depending on our hypothesizing a closed or open world. In the closed world hypothesis, any missing triple is considered negated, so the rdfs:range rule has only to be verified. But in an open world hypothesis, missing triples are not necessarily false, so the rule could be used to perform inference instead. Since the ``natural'' field of RDF is the web, where information is by essence distributed and incomplete, the open world hypothesis seems much more reasonable.


next up previous
Next: rdfs:Literal Up: Schema definition concepts Previous: rdfs:Class, rdf:type and rdfs:subClassOf
Pierre-Antoine CHAMPIN 2001-04-05