- From: Eric Prud'hommeaux <eric@w3.org>
- Date: Thu, 22 Mar 2007 15:59:38 -0400
- To: "Seaborne, Andy" <andy.seaborne@hp.com>
- Cc: dawg mailing list <public-rdf-dawg@w3.org>
- Message-ID: <20070322195938.GR4098@w3.org>
* Seaborne, Andy <andy.seaborne@hp.com> [2007-03-21 14:39+0000] > > There is an interaction between REDUCED and the SPARQL Query Results XML > Format [1]. The results format defines a variable binding form [2] which > includes a 'distinct' attribute: > > <results distinct="false"> > ... > </results> > > Which brings up the question of what happens with a REDUCED query? > > We could add a similar 'reduced' attribute, which could not be present when > 'distinct' is, or have both and only one can be true. An alternative > design is have a single attribute/value of something like: > "cardinality=distinct/reduced/all" which is more disruptive. > > But because the cardinality of REDUCED is not completely defined, there is > no need to do anything: the results could just come back with > distinct="false" and no promise is broken. The key is that is really is NOT defined. That is, whatever reason we have to communicate the cardinality of ALL ([@distinct="false"]), is also a motivation to communicate loose cardinality. I don't see a lot of people making use of @distinct, @ordered or @loose except those using the SPARQL query tests; each has a distinct testing semantics: ordered: make sure the order is the same unorderd: you can sort both and compare. distinct: make sure there is a one-for one correspondance between test and ref loose: you can eilminiate dupes in your test (or equivilent algorithm) neither: make sure there is a one-for one correspondance between test and ref (hmm, does [@ordered="true" AND @loose="true"] have any use cases?) > So significant here is what use is made, for real, of the attributes in > SPARQL results files (which are in CR). If the answer is "not much" then > not doing anything is more acceptable to me. If we know of a significant > use, we need to see the impact. how about, a wierd results aggregator that didn't otherwise need to parse the query? pretty wierd, huh? Any interesting superlanguage would have to parse, in order to re-write and finalize stuff like SELECT ?name ?year SUM(?pay) WHERE { ?person :name ?name . ?person :monthlyCheck ?check . ?check :amount ?pay . ?check :issueYear ?year } GROUP BY ?year so I think our users are basically us, and we can, if we want, get that info from the query. > I don't know of any use of the attributes other than just to record > information that is also in the query request. i'm content to dip back trhough LC, mark the whole lot of the attributes "at-risk", and see if anyone cares about them. but then, maybe i'm too excited abou the at-risk tool. > Subsidiary questions: > > If there is way to indicate "reduced", and the service implementation of > REDUCED is to do "all" for this service request, can the service just omit > the reduced because results are all present? > > If there is way to indicate "reduced", and the service implementation of > REDUCED is to do DISTINCT? Is it permissible to set the 'distinct' > attribute true? Woudl we recommended to doing so? > > > The JSON format [3] is also impacted. > > Andy > > [1] http://www.w3.org/TR/rdf-sparql-XMLres/ > [2] http://www.w3.org/TR/rdf-sparql-XMLres/#vb-results > [3] http://www.w3.org/TR/rdf-sparql-json-res/ > > > -- -eric office: +1.617.258.5741 NE43-344, MIT, Cambridge, MA 02144 USA (eric@w3.org) Feel free to forward this message to any list for any purpose other than email address distribution.
Received on Thursday, 22 March 2007 20:00:09 UTC