- From: Turner, David <davidt@hp.com>
- Date: Tue, 28 Aug 2007 19:18:18 +0100
- To: "Owl Dev" <public-owl-dev@w3.org>
> -----Original Message----- > From: John McClure [mailto:jmcclure@hypergrove.com] > Sent: 28 August 2007 18:51 > > 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>. Yes. (Strictly, not 'the' range, but certainly 'a' range) > 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. Yes, that's my understanding. I find it a lot easier to work with a triples in N3 format rather than the RDF/XML, to avoid problems like this. Use Jena or similar to convert between them. > So it was totally incorrect to use rdf:Alt, a subclass of > rdfs:Container, as the predicate object. Being picky, it's not *totally* incorrect: an rdf:Alt could also be an rdfs:Class and therefore be the rdfs:range of something. But you almost certainly don't want to do that. > , 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). No, rdf:Alt is a kind of rdfs:Container. 'Collection' refers only to lists in the context of RDF, AIUI. Mathematicians have a nasty habit of co-opting vocabulary and making it mean something other than what you thought. > Wouldn't it have been much clearer to have parseType='List' ? > Both lists and containers are collections. Again, no, lists are collections, containers are containers. > 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' ? I suspect that, since this question is based on the notion that containers are collections, it doesn't make sense any more. However, note that using a container immediately puts you into OWL Full, so a DL reasoner will refuse to talk to you. OWL Full reasoners may or may not pay attention, as always, but you should also note that the semantics of containers is *very* weak and you may not get any of the entailments that you expect. See http://www.w3.org/TR/rdf-mt/#Containers for details. > IOW, is the parseType syntactic > sugar for specifying the memberships of both lists AND > containers? If not, why not? No, it isn't. The syntactic sugar for memberships of containers is rdf:li. See http://www.w3.org/TR/rdf-syntax-grammar/#section-Syntax-list-elements for details. Cheers, Dave -- Dave Turner Cube T400, HP Labs Bristol, Filton Road, Bristol BS34 8QZ davidt@hp.com +44 117 3129104 (Work) +44 7962 811627 (Mobile) Hewlett-Packard Limited. Registered No: 690597 England Registered Office: Cain Road, Bracknell, Berks RG12 1HN
Received on Tuesday, 28 August 2007 18:18:31 UTC