From: Jeremy Carroll <jjc@hplb.hpl.hp.com>
Subject: Re: ISSUE: rdf compatibility
Date: Fri, 07 Feb 2003 15:29:47 +0000
>
>
> I propose that the RDF classes Bag, Seq, Alt, List be treated as
> owl:Classes in the abstract syntax for OWL Lite.
>
> I propose that the RDF properties first, rest, be treated as
> owl:FunctionalProperties in the abstract syntax for OWL Lite.
>
> I propose that the RDF properties _1, _2, ... rdfs:member, be treated as
> owl:ObjectPropery's in the abstract syntax for OWL Lite.
>
> I propose that the constant rdf:nil be allowed in OWL Lite and OWL DL as an
> individual.
>
> Jeremy
I strongly oppose this proposal.
The RDF container classes are, to be polite, an ungodly mess. Their
intended meaning conflicts with their formal meaning.
Seq is the best of the lot, but even Seq is unusable. For example, it
should be the case that
_:x rdf:type rdf:Seq .
_:x rdf:_2 ex:second .
entails
_:x rdf:type rdf:Seq .
_:x rdf:_2 ex:second .
_:x rdf:_1 _:first .
but it doesn't.
Bag is in much worse shape, as the intended meaning of Bag ignores part of
the formal meaning of Bag, and in a way that cannot even be remedied by
resorting to ugly tricks.
Alt is the worst by far. Its intended meaning is non-monotonic. Fixing
this problem would result in Alt having a vacuous meaning. Further, Alt
isn't even a container.
List is somewhat better. However, OWL uses List for its syntax. Using
List as an OWL class would break the partitioning of the RDF domain needed
for the correspondence theorm.
My counter-proposal is that OWL Full be made a vocabulary extension of RDF
that prohibits instances of the RDF container classes and relationships
involving rdf:_n.
peter