- From: Jos De_Roo <jos.deroo@agfa.com>
- Date: Tue, 11 Nov 2003 00:51:24 +0100
- To: "Sandro Hawke <sandro" <sandro@w3.org>
- Cc: ext Graham Klyne <GK@ninebynine.org>, jimbobbs@hotmail.com, Patrick Stickler <patrick.stickler@nokia.com>, www-rdf-interest@w3.org
>>> I tend to use the collection syntax, because they're "closed" >> >> This is actually a claim that has been bugging me for some time. From what >> I can see, unless you manage the source of every statement, such that you >> can differentiate between one assertion and another based on their source >> (and thereby, authority, trustworthiness, etc.), the best you can do is >> identify a conflict in the definition of a collection, but you'd not be able >> to resolve it. You'd e.g. have multiple assertions for rdf:first or rdf:next >> and even though you know they can't all be right, you wouldn't know *which* >> was right. >> >> RDF Lists aren't really "closed" (i.e. immutable). > > I think you're misunderstanding the intended semantics of lists, which > are that rdf:first and rdf:rest are owl:FunctionalProperties. That > means if two different true sources say the third item in a list is > <a> and <b> respectively, you can conclude that <a> owl:sameAs <b>. That's right. > Unfortunately, its not stated anywhere in the specs that rdf:first and > rdf:rest *are* owl:FunctionalProperties (as far as I know) -- I think > it kind of fell through the layering cracks between RDF Core and > WebOnt. (RDF Core didnt want to get into talking about things like > FunctionalProperty, and WebOnt didn't want to be redefining RDF Core's > terms [much].) But I fully expect systems to assume it. Right and there are 2 OWL test cases to illustrate the point http://www.w3.org/2002/03owlt/I5.5/Manifest001#test http://www.w3.org/2002/03owlt/I5.5/Manifest002#test > I also expect systems to assume that two things with the same > rdf:first and rdf:rest as each other are the same thing. (I don't > know how to express this fact in OWL, or if it's possible.) From a > programming perspective, this makes RDF Lists like interned constants > lists, not like arrays or mutable lists. That's a very good point; we tested that given :L rdf:first :a; rdf:rest :B. :B rdf:first :b; rdf:rest rdf:nil. :M rdf:first :c; rdf:rest :C. :C rdf:first :d; rdf:rest rdf:nil. :a owl:sameAs :c. :b owl:sameAs :d. we could OWL Full entail :L owl:sameAs :M. (and it was the case) -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Monday, 10 November 2003 18:51:31 UTC