- From: Jörn Hees <j_hees@cs.uni-kl.de>
- Date: Fri, 29 Jan 2016 19:47:27 +0100
- To: public-sparql-dev@w3.org
Hi,
over at RDFLib we got a bug report [1] that our SPARQL engine produces weird results for an aggregate query over result sets with undefined variables like this:
SELECT ?x (SAMPLE(?y) as ?ys) (SAMPLE(?z) as ?zs) WHERE {
VALUES (?x ?y ?z) {
(2 6 UNDEF)
(2 UNDEF 10)
(3 UNDEF 15)
(3 9 UNDEF)
(5 UNDEF 25)
}
}
GROUP BY ?x
Intuitively my understanding is that this should produce a result set like this:
VALUES (?x ?ys ?zs) {
(2 6 10)
(3 9 15)
(5 UNDEF 25)
}
I fixed this in [2], but there seems to be confusion what the correct solution is (not only between the RDFLib devs):
- Virtuoso returns the above [1]
- Jena returns { (2 UNDEF UNDEF) (3 UNDEF UNDEF) (5 UNDEF 25) } [2]
So what's the correct answer?
Cheers,
Jörn
PS: The relevant sections seem to be [3], [4] and [5], but to me don't seem explicit enough to answer the above.
PPS: I also couldn't find any tests in [6] for the above.
[1]: https://github.com/RDFLib/rdflib/issues/563
[2]: https://github.com/RDFLib/rdflib/pull/567
[3]: https://www.w3.org/TR/sparql11-query/#defn_aggSample
[4]: https://www.w3.org/TR/sparql11-query/#aggregateExample2
[5]: https://www.w3.org/TR/sparql11-query/#aggregateAlgebra
[6]: https://www.w3.org/2009/sparql/docs/tests/
Received on Friday, 29 January 2016 18:47:58 UTC