Project: QGIS

Version: 3.32

Feature: Implements server-side filtering using Part 1 or Part 3

The WFS/ OGC API for Features (OAPIF) data provider has been extended to support enhanced filtering criteria in line with open standards.
New functionalities include:

  • Support for filtering on feature properties (OGC API Features Part 1 - /rec/core/fc-filters). This uses the /api endpoint to get the list of queryable items.
  • Support for filtering based on OGC API Features Part 3 - CQL2-text
  • Pass selected CRS to query builder UI
  • Implement a getFeature() expression translation

For the CQL2text compatibility, the server /conformance implementation is required to declare at least the following data:
- http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/filter
- http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/features-filter
- http://www.opengis.net/spec/cql2/1.0/conf/cql2-text
- http://www.opengis.net/spec/cql2/1.0/conf/basic-cql2
The /collections/{collid}/queryables endpoint is requested to get the queryable properties.
Additional conformance classes for advanced filtering include the following items:

- http://www.opengis.net/spec/cql2/1.0/conf/advanced-comparison-operators: for IN, BETWEEN, LIKE
- http://www.opengis.net/spec/cql2/1.0/conf/case-insensitive-comparison: for ILIKE
- http://www.opengis.net/spec/cql2/1.0/conf/basic-spatial-operators: for `intersects(geomcolumn, geomFromWkt('POINT(x y)'))` and `bbox_intersects(geomcolumn, geomFromWkt('WKT LITERAL'))`

This feature was developed by Even Rouault