The BNF is reproduced bellow to indicate the extensions made, which are highlighted in bold characters. The original BNF was extended thinking in SQL where expression. Moreover, we found some errors in the specification and made some corrections, that will help to use and analyse the CQL language.
 between predicate is extension
 bbox is an extension
This diagram presents the module interface. In parser's protocol methods performs the parsing of CQL and builds the the filter.
The figure shows the principal class in the parser and build process. CQLParser does a top down analysis of the input string and makes the parsing tree using the SimpleNode class. Each time CQLParser builds a node, it makes a call to CQLCompiler, that implements the semantic actions related and builds the product or subproduct required to make the Filter at the end of the parsing process