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)