On 04/06/12 19:33, Rob Vesse wrote:
Personally I have advocated in the past (though not necessarily in a
formal comment) that engines should be able to introduce new aggregates
using the same extension function mechanism new functions can be
introduced now. Parsers just have to be well informed enough to know
what's an extension function vs what's an extension aggregate.
dotNetRDF already has lvn:nmax and lvn:nmin (MAX and MIN on numerics only,
non-numerics are ignored) and lvn:median included
(SPARQL comment)
That's how SPARQL 1.1 works - a function call (uri(args)) can be a
aggregate. ex:xyz(DISTINCT ?x) is in the grammar solely so ex:xyz can
be an aggregate. The engine has to know up-front what the aggregates are.
Personally, I though it would have been better to have a different
syntax (for example, AGG[uri](args)).
Andy