"ObjectProperty" and "DatatypeProperty"

While most of the spec. has been tightened up nicely, I'm afraid the names of 
the two main OWL Property classes are still terribly confusing, and may 
obscure a significant ambiguity.

First off, a natural English speaker's intuition is that something named 
"ObjectProperty" would be the class of Properties of Objects, i.e., whose 
_domain_ was (a subset of) Object. This is doubly confusing, because in the 
RDF spec "object" is defined as the _value_ of a predicate/Property. In fact, 
this is actually triply confusing, because in RDF "object" refers to the 
value of _any_ Property, specifically including literal values. As if to 
admit this problem, the AS&S actually uses "individualvaluedPropertyID" as 
the name of the corresponding abstract syntax element. This name is much 
better, but unfortunately it is not clear to me that it is entirely accurate 
either (see below).

Perhaps even more pernicious is the name "DatatypeProperty", which is used to 
refer not even to Properties whose values are rdfs:Datatype's, but rather to 
Properties whose values are rdfs:Literal's. The name used in the AS&S 
("datavaluedPropertyID") for the corresponding abstract syntax element is 
only barely tolerable; obviously the much more transparent names would be 
LiteralValuedProperty and literalValuedPropertyID.

Lost in all this is an apparent ambiguity in the spec. Despite having no 
formal definition of the term "object", section 5.2 of the AS&S 
(http://www.w3.org/TR/owl-semantics/rdfs.html#5.2) asserts (in the second 
table, "Characteristics of OWL classes, datatypes, and properties") that 
"Class instances are all OWL objects."  However, section 5.4 
(http://www.w3.org/TR/owl-semantics/rdfs.html#5.4) insists that IOT and IOC 
must be disjoint. Thus, clearly "OWL objects" must refer to the union of IOT 
and IOC, right? Only, returning to 5.2, interpretations of owl:ObjectProperty 
asserted to be contained in IOTxIOT. Well, which is it? Are Classes Objects, 
i.e., is IOC a subset of IOT, or not?

And if not, then what type of Property are rdf:type, rdfs:range, rdfs:domain, 
etc. in the OWL universe?
Kevin D. Keck

Received on Monday, 7 July 2003 16:20:49 UTC