- From: Pat Hayes <phayes@ihmc.us>
- Date: Mon, 30 Jan 2006 13:14:38 -0600
- To: Enrico Franconi <franconi@inf.unibz.it>
- Cc: RDF Data Access Working Group <public-rdf-dawg@w3.org>
>On 30 Jan 2006, at 12:28, Seaborne, Andy wrote: > >> >>At the moment, rq23 allows blank nodes in the predicate position >>both in the definition of a triple pattern and in the grammar. I >>changed the definition recently to make the syntax and the >>definitions consistent. There are approved syntax tests with >>bnodes in the predicate position but, being syntax tests, the tests >>do not given any clue as to what is supposed to happen. >> >>The text in 2.5.2 that describes how to do simple entailment >>matching would cover the case of blank nodes in the predicate >>position. Pat said in the telecon (26 jan 06) that a blank node in >>the predicate position would never match under entailment. > >That's correct, since the query wouldn't be well formed for simple entailment. > >>We need to be consistent: if they can match then we can allow them >>in both syntax and definition of a triple pattern. If they don't, >>then I see it as confusing to allow them in the syntax or >>definition of triple pattern. > >In the case of SPARQL intended as subgraph matching, allowing bnodes >in predicate position seems natural, and of course it would work >easily. However, when we formalise subgraph matching with standard >simple entailment (as we are doing now), we loose the ability to >express queries with bnodes in predicate position, since standard >simple entailment is not defined for them. Seems to me that the issue is over whether or not to treat query bnodes as 'blank variables'. I still find this idea attractive, and it seems obvious to implementors, apparently. For the record, the entailments defined in the RDF spec all hold between 'generalized RDF' graphs which allow bnodes in predicate position (and literals in subject position) in the obvious way, and the lemmas stated there all apply, with appropriate syntactic relaxings of the inference rules, without changing any of the RDF semantic concepts at all: one simply has to remove the purely syntactic restrictions. In fact, the completeness theorems are simpler in the extended version without the syntactic constraints, since the proof theory lines up better with the model theory: the bug in the RDFS lemma noted by Herman ter Horst goes away, for example. So, simple entailment is fully defined for this RDF extension. But I agree, the syntactic requirement does mean that right now, as stated in the specs, these are indeed not legal RDF. Pat >My personal suggestion would be to forbid them. Remember, that this >is no loss of expressivity at all, since you could use a variable in >predicate position (instead of a bnode) to get the same result: > >@prefix : <http://example/> . >:x :p 1 . >{ ?x ?y 1 } => { ?x :q 2 } . > >you get :x :q 2 . in the resulting graph. > >cheers >--e. > > >Attachment converted: betelguese2:smime 16.p7s ( / ) (00230500) -- --------------------------------------------------------------------- IHMC (850)434 8903 or (650)494 3973 home 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32502 (850)291 0667 cell phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes
Received on Monday, 30 January 2006 19:14:52 UTC