[
https://issues.apache.org/jira/browse/OAK-34?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13245263#comment-13245263
]
Jukka Zitting commented on OAK-34:
----------------------------------
Great stuff, thanks for pushing ahead on this! Comments:
* I'd drop the XPATH and SQL2 constants. They should instead be defined only in
the specific query parser components that implement these languages.
* Do we need getBindVariableNames()? If not, I'd just allow the client to pass
whatever bindings in the executeQuery() call.
* Instead of "Result" I'd use "Hits" or something similar to maintain a clear
distinction from the JCR API. But that's a minor detail.
* It would be more convenient to return an Iterable instead of an Iterator from
getRows()
* We'll probably need a getSize() method to accompany getRows()
* Should it be possible for a column to be multi-valued?
* More generally, would it be useful to define result sets as a sequence of
JSON- or tree-like objects instead of using the more specific row abstraction?
That would make it easy for us to extend the query model later on and would
allow us to reuse existing tools (JSON serialization, etc.) designed for
working with tree structures.
> Define query API
> ----------------
>
> Key: OAK-34
> URL: https://issues.apache.org/jira/browse/OAK-34
> Project: Jackrabbit Oak
> Issue Type: New Feature
> Components: core
> Reporter: Michael Dürig
> Labels: query
>
> Define a oak-core API for handling queries. How do we handle name space
> mappings, value bindings, limit, offset, access rights. See OAK-28
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira