- From: Simon Schenk <sschenk@uni-koblenz.de>
- Date: Wed, 06 May 2009 09:56:39 +0100
- To: Axel Polleres <axel.polleres@deri.org>
- CC: 'RDF Data Access Working Group' <public-rdf-dawg@w3.org>
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 > CONSTRUCT > { ?X ex:hasFriends > {COUNT ?X WHERE ?P foaf:knows ?X} > } > WHERE {?P a foaf:Person} In [3] on slide 3 it should be 'COUNT ?P', right? If not, could you please explain the example, as in that case I do not understand it. ;-) Subqueries in CONSTRUCT frighten me. I would prefer to keep CONSTRUCT similar to a projection, perhaps with scalar expressions in the line of the current filter expressions, but not as complicated as subqueries. I'd prefer something like CONSTRUCT { ?P ex:hasFriends ?F } WHERE { ?P a foaf:Person. SELECT COUNT(?X) AS ?F WHERE { ?P foaf:knows ?X } } Btw, that argument affects other features such as fulltext as well. The current SPARQL design is quite clean: BGP matching binds variables. FILTER filters out some of these bindings. Result formats and modifiers do some post processing. That may involve sorting, grouping, in the future also filter expressions and aggregate functions, grouping etc, but not matching. I'd prefer to keep it like this. Cheers, Simon Axel Polleres schrieb: > Looking at the examples for aggregates [1] and thinking about an earlier > implementation I did on aggregate functions inspired rather by > aggregates in declarative logic programming than in SQL, I sketched an > alternative syntax proposal for aggregates at [3] which I could present > briefly as part of the aggregates discussion on day 2. > > 1. > http://www.w3.org/2009/sparql/wiki/Feature:AggregateFunctions > 2. > http://www.mat.unical.it/asptut/slides/unit2.pdf, slide 60ff > 3. > http://www.polleres.net/presentations/20090506SPARQL_aggregates_as_subqueries.pdf > > -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkoBUMEACgkQQ0Lz1fXAQeOljACgo34w+HMXBTp5AUlZqXff4cDi uRkAn3ihvdd7DwfXnZwF0bNIQ8kMxCuZ =k9MM -----END PGP SIGNATURE-----
Received on Wednesday, 6 May 2009 08:57:23 UTC