- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Thu, 30 Sep 2010 19:19:41 +0100
- To: Lee Feigenbaum <lee@thefigtrees.net>
- CC: SPARQL Working Group <public-rdf-dawg@w3.org>
On 30/09/10 13:51, Lee Feigenbaum wrote: > On 9/30/2010 6:57 AM, Andy Seaborne wrote: >> Following a jena-dev question, I wondered what do implementations do >> with the following? >> >> # Duplicate select variable - SPARQL 1.0 >> SELECT ?s ?s ?p ?o >> { >> ?s ?p ?o >> } > > Glitter returns the ?s "column" twice, including listing it twice in the > <head> of the SRX. ARQ suppresses the duplicate although that's (now) controlled by a flag and the ARQ test suite passes with either setting. I did have to fix the result set XML readers to cope; the JSON parser handles this at the JSON level. The tricky case is SELECT (?x+?y AS ?z) (?2*?x AS ?z) which is a static error in ARQ but this is easier: SELECT (?x+?y AS ?z) ?z so of the 4 cases, ARQ only allows only allows SELECT ?z ?z and normally it means one variable but switching to two (should!) work. The SPARQL 1.1 text needs clarification. > >> # Duplicate group by variable >> SELECT ?s >> { >> ?s ?p ?o >> } GROUP BY ?s ?s > > I haven't tried this, but I'd expect this just works the same as GROUP > BY ?s - is there a subtlety here that I'm missing? My reading of the defn of aggregation is that there is a key for the group which is the pair (?s, ?s) not simple ?s (the group key is ExprList - an expression list). That means you'll get exactly the same answers although the route to getting them is slightly different but it's not observable. Andy
Received on Thursday, 30 September 2010 18:20:55 UTC