Ein Web Feature Service (WFS) ist ein Webdienst für den Zugriff auf Geoobjekte (engl. Features – Vektordaten mit Sachinformationen). Die Geoobjekte können abgefragt und modifiziert werden. Mögliche Datenquellen für die Bereitstellung eines WFS sind Geodatenbanken (z. B. PostGIS, Oracle Spatial usw.) sowie Vektordateien (z. B. ESRI Shapefile).
Das OGC hat im November 2010 die WFS Version 2.0 [OGC-WFS] verabschiedet, die zur ISO-Norm 19142 weiterqualifiziert wurde. Die ISO-Norm 19142 bildet die Grundlage für die Realisierung von INSPIRE-Downloaddiensten. Die entsprechende Handlungsempfehlung (Technical Guidance for Implementing INSPIRE Download Services 3.0) wird Anfang 2012 erwartet.
WFS 2.0 referenziert weitere ISO-Normen und OGC-Standards, beispielsweise den Filter Encoding Standard zum Aufbau von (räumlichen) Filtern. Folgende Versionsabhängigkeiten sind zu berücksichtigen:
- Web Feature Service 2.0. (ISO 19142)
- Geography Markup Language (GML) 3.2 (ISO 19136:2007)
- Filter Encoding Standard (FES) 2.0 (ISO 19143)
- OWS Common 1.1 (OGC 06-121r3)
Neuerungen in WFS 2.0
Die Version 2.0 wurde im Vergleich zur Vorgängerversion 1.1 in ihrem Funktionsumfang erweitert. Zu den Neuerungen zählen die Einführung einer überarbeiteten Version des Filter Encoding Standards sowie Stored Queries und Joins (vgl. [GEOSERVER]).
FES 2.0 | Der neue Filter Encoding Standard ermöglicht temporale Filtermöglichkeiten. |
Stored Queries | Stored Queries sind eine Möglichkeit, um (komplexe) Abfragen serverseitig abzulegen. Das entsprechende Stored Query kann über seine ID aufgerufen werden. |
Beispiel: Liefere alle Seen im Landkreis München | |
Zudem können in den Stored Queries Platzhalter definiert werden, die beim Aufruf mit einem Wert belegt werden. | |
Beispiel: Liefere alle Parks größer als $FLÄCHE | $FLÄCHE = 1000 | |
Hierfür werden die Operationen CreateStoredQuery, DropStoreQuery, ListStoredQueries, DescribeStoredQueries bereitgestellt. | |
Joins (Optional) | Über WFS-Abfragen können Joins realisiert werden, wie sie von Geodatenbanken bekannt sind. |
Beispiel: Liefere alle Parks, in denen Seen liegen. |
Operationen in WFS 2.0
Der WFS 2.0 Standard definiert elf verschiedene Operationen, wobei die Operationen GetCapabilities, DescribeFeatureType, GetPropertyValue, GetFeature, ListStoredQueries und DescribeStoredQueries für die Erfüllung der Basic-WFS Konformitätsklasse (vgl. Table 1 – [OGC-WFS]) notwendig sind.
GetCapabilities | Abfrage der Dienste-Beschreibung |
DescribeFeatureType | Abfrage der Struktur von einzelnen FeatureTypes |
GetPropertyValue | Abfrage von Attributwerten von Features |
GetFeature | Abfrage von Features (Instanzen eines FeatureTypes) |
GetFeatureWithLock | Abfrage von Features (Instanzen eines FeatureTypes), die gleichzeitig gesperrt werden |
LockFeature | Sperre von Features |
Transaction | Modifikation von Features (Anlegen, Ändern, Löschen) |
CreateStoredQuery | Anlegen eines Stored Queries |
DropStoredQuery | Löschen eines Stored Queries |
ListStoredQueries | Abfrage einer Liste mit den vorhandenen Stored Queries |
DescribeStoredQueries | Abfrage der Struktur eines Stored Queries |
Quellen/Links
[GEOSERVER] WFS 2.0 Vorschlag für OpenSource GeoServer
http://geoserver.org/display/GEOS/GSIP+61+-+WFS+2.0
[OGC-WFS] Web Feature Service 2.0
http://www.opengeospatial.org/standards/wfs
WFS 2.0 – Abfragen (Queries)
http://www.weichand.de/2011/11/30/wfs-2-0-abfragen-queries/
WFS 2.0 – Stored Queries Beispiele
http://www.weichand.de/2012/04/22/wfs-2-0-stored-queries-beispiele/
WFS 2.0 – INSPIRE WFS 2.0 Demoserver
http://www.weichand.de/2012/10/17/inspire-wfs-2-0-demoserver-mit-beispielanfragen-geoserver-2-2/
WFS 2.0 Client – Plugin für QGIS
http://www.weichand.de/2012/05/29/wfs-2-0-client-plugin-fur-qgis/