Query languagemodel Query model components

11.3 Query model components

11.3.1 Query languagemodel

Many OGC service operations have the requirement to pass and process a query as a structure to perform a search. There are several query languages and messaging mechanisms identified within OGC specifications. Binding protocols and application profiles should be explicit about the selected query languages and any features peculiar to a scope of application. The following items should be addressed in specialization of a Protocol Binding or an Application profile with respect to query language support: a Support for “abstract” queries, against well-known access points e.g. core search properties. Some specifications promote or require the exposure of well-known field- like objects as common search targets queryables, allowing interrogation of a service without prior negotiation on information content. The mandatory queryable attributes which shall be recognised by all OGC Catalogue Services is discussed in Subclause 6.3. b Selection of a query language. Identify the name and version of required query languages anticipated by this Protocol Binding or Application Profile for use. c Supported data types e.g., character, integer, coordinate, date, polygon and operator types e.g., inequality, proximity, partial string, spatial, temporal. Query languages may be restricted in their implementation or extended with functions not described in the base specification. This would need to be done if the base query language did not support a data type required by the OGC Common Query Language discussed in Clause 6 such as envelope. In addition, an application profile may extend the OGC CQL or Filter syntax with functions not described in the base specification through use of the “function “construct in CQL and the “Filter “ language. Use of this construct is discussed in Subclause TBD of this document. If an application protocol uses this extension method, the profile documentation should include an updated BNF grammar in addition to lists or reference documents with the enumerated data types and operator types required by this Application Profile. In addition, any description of special techniques e.g. supporting joins or associations that are expected by an Application Profile should be described.

11.3.2 Common search