Hi, I'm not sure if you already saw that, but one of the goals for Oak is to "Simple/Fast queries (i.e. through specialized indexes)" - see also http://wiki.apache.org/jackrabbit/Goals%20and%20non%20goals%20for%20Jackrab bit%203 - what I understand under "specialized indexes" is user defined indexes. At runtime, the query engine will pick the best (user defined) index(es) for the given query (cost based).
Currently, there is only one index type: traversing the nodes. A second index type is the indexer mechanism that stores the index data in the repository itself (this is already implemented and needs to be wired to the query engine). A third index type is the Lucene fulltext index. The query engine supports additional index types. And there might be additional index types. Implement a new index type should be relatively easy. If you want to implement such an index type, then this could be either within Oak itself, or outside of Oak. In any case, the current plan (my plan) is to add an index service provider interface. >the 'more out-of-the-box functionality' does not imply a full-text >index is needed per se I believe we will need a out-of-the-box fulltext index as part of Oak. But whether or not it is actually used is up to you, because indexes are user defined. Vocabulary: "index type": an index implementation, for example a property index implementation that allows quick lookup for a property. Another example is "traversing all nodes under a given path". Another implementation is a "Lucene fulltext index". "index": one particular index instance, for example a property index for the property "jcr:uuid" or the property "lastModified". Regards, Thomas