Skip to content

Getting Started with Implementation

Phil Varner edited this page Apr 16, 2025 · 1 revision

It recommended that implementers start with fully implementing only a subset of functionality. A good place to start is implementing only the Basic CQL2 conformance class of logical and comparison operators, defining a static Queryables schema with no queryables advertised and the additionalProperties field set to true, and only implementing CQL2 JSON. Following from that can be support for S_INTERSECTS, defining a static Queryables schema with only the basic Item properties, and implementing CQL2 Text. From there, other comparison operators can be implemented and a more dynamic Queryables schema.

Formal definitions and grammars for CQL2 can be found in the OAFeat CQL2 spec includes a BNF grammar for CQL2 Text and both a JSON Schema and an OpenAPI specification for CQL2 JSON. The standalone files are:

These projects have or are developing CQL2 support:

Note that the xbib CQL library (JVM) is the OASIS Contextual Query Language, not OGC CQL, and should not be used to implement this extension, as they are significantly different query languages. Stacatto uses this for their query language implementation, but it is not compliant with this extension.

Clone this wiki locally