- From: Steve Harris <steve.harris@garlik.com>
- Date: Tue, 1 May 2012 14:12:05 +0100
- To: Andy Seaborne <andy.seaborne@epimorphics.com>
- Cc: public-rdf-dawg@w3.org
On 2012-05-01, at 09:10, Andy Seaborne wrote: > > On 30/04/12 18:02, Steve Harris wrote: >> 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. > > VALUES works for me. > > Just for completeness, we could use syntax and > splash out [*] on new delimiter tokens e.g. "{|" "|}" > > {| ?x <a> <b> <c> |} > > {| (?x ?y) > (<a> 123) > (<b> 456) > (<c> 789) > |} Dear god no :) Incidentally, are we going to use VALUES everywhere (assuming no-one hates it), or stick with BINDINGS when it's tacked on the end? I'm not sure if that's been made clear. - 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, Nottingham, Notts, NG80 1ZZ
Received on Tuesday, 1 May 2012 13:12:48 UTC