Hi Chemistry,

 

while further investigating the grammar (for improved integration into 
OpenCMIS) I detected some issues that I would like to get fixed:

 

1)

DISTINCT is not allowed as keyword in CmiSQL

 

2)

The rule "string value function" is no longer supported. It existed in earlier 
versions of the spec  but was removed. The grammar in our code does not reflect 
this change in the specification.

 

3)

only allowed operator with any is "=".  The rule "quantified comparison 
predicate" was changed in the spec from allowing multiple comparison operators 
to only allow "=".  The grammar in our code does not reflect this change in the 
specification.

 

4)

The grammar is also not yet complete (the full text part is missing). I added a 
separate issue for this. Again this was added with later revisions of the spec.

 

I have done all changes except 4) locally and updated the gunit tests 
accordingly. If there are no objections I will check-in the changes.

 

I have created two JIRA entries for these issues:

https://issues.apache.org/jira/browse/CMIS-212

https://issues.apache.org/jira/browse/CMIS-213

 

Remarks:

 

Change 2) has some implications:  This change implies that functions like 
LOWER(...) etc. are no longer permitted. Can someone remember the TC decision 
for this change? ( I browsed the CMIS JIRA but could not find it).

 

The grammar currently is quite loosely coupled to the rest of the code. There 
are no dependencies on it from other unit tests or sub-projects. For the future 
my suggestion is that a custom ANTLR grammar is a valid integration point with 
opencmis (to allow custom specific enhanced features in the query language). 
But for our internal code, tests and documentation it should strictly be what 
the standard says.

 

 

Jens

 

 

Reply via email to