Re: rdf:about and owl:sameIndividualAs oddities

Proposed reply to an RDF comment from James F. Cerr 
(http://lists.w3.org/Archives/Public/public-webont-comments/2003May/0003.html).


This is an intriguing suggestion, but is probably neither possible nor
beneficial.  See the detailed comments below.

> Hey,
> 
> I've been reviewing OWL, and a strange idea occurred to me.  In rdf,
> "blank nodes" are distinct resources.  However, the "thing" that they
> are describing is undefined [1].  The following is an example:
>  
> <rdf:Description>
> 	<dc:creator>Roy G. Biv</dc:creator>
> </rdf:Description>
> 
> However, using OWL, I could identify the resource by identifying a
> resource which is the same as the blank one:
> 
> <rdf:Description>
> 	<owl:sameIndividualAs rdf:resource="#foobar" />
> 	<dc:creator>Roy G. Biv</dc:creator>
> </rdf:Description>
> 
> However, the meaning of the above statements is equivalent to a
> "non-blank" node describing "#foobar", as in:
> 
> <rdf:Description rdf:about="#foobar">
> 	<dc:creator>Roy G. Biv</dc:creator>
> </rdf:Description>
> 
> One could theoretically define the identity of all objects in that
> manner.  However, that would be confusing.  Should identifying blank
> resources with OWL, instead of RDF, be depreciated?

I don't think that you are achieving the effect you want.  

There are two things going on here:
1/ providing an identifier for something that can be used in other places
   to access the same thing, and
2/ asserting that two identifiers access the same thing.
[I have purposely used non-technical terms such as ``thing'' and ``access''
here to gloss over technical issues.]

RDF uses syntactic constructs involving rdf:ID, rdf:about, and rdf:resource
for the first purpose, and has no mechanism for achieving the second
purpose.  OWL uses the RDF mechanisms for the first purpose, and
owl:sameIndividualAs and owl:sameAs for the second purpose.  

The OWL mechanism can also be used in a contextthat looks similar to the
first purpose as well, by using a construct that does not provide a name as
one of the arguments to owl:sameIndividualAs.  However, this is parasitic
on constructs for providing a name, as the other argument to
owl:sameIndividualAs has to be provided with a name somehow.

> I think that having two mechanisms for identifying a resource is "messy"
> and makes the grammar combination of RDF+OWL inconsistent.  Except for
> different ranges, owl:sameIndividualAs (range=resource) and rdf:about
> (range=string) mean the same thing.  The extra syntax seems redundant.

On the contrary, as indicated above, rdf:about and owl:sameIndividualAs
perform very different tasks.  

> If rdf:about was an actual property, then the two concepts could be
> combined.  Furthermore, if the property-as-attribute abbreviation for
> rdf:type was applied to rdf:about as well, then the abbreviated syntax
> would be identical to the 1999 xml-serialization syntax [2].  However,
> this would still allow the equivalent owl:sameIndividualAs
> representations, such as the below example:
> 
> <rdf:Description rdf:about="http://www.w3.org/TR/html4/strict.dtd">
> <rdf:about rdf:resource="urn:publicid:-:W3C:DTD+HTML+4.01:EN" />
> </rdf:Description>
> 
> The above seems much more intuitive than the OWL version:
> 
> <rdf:Description rdf:about="http://www.w3.org/TR/html4/strict.dtd">
> <owl:sameIndividualAs rdf:resource="urn:publicid:-:W3C:DTD+HTML+4.01:EN"
> />
> </rdf:Description>
> 
> Or even:
> 
> <rdf:Description>
> <owl:sameIndividualAs
> rdf:resource="http://www.w3.org/TR/html4/strict.dtd"/>
> <owl:sameIndividualAs
> rdf:resource="urn:publicid:-:W3C:DTD+HTML+4.01:EN"/>
> </rdf:Description>
>
> Just an idea [3].

Your proposal appears to be essentially the renaming of owl:sameIndividual
to rdf:about.  This is almost possible for users of OWL to achieve, via
using owl:sameIndividualAs to identify owl:sameIndividualAs and rdf:about.
The only bar to this is that rdf:about cannot be used in the way you want
it to be used in RDF/XML documents (see productions 7.2.2, 7.2.5, and 7.2.6
in ``RDF/XML Syntax Specification (Revised)'', available at
http://www.w3.org/TR/rdf-syntax-grammar).

If you are serious about pursuing your proposal you might consider
requesting this ability from the RDF Core Working Group.

However, even so, your proposal does not really reduce the complexity of
OWL documents.  There would still be just as many constructs, as you would
have to count the two different uses of rdf:about as two different
constructs.

> --
> James F. Cerra 
> 
> [1] http://www.w3.org/TR/rdf-concepts/#section-blank-nodes Note that the
> spec says "...this set is arbitrary.  RDF makes no reference to any
> internal structure of blank nodes."  I interpret this to mean that the
> resource being described by a blank note is unidentified.  Since the
> subject is unknown, then it must be undefined, I think.
> 
> [2]
> http://www.w3.org/TR/rdf-syntax-grammar/#section-Syntax-property-attribu
> tes Note "This abbreviation can also be used when the property element
> is rdf:type and it has an rdf:resource attribute the value of which is
> interpreted as a RDF URI Reference object node."
> 
> [3] One objection to the proposed suggestion is that it confuses the
> concrete syntax for RDF/XML and the abstract syntax.  See:
> http://lists.w3.org/Archives/Public/www-rdf-interest/2003Apr/0069.html
> Note "I'd say this is a terrible idea"

Please reply as to whether this message satisfactorily handles your
comment.

Peter F. Patel-Schneider
Bell Labs Research
Lucent Technologies

Received on Saturday, 10 May 2003 13:46:15 UTC