Filter

specdraftimplcandidate

Features mit CQL2-Ausdrücken filtern.

Umfang

Dieser Baustein bietet Abfrageparameter zum Filtern von Features mit CQL2 (in Text- oder JSON-Kodierung).

Zusätzlich zu den in CQL2 spezifizierten Standardfunktionen werden auch die folgenden benutzerdefinierten Funktionen unterstützt:

  • UPPER(String): String gibt die Zeichenkette in Großbuchstaben zurück.
  • LOWER(String): String gibt die Zeichenkette in Kleinbuchstaben zurück.
  • NOW(): Timestamp gibt die aktuelle Zeit zurück.
  • DIAMETER2D(Geometry): Double gibt den Durchmesser einer Geometrie mit 2D-Koordinaten zurück.
  • DIAMETER3D(Geometry): Double gibt den Durchmesser einer Geometrie mit 3D-Koordinaten zurück.

Limitierungen

Je nach Feature-Provider werden einige Funktionen von CQL2 möglicherweise nicht unterstützt. Insbesondere werden in GeoPackage Feature-Providern Queryables in einer JSON-Spalte, die Arrays sind, nicht unterstützt. In PostgreSQL/PostGIS-Feature-Anbietern wird der Operator A_OVERLAPS für Queryables in einer JSON-Spalte nicht unterstützt.

Die Konformitätsklassen Functions und Arithmetic Expressions werden nicht unterstützt.

In einer scalarExpression darf aus booleanExpression nur booleanLiteral verwendet werden.

Der Operator IN erfordert eine Eigenschaft auf der linken Seite und Literale auf der rechten Seite.

Die Unicode-Zeichen "\x10000" bis "\x10FFFF" werden nicht unterstützt.

Konformitätsklassen

Dieser Baustein implementiert die Anforderungen der Konformitätsklassen Filter und Features Filter aus dem Entwurf der Spezifikation OGC API - Features - Part 3: Common Query Languageopen in new window sowie die Konformitätsklassen Basic CQL2, Advanced Comparison Operators, Case-insensitive Comparisons, Accent-insensitive Comparisons, Basic Spatial Functions, Basic Spatial Functions with additional Spatial Literals, Spatial Functions, Temporal Functions, Array Functions, Property-Property Comparisons, CQL2 Text encoding, und CQL2 JSON encoding aus dem Entwurf der Spezifikation Common Query Language (CQL2open in new window. Die Implementierung wird sich im Zuge der weiteren Standardisierung der Spezifikation noch ändern.

Die Veröffentlichung der Queryables wird über Feature Collections - Queryables gesteuert und ist Voraussetzung, damit Clients die abfragbaren Objekteigenschaften bestimmen können.

Query Parameter

NameRessourcenBeschreibung
filter
Features, Vector Tile
Der Filterausdruck in der in filter-lang angegebenen Filtersprache. Die Koordinaten sind in dem in filter-crs angegebenen Koordinatenreferenzsystem.
filter-crs
Features, Vector Tile
Gibt an, welches der unterstützten Koordinatenreferenzsysteme zur Kodierung von Koordinaten im Filterausdruck verwendet wird (Parameter filter). Standardwert ist WGS84 Längen-/Breitengrad (CRS84).
filter-lang
Features, Vector Tile
Sprache des Filterausdrucks im Parameter filter. Unterstützt werden cql2-text und cql2-json, spezifiziert im Entwurf des OGC-Standards Common Query Language (CQL2). cql2-text ist eine SQL-ähnliche Textkodierung für Filterausdrücke, die auch räumliche, zeitliche und Array-Prädikate unterstützt. cql2-json ist eine JSON-Kodierung der gleichen Grammatik, geeignet für die Verwendung als Teil eines JSON-Objekts, das eine Query darstellt. Die Verwendung von cql2-text wird für Filterausdrücke im Parameter filter empfohlen.

Konfiguration

Optionen

NameDefaultBeschreibungTypSeit
buildingBlock
Immer FILTER.
string
v2.0
enabled
false
Soll der Baustein aktiviert werden?
boolean
v2.0

Beispiele


- buildingBlock: FILTER
  enabled: true