- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Tue, 01 May 2012 13:58:30 +0100
- To: public-rdf-dawg@w3.org
On 01/05/12 13:45, Sandro Hawke wrote: > On Tue, 2012-05-01 at 09:10 +0100, 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. > > +1 The editor will go with that for now. > >> 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) >> |} >> >> Andy >> >> [*] Sorry about that - to say it's raining here at the moment is >> understatement. > > Just brainstorming: ack Andy > another angle is to think more in terms of a verb, > saying what is being done with the bindings/data/values, like > "INCLUDE" (or "INCLUDING") or "EXTEND" or "USE" or something like that. > > -- Sandro > > > >
Received on Tuesday, 1 May 2012 12:59:00 UTC