Hi, I found the relevant section of the spec: http://www.day.com/specs/jcr/2.0/6_Query.html#6.7.4%20Name Name ::= '[' quotedName ']' | '[' simpleName ']' | simpleName simpleName ::= /* A JCR Name that is also a legal SQL identifier */ See the SQL:92 rules for <regular identifier> (in ISO/IEC 9075:1992 § 5.2 <token> and <separator>). As far as I read the SQL-92 spec, this basically means the same rules as for Java identifiers apply.
I guess we should have railroad diagrams. I will try to create them. Regards, Thomas On Mon, Nov 9, 2009 at 8:20 AM, Thomas Müller <[email protected]> wrote: > Hi, > > Try: > > select * from [nt:unstructured] where [jcr:path] like > '/%/unitTestPage' and [cms:nodeType] = 'page' > > Regards, > Thomas > > > On Sun, Nov 8, 2009 at 5:30 AM, Rakesh Vidyadharan <[email protected]> wrote: >> Since XPath is deprecated in JCR 2.0, I am trying to move to JCR_SQL2 >> (JR-2.0-beta1). I have the following XPath query: >> >> //unittestpa...@cms:nodeType = 'page'] >> >> I tried writing the query in SQL as: >> >> select * from nt:unstructured where jcr:path like '/%/unitTestPage' and >> cms:nodeType = 'page' >> >> This statement however fails with an exception: >> >> javax.jcr.query.InvalidQueryException: Query: >> select * from nt:(*)unstructured where jcr:path like '/%/unitTestFolder' and >> cms:nodeType = 'page'; expected: <end> >> at >> org.apache.jackrabbit.commons.query.sql2.Parser.getSyntaxError(Parser.java:968) >> at >> org.apache.jackrabbit.commons.query.sql2.Parser.createQueryObjectModel(Parser.java:124) >> at >> org.apache.jackrabbit.commons.query.sql2.SQL2QOMBuilder.createQueryObjectModel(SQL2QOMBuilder.java:55) >> at >> org.apache.jackrabbit.core.query.QOMQueryFactory.createQuery(QOMQueryFactory.java:69) >> at >> org.apache.jackrabbit.core.query.CompoundQueryFactory.createQuery(CompoundQueryFactory.java:67) >> at >> org.apache.jackrabbit.core.query.QueryManagerImpl.createQuery(QueryManagerImpl.java:98) >> >> Can some one tell me what I am missing? >> >> Thanks >> Rakesh >> >> >> >
