Re: Summary of open issues on query.

Thanks, Andy. This is very helpful. I've excerpted just the ones I have 
comments on.

Andy Seaborne wrote:
> Here is my recollection of the status of query related open issues.
> 
>   ?? for still unresolved.
> 
>   DONE, for where I think we have agreement or proposal to go in the doc.
> 
>     Andy
> 
> ISSUE-5
> ASK queries in FILTERs
>   ?? (related -- EXISTS in FILTERS)
> 
> ISSUE-6
> SELECT queries in FILTERs
>   ??
> 
> ISSUE-7
> CONSTRUCT & DESCRIBE queries in FROM [NAMED]?    
>   ??
>   CONSTRUCT not needed if bNodes can be introduced by constructor.

 > ISSUE-13
 > Subqueries in HAVING analogous to subqueries in FILTERs
 >   ??
 >   ** Related to ISSUE-6
 >

There was consensus from the people at F2F2 to not include any 
subqueries other than SELECT in graph patterns.

I see EXISTS in FILTERs as being the only outstanding question here.

> ISSUE-29
> Should negation be done via a binary operator on subqueries, a binary 
> operator within graph patterns, or a filter+subquery?    
>   ??
>   This is MINUS / NOT EXISTS issue.

This might be a good place to start with a test case or three. Andy, do 
you happen to have any cases that illustrate the difference here?

(I know that personally, my preference here is pretty much "no preference".)

> ISSUE-35
> Can aggregate functions take DISTINCT as an argument a la SELECT 
> COUNT(DISTINCT ?X)?    
> 
>   DONE  All built-in aggregates can take the word DISTINCT.
>   Custom ones do not; it's part of their definition,
>   i.e. different URIs for a DISTINCT and non DISTINCT form.

I'm with Steve here; I didn't realize this had been decided. FWIW, 
Glitter supports DISTINCT in custom aggregates too, but I wouldn't lay 
down in the road over it being in the standard.

> ISSUE-41
> Does GROUP BY allow variables or expressions, and does it allow mutiple 
> expressions?    
>   ??
>   (I hope it does - it's just key calculation)

The question here from F2F2 was in the interplay between this and 
requiring that all non-scalar expressions that are projected be in the 
GROUP BY clause. The question(s) that needed answering were things like:

   A) What if I do "SELECT (?x + ?y AS ?sum)" and then do "GROUP BY (?y 
+ ?x)"?
   B) What if I do "SELECT (?x + ?y AS ?sum)" and then do "GROUP BY 
(?x+?y)"?

...basically, how is expression identity handled.

Lee

Received on Wednesday, 3 February 2010 13:43:36 UTC