- From: John McClure <jmcclure@hypergrove.com>
- Date: Tue, 28 Aug 2007 10:50:33 -0700
- To: "Turner, David" <davidt@hp.com>, "Owl Dev" <public-owl-dev@w3.org>
>> I'm not sure what the reasoner would do with the <rdf:Alt> David, Thanks for taking this matter up. Your answer clarified important distinctions between lists and containers. What I'm reminded by this exchange is that rdfs:range is a specification of an extent - rdf:Class is therefore the range of the range property. Accordingly the <unionOf> property should be used to describe the class whose extent is the range. The <unionOf> property identifies an extent formed by a list of one or more classes -- rdf:List is therefore the range of <unionOf>. The parseType='Collection' is merely a signal for the construction of an rdf:List, as Dan Connolly demonstrated (although the tool should generate <rdf:List>s rather than untyped <rdf:Description>s) and is thus merely syntactic sugar. So it was totally incorrect to use rdf:Alt, a subclass of rdfs:Container, as the predicate object, An rdfs:Container graph is quite different from an rdf:List -- with <li> properties not <first> and <next> properties, plus others. My mistake came from confusion between Collection & Container -- I had remembered that "Collection" was the superclass for rdf:Alt and had surmised a connection between the two when actually none exists (except for a common superclass). Wouldn't it have been much clearer to have parseType='List' ? Both lists and containers are collections. So now I must ask: if there is a property whose range is rdf:Container, do reasoners generate the proper Container graph if parseType='Collection' ? IOW, is the parseType syntactic sugar for specifying the memberships of both lists AND containers? If not, why not? Thanks, John McClure
Received on Tuesday, 28 August 2007 17:49:58 UTC