- From: Steve Harris <steve.harris@garlik.com>
- Date: Mon, 30 Apr 2012 18:02:37 +0100
- To: Andy Seaborne <andy.seaborne@epimorphics.com>
- Cc: Eric Prud'hommeaux <eric@w3.org>, SPARQL Working Group <public-rdf-dawg@w3.org>
On 30 Apr 2012, at 13:27, Andy Seaborne wrote: > > > On 30/04/12 13:12, Eric Prud'hommeaux wrote: > >> This seems like a balance between consistency and convenience. It's >> grammatically distinguishable in LL/LALR(1) with this patch: >> >> -[29] DataBlock ::= Var* '{' ( '(' DataBlockValue* ')' | NIL )* '}' >> +[29] DataBlock ::= '(' Var* ')' '{' ( '(' DataBlockValue* ')' | NIL )* '}' >> | Var '{' DataBlockValue* '}' > > > > IMO, it actually adds some consistency by sticking parens around the > > var list. > > > Rest assured that the worked example is also a working example! I added the feature as an extension to ARQ and it parses OK (including for the GraphPatternNotTriples which is the more senstive-to-change area). > > (Speculative thoughts from here) > > > One problem with "DATA" is that SPARQL's data is RDF triples, not > > variable bindings. Practically, we may some day want to add premises > > like: > > Using the FROM clause would seem good here: > > > DATA { :Fido a :Dog } > > SELECT ?mammal { ?mammal a :Mammal } > > SELECT ?mammal { ?mammal a :Mammal } > FROM DATA { :Fido a :Dog } > > or > > SELECT ?mammal { ?mammal a :Mammal } > FROM { :Fido a :Dog } I agree with Eric, I think DATA is a bad choice of word here. I prefer BINDINGS to DATA - BINDINGS is more similar to BIND () than it is to DATA { … }, which should help people trying to learn. If we want to avoid strings starting lexically with BIND, then maybe VALUES? À la SQL. - Steve -- Steve Harris, CTO Garlik, a part of Experian 1-3 Halford Road, Richmond, TW10 6AW, UK +44 20 8439 8203 http://www.garlik.com/ Registered in England and Wales 653331 VAT # 887 1335 93 Registered office: Landmark House, Experian Way, NG2 Business Park, Nottingham, Nottinghamshire, England NG80 1ZZ
Received on Monday, 30 April 2012 17:03:14 UTC