Tilmann Zäschke created JDO-758:
-----------------------------------

             Summary: What can a subquery return?
                 Key: JDO-758
                 URL: https://issues.apache.org/jira/browse/JDO-758
             Project: JDO
          Issue Type: Improvement
            Reporter: Tilmann Zäschke
            Priority: Minor


The current spec specifies that subqueries should support ordering and 
grouping, suggesting that subqueries should be able to return collections of 
results.

However, a  Java {{Collection}} (others are not supported in JDOQL) only 
support {{size()}}, {{isEmpty()}} and {{contains()}}. These three functions all 
return scalars, furthermore, these could all be implemented easily with an 
additional term inside the subquery. Since the current reference implementation 
does not support all these functions, it should be considered whether 
subqueries should at all be required to return collections of objects.

A similar argument could be made for returning persistent objects from 
subqueries (suggested by required support for 'unique'). Persistent objects 
cannot be used in the parent query, except for accessing their identity, or 
possibly casting them to a persistent type and access a field.

Can anyone think of a usecase or other argument why subqueries should be able 
to return anything else than scalars/boolean (and possibly single persistent 
objects)?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to