- From: Dan Connolly <connolly@w3.org>
- Date: Fri, 08 Apr 2005 06:35:30 -0500
- To: Jeen Broekstra <jeen@aduna.biz>
- Cc: Dave Beckett <dave.beckett@bristol.ac.uk>, RDF Data Access Working Group <public-rdf-dawg@w3.org>
On Fri, 2005-04-08 at 12:20 +0200, Jeen Broekstra wrote: > Dave Beckett wrote: > > > > As a particular criticism, I don't like the << ... >> reification > > syntax, it has never been asked for as an addition to Turtle (a few > > years experience) and I don't need it for any of my applications. > > Actually we have had some examples of people using the reification > shorthand syntax in SeRQL. Example case (actually a pretty exotic one > where this is used in the CONSTRUCT to create new reifications): > > http://www.openrdf.org/forum/mvnforum/viewthread?lastpage=yes&thread=404 Hmm... | construct {{xxx} aaa {yyy}} my:foo {my:bar} | from {xxx} aaa {yyy} No, let's please not use {} for rdf:subject/predicate/object style reification. That style of reification does *not* quote the terms; it's referentially transparent, which I think causes all kinds of trouble. Using the << >> syntax just for the sake of argument... If we have :Mary a :Person. :Term owl:disjointWith :Person. then with rdf:subject/predicate/object, we have << :Mary :hit [ a :Ball ] >> rdf:subject [ a :Person ]. and *not* << :Mary :hit [ a :Ball ] >> rdf:subject [ a :Term ]. While this is true... << :Mary :hit [ a :Ball ] >> a rdf:Statement. I think it's misleading. I can almost make my peace with it this way... << :Mary :hit [ a :Ball ] >> a :Situation. To see why the rdf:Statement thing is misleading, consider... it *does* follow from... :Lois :believes << :Superman a :Hero >>. :Superman owl:sameAs :ClarkKent. by OWL entailment that :Lois :believes << :ClarkKent a :Hero >>. In contrast, the N3 {}s do quote their contents, so it does *not* follow from :Lois :believes { Superman a Hero }. :Superman owl:sameAs ClarkKent. that :Lois :believes { :ClarkKent a :Hero }. There's also the business of referring to multiple triples. Reifying multiple triples was supposed to be done with rdf:Bag's, I think, which are another construct that doesn't really work (they don't have enough information to say "and there's nothing else in this bag"). I don't think the grammar even allows stuff like... SELECT ?who WHERE ?who :said << ?anmial1 :eats ?animal2. ?animal2 :eats ?animal3 >>. Hmm... how do []s inside <<>> work? The grammar does allow those... I think << Mary hit [ a Ball ] >> a FunnySituation actually reduces to << Mary hit _:something >> a FunnySituation _:something a Ball. i.e. the claim that Mary hit something is not asserted at the top level, but the claim that the something is a ball is. I really wish RDF Core had deprecated rdfs:subject/predicate/object because they don't get this quoting stuff right. They/we didn't, but I'll make the same argument again here. Let's please not encourage people to use rdfs:subject/predicate/object. > From a point of view of QL adequacy it seems a bit poor to not add > some sort of convenience shortcut for reification. After all, the > concept is part of the RDF abstract model. Hmm... How so? I think it's just a utility vocabulary, like rdf:value and rdfs:label. It's certainly not part of the abstract syntax. The SPARQL spec, in 2.2 Graph patterns, http://www.w3.org/2001/sw/DataAccess/rq23/#BasicGraphPatterns imports the "RDF Data Model" from section 3.1 Graph Data Model http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#section-data-model which refers to section 6. Abstract Syntax http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#section-Graph-syntax "reification" occurs in neither section of rdf-concepts. In fact, it occurs nowhere in rdf-concepts. > That being said, I'm not particularly fond of the double angle bracket > syntax either - yet more brackets to clutter up the syntax. So, > neither a strong like nor strong dislike in my case, but I felt the > additional data point might be useful. Yes, it's good to have all the relevant experience on the table. But we discussed this <<reificatoin shorthand>> on the teleconference, and several spoke against it an noone spoke for it. The only known advocate in the WG, Andy, wasn't there, so rather than put the question, I took an action... ACTION: DanC to propose to close punctuationSyntax (again) sans <<reifiction shorthand>>" http://www.w3.org/2005/04/05-dawg-minutes.html#item06 so here we are. Let anyone who wants to keep <<subj pred obj>> speak now/soon or forever hold your peace. -- Dan Connolly, W3C http://www.w3.org/People/Connolly/ D3C2 887B 0F92 6005 C541 0875 0F91 96DE 6E52 C29E
Received on Friday, 8 April 2005 11:35:31 UTC