A datatype property is one of two main categories of properties. It links individuals to data values, and is defined as an instance of the built-in OWL class owl:DatatypeProperty.
An owl:DatatypeProperty is a subclass of the RDF class rdf:Property
rdfs:Class rdf:ID="DatatypeProperty">
<rdfs:label>DatatypeProperty</rdfs:label>
<rdfs:subClassOf rdf:resource="&rdf;Property"/>
</rdfs:Class>
If a property q is used where a data property is expected then
there should be a triple
q rdf:type owl:DatatypeProperty
When using datatypes, please note that even if a property is defined to have a range of a certain datatype, RDF/XML still requires that the datatype be specified each time the property is used.
<owl:DatatypeProperty rdf:about="#timeStamp">
<rdfs:domain rdf:resource="#Measurement"/>
<rdf:range rdf:resource="&xsd;dateTime"/>
</owl:DatatypeProperty>
An example could be the declaration of
"timeStamp" that we use in the Measurement example below:
<Measurement>
<observedSubject rdf:resource="#JaneDoe"/>
<observedPhenomenon rdf:resource="#Weight"/>
<observedValue>
<Quantity>
<quantityValue rdf:datatype="&xsd;float">59.5</quantityValue>
<quantityUnit rdf:resource="#Kilogram"/>
</Quantity>
</observedValue>
<timeStamp rdf:datatype="&xsd;dateTime">2003-01-24T09:00:08+01:00</timeStamp>
</Measurement>
In OWL Full all data values are considered also to be part of the individual
domain. In fact, in OWL Full the universe of individuals consists of all
resources (owl:Thing is equivalent to rdfs:Resource).
This means that object properties and datatype properties are not disjoint. Because data values can be treated as individuals, datatype
properties are effectively subclasses of object properties.
In
OWL Full owl:ObjectProperty is equivalent to
rdf:Property. The consequence is that datatype properties are
effectively a subclass of object properties. (Note: the fact that
owl:ObjectProperty and owl:DatatypePropertyare both
subclasses of rdf:Property is not inconsistent with this). In
practice, this mainly has consequences for the use of owl:InverseFunctionalProperty (an owl:DatatypeProperty may be
an owl:InverseFunctionalProperty
in OWL Full).
We use the term "property extension" in a similar fashion to "class extension". The property extension is the set of instances that is associated with the property. Instances of properties are not single elements, but subject-object pairs of property statements. In relational database terms, property instances would be called "tuples" of a binary relation (the property).
If a node x has rdf:type owl:Restriction
then the following should be the case: It is the subject of exactly one triple with predicate
owl:onProperty, with the object of that triple being an
owl:ObjectProperty or owl:DatatypeProperty.