Web Feature Service: Unterschied zwischen den Versionen
HeinzJ (Diskussion | Beiträge) (→Weblink) |
BastiS (Diskussion | Beiträge) |
||
(13 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | Unter einem '''Web Feature Service (WFS)''' versteht man den [[:de:Internet|internet]]<nowiki></nowiki> | + | Unter einem '''Web Feature Service (WFS)''' versteht man den [[:de:Internet|internet]]<nowiki></nowiki>gestützten Zugriff auf [[Geodaten]] innerhalb eines verteilten [[Geoinformationssystem|GIS]]. Der WFS beschränkt sich dabei ausschließlich auf [[Vektordaten]], wie sie in [[Datenbank|Datenbanken]] abgelegt werden können. |
Im Rahmen der [[:de:Spezifikation|Spezifikationen]] des [[OpenGIS Consortium|OpenGIS Consortium (OGC)]] ermöglicht ein WFS den Zugriff auf geographische [[Feature (GIS)|Features]] in Datenbanken und gibt das Ergebnis mindestens als unabhängiges Dateiformat [[GML|Geography Markup Language (GML)]] zurück. | Im Rahmen der [[:de:Spezifikation|Spezifikationen]] des [[OpenGIS Consortium|OpenGIS Consortium (OGC)]] ermöglicht ein WFS den Zugriff auf geographische [[Feature (GIS)|Features]] in Datenbanken und gibt das Ergebnis mindestens als unabhängiges Dateiformat [[GML|Geography Markup Language (GML)]] zurück. | ||
− | Unter einem Feature versteht man hierbei die allgemeine Abstraktion eines Fakts | + | Unter einem Feature versteht man hierbei die allgemeine Abstraktion eines Fakts der Realität ("real world phenomena"). Ein Feature Type ist die Darstellung mithilfe eines Namens, weiteren Attributen und, bei geographischen Feature Types, mit einer Geometrie. Beispielsweise enthält eine Datenbank Feature Types des Typs "Fluss". Eine Instanz eines Features (eine Feature Instance) ist damit dann ein konkreter Fluss. |
==Technischer Hintergrund eines OGC-konformen WFS== | ==Technischer Hintergrund eines OGC-konformen WFS== | ||
− | Um einen OGC-konformen WFS - d.h. ein Web Feature Service, der die Spezifikation des | + | Um einen OGC-konformen WFS - d.h. ein Web Feature Service, der die Spezifikation des Open Geospatial Consortium erfüllt - zu nutzen, wird bislang zur Kommunikation auf das [[:de:HTTP|Hypertext Transfer Protocol (HTTP)]] zurückgegriffen. Die Anfrage wird dabei als HTTP-[[Request]] von einem [[:de:Client|Client]] an den WFS gesendet. Der WFS besitzt sechs [[:de:Operation|Operationen]], die von einem Benutzer angefragt werden können: |
# GetCapabilities: Hierbei wird nach den Fähigkeiten des WFS gefragt. Als Antwort wird ein [[:de:XML|XML]]-Dokument an den Benutzer zurückgeschickt, das neben allgemeinen Angaben zum Anbieter des WFS die abfragbaren [[Feature Type|Feature Types]] und die möglichen Operationen beinhaltet. | # GetCapabilities: Hierbei wird nach den Fähigkeiten des WFS gefragt. Als Antwort wird ein [[:de:XML|XML]]-Dokument an den Benutzer zurückgeschickt, das neben allgemeinen Angaben zum Anbieter des WFS die abfragbaren [[Feature Type|Feature Types]] und die möglichen Operationen beinhaltet. | ||
# DescribeFeatureType: Bei dieser Anfrage werden Informationen zur Struktur der einzelnen Feature Types zurückgegeben. | # DescribeFeatureType: Bei dieser Anfrage werden Informationen zur Struktur der einzelnen Feature Types zurückgegeben. | ||
# GetFeature: Mit diesem Request werden die einzelnen Feature Instanzen, d.h. die eigentlichen Daten zurückgegeben. Es sollte möglich sein, dass bei der Anfrage näher spezifiziert wird, welche Eigenschaften der Features zurückgegeben werden und ob diese räumliche Informationen beinhalten. | # GetFeature: Mit diesem Request werden die einzelnen Feature Instanzen, d.h. die eigentlichen Daten zurückgegeben. Es sollte möglich sein, dass bei der Anfrage näher spezifiziert wird, welche Eigenschaften der Features zurückgegeben werden und ob diese räumliche Informationen beinhalten. | ||
+ | # GetGmlObject: Der WFS kann dadurch Elemente liefern, die durch Xlinks beschrieben sind. | ||
# Transaction: Ein WFS kann Anfragen der Transaktion bereitstellen, d.h. die Möglichkeit die eigentlichen Features in der Datenbasis zu ändern. Darunter fällt das Anlegen, die Aktualisierung und die Löschung geographischer Features. | # Transaction: Ein WFS kann Anfragen der Transaktion bereitstellen, d.h. die Möglichkeit die eigentlichen Features in der Datenbasis zu ändern. Darunter fällt das Anlegen, die Aktualisierung und die Löschung geographischer Features. | ||
# LockFeature: Hiermit wird vom WFS gewährleistet, dass bei einer Operation auf einem Feature Type, dieses nicht während der Transaktion von einer anderen Instanz geändert wird. | # LockFeature: Hiermit wird vom WFS gewährleistet, dass bei einer Operation auf einem Feature Type, dieses nicht während der Transaktion von einer anderen Instanz geändert wird. | ||
− | Nimmt man diese Operationen als Grundlage, kann man | + | Nimmt man diese Operationen als Grundlage, kann man drei Typen von WFS unterscheiden: |
# Basic WFS: Der Basic WFS bietet den nur-lesenden Zugriff mit den Operationen GetCapabilities, DescribeFeatureType und GetFeature an. | # Basic WFS: Der Basic WFS bietet den nur-lesenden Zugriff mit den Operationen GetCapabilities, DescribeFeatureType und GetFeature an. | ||
+ | # XLink WFS: Bietet die Funktionen des Basic WFS und zusätzlich noch Xlink Unterstützung durch die Funktion GetGmlObject. | ||
# Transaction WFS: Der Transaction WFS ermöglicht darüber hinaus auch den schreibenden Zugriff auf die Daten mit den Operationen Transaction und optional LockFeature. | # Transaction WFS: Der Transaction WFS ermöglicht darüber hinaus auch den schreibenden Zugriff auf die Daten mit den Operationen Transaction und optional LockFeature. | ||
− | Damit muss ein WFS zwingend Anfragen mit den ersten drei Operationen anbieten, der Transaction und LockFeature Request sind optional. Letzterer muss auch bei einem WFS mit Schreibzugriff nicht [[:de:Implementation|implementiert]] werden. | + | Damit muss ein WFS zwingend Anfragen mit den ersten drei Operationen anbieten, der GetGMLObject, Transaction und LockFeature Request sind optional. Letzterer muss auch bei einem WFS mit Schreibzugriff nicht [[:de:Implementation|implementiert]] werden. |
Der übliche Ablauf der Kommunikation zwischen Client und einem WFS in einem verteilten System läuft daher folgendermaßen ab: | Der übliche Ablauf der Kommunikation zwischen Client und einem WFS in einem verteilten System läuft daher folgendermaßen ab: | ||
Zeile 35: | Zeile 37: | ||
Transactional Web Feature Server erfüllen die Anforderungen für [[Simple Features]] und ermöglichen das Hochladen derselbigen. | Transactional Web Feature Server erfüllen die Anforderungen für [[Simple Features]] und ermöglichen das Hochladen derselbigen. | ||
− | + | ==Beispiele== | |
− | + | === getCapabilities === | |
The getCapabilities call returns an OGC WFS Capabilities Document (XML) which contains all information that an OGC WFS Client needs to request the server for features. | The getCapabilities call returns an OGC WFS Capabilities Document (XML) which contains all information that an OGC WFS Client needs to request the server for features. | ||
− | + | === describeFeatureType === | |
This request returns all metainformation ''about'' one feature of the WFS. This metainformation is necessary to be able to query for the values of an object and to be able to edit and store features. | This request returns all metainformation ''about'' one feature of the WFS. This metainformation is necessary to be able to query for the values of an object and to be able to edit and store features. | ||
Zeile 52: | Zeile 54: | ||
<br /> | <br /> | ||
+ | <source lang="xml"> | ||
<xs:schema targetNamespace="http://www.openplans.org/topp" elementFormDefault="qualified" | <xs:schema targetNamespace="http://www.openplans.org/topp" elementFormDefault="qualified" | ||
Zeile 60: | Zeile 63: | ||
<xs:complexContent> | <xs:complexContent> | ||
<xs:extension base="~gml:AbstractFeatureType"> | <xs:extension base="~gml:AbstractFeatureType"> | ||
− | + | ||
<xs:sequence> | <xs:sequence> | ||
<xs:element name="gid" minOccurs="0" nillable="true" type="xs:int"/> | <xs:element name="gid" minOccurs="0" nillable="true" type="xs:int"/> | ||
Zeile 67: | Zeile 70: | ||
<xs:element name="usertype" minOccurs="0" nillable="true" type="xs:int"/> | <xs:element name="usertype" minOccurs="0" nillable="true" type="xs:int"/> | ||
<xs:element name="orga" minOccurs="0" nillable="true" type="xs:string"/> | <xs:element name="orga" minOccurs="0" nillable="true" type="xs:string"/> | ||
− | + | ||
<xs:element name="url" minOccurs="0" nillable="true" type="xs:string"/> | <xs:element name="url" minOccurs="0" nillable="true" type="xs:string"/> | ||
<xs:element name="town" minOccurs="0" nillable="true" type="xs:string"/> | <xs:element name="town" minOccurs="0" nillable="true" type="xs:string"/> | ||
Zeile 82: | Zeile 85: | ||
</xs:schema> | </xs:schema> | ||
+ | </source> | ||
<br /> | <br /> | ||
− | + | === getFeature === | |
The getFeature request can query for single objects or a selection depending on the filter encoding which is added to the request. The OGC WFS ~getFeature request returns a GML [http://wms1.ccgis.de/cgi-bin/mapserv425?map=/data/umn/germany_demo/germany_demo_wfs.map&SERVICE=WFS&&REQUEST=GetFeature&VERSION=1.0.0&TYPENAME=Postleitzahlbereiche&FILTER=%3CFilter%3E%3CPropertyIsLike+wildCard%3D%27%2A%27+singleChar%3D%27%3F%27+escape%3D%27%21%27%3E%3CPropertyName%3Eitem_plz%3C%2FPropertyName%3E%3CLiteral%3E53111%3C%2FLiteral%3E%3C%2FPropertyIsLike%3E%3C%2FFilter%3E (Example)] document. | The getFeature request can query for single objects or a selection depending on the filter encoding which is added to the request. The OGC WFS ~getFeature request returns a GML [http://wms1.ccgis.de/cgi-bin/mapserv425?map=/data/umn/germany_demo/germany_demo_wfs.map&SERVICE=WFS&&REQUEST=GetFeature&VERSION=1.0.0&TYPENAME=Postleitzahlbereiche&FILTER=%3CFilter%3E%3CPropertyIsLike+wildCard%3D%27%2A%27+singleChar%3D%27%3F%27+escape%3D%27%21%27%3E%3CPropertyName%3Eitem_plz%3C%2FPropertyName%3E%3CLiteral%3E53111%3C%2FLiteral%3E%3C%2FPropertyIsLike%3E%3C%2FFilter%3E (Example)] document. | ||
Zeile 90: | Zeile 94: | ||
The parameter requesting the id of the postal code area is added as a WFS FILTER to the getFeature request as http GET parameter. | The parameter requesting the id of the postal code area is added as a WFS FILTER to the getFeature request as http GET parameter. | ||
− | <nowiki>==== http://wms1.ccgis.de/cgi-bin/mapserv425?map=/data/umn/germany_demo/germany_demo_wfs.map& ==== | + | <nowiki> |
+ | ==== http://wms1.ccgis.de/cgi-bin/mapserv425?map=/data/umn/germany_demo/germany_demo_wfs.map& ==== | ||
SERVICE=WFS& | SERVICE=WFS& | ||
Zeile 101: | Zeile 106: | ||
''(the following parameters have to be URL-encoded when transmitted with GET)'' | ''(the following parameters have to be URL-encoded when transmitted with GET)'' | ||
+ | <source lang="xml"> | ||
<Filter> | <Filter> | ||
<~PropertyIsLike wildCard="%" singleChar="?" escape="ESC"> | <~PropertyIsLike wildCard="%" singleChar="?" escape="ESC"> | ||
Zeile 113: | Zeile 119: | ||
</Filter> | </Filter> | ||
− | + | </source> | |
+ | |||
The returned GML document contains the corresponding postal code area as a GML. | The returned GML document contains the corresponding postal code area as a GML. | ||
Zeile 119: | Zeile 126: | ||
''(the format of the GML has been modified for HTML presentation)'' | ''(the format of the GML has been modified for HTML presentation)'' | ||
− | < | + | <source lang="xml"> |
<?xml version='1.0' encoding="ISO-8859-1" ?> | <?xml version='1.0' encoding="ISO-8859-1" ?> | ||
Zeile 214: | Zeile 221: | ||
</wfs:~FeatureCollection> | </wfs:~FeatureCollection> | ||
+ | </source> | ||
− | == | + | == Weblinks == |
* [http://www.opengis.org/ OpenGIS Consortium (OGC)] | * [http://www.opengis.org/ OpenGIS Consortium (OGC)] | ||
* [[:de:Wikipedia:Wikiprojekt_Geoinformatik|Wikiprojekt Geoinformatik]] | * [[:de:Wikipedia:Wikiprojekt_Geoinformatik|Wikiprojekt Geoinformatik]] | ||
* [[:de:Web_Feature_Service|Wikipedia]] | * [[:de:Web_Feature_Service|Wikipedia]] | ||
+ | * [http://www.geodatenzentrum.de/geodaten/gdz_rahmen.gdz_div?gdz_spr=deu&gdz_akt_zeile=3&gdz_anz_zeile=4&gdz_user_id=0&gdz_para1=1 Bundesamt für Kartographie und Geodäsie: Geodatenzentrum - Onlinesuche] | ||
+ | * [http://www.geodatenzentrum.de/docpdf/wfs-gnde.pdf Bundesamt für Kartographie und Geodäsie: Geodatenzentrum WFS-Dokumentation] | ||
+ | * [http://www.selbstverwaltung-bundesweit.de/mapserver/wms_wfs_anleitung.pdf Einführung in WMS und WFS (mit praktischen Beispielen in UMN MapServer und Mapbender)] | ||
[[Kategorie:Web Mapping]] | [[Kategorie:Web Mapping]] |
Aktuelle Version vom 31. Januar 2008, 12:13 Uhr
Unter einem Web Feature Service (WFS) versteht man den internetgestützten Zugriff auf Geodaten innerhalb eines verteilten GIS. Der WFS beschränkt sich dabei ausschließlich auf Vektordaten, wie sie in Datenbanken abgelegt werden können.
Im Rahmen der Spezifikationen des OpenGIS Consortium (OGC) ermöglicht ein WFS den Zugriff auf geographische Features in Datenbanken und gibt das Ergebnis mindestens als unabhängiges Dateiformat Geography Markup Language (GML) zurück.
Unter einem Feature versteht man hierbei die allgemeine Abstraktion eines Fakts der Realität ("real world phenomena"). Ein Feature Type ist die Darstellung mithilfe eines Namens, weiteren Attributen und, bei geographischen Feature Types, mit einer Geometrie. Beispielsweise enthält eine Datenbank Feature Types des Typs "Fluss". Eine Instanz eines Features (eine Feature Instance) ist damit dann ein konkreter Fluss.
Inhaltsverzeichnis
Technischer Hintergrund eines OGC-konformen WFS
Um einen OGC-konformen WFS - d.h. ein Web Feature Service, der die Spezifikation des Open Geospatial Consortium erfüllt - zu nutzen, wird bislang zur Kommunikation auf das Hypertext Transfer Protocol (HTTP) zurückgegriffen. Die Anfrage wird dabei als HTTP-Request von einem Client an den WFS gesendet. Der WFS besitzt sechs Operationen, die von einem Benutzer angefragt werden können:
- GetCapabilities: Hierbei wird nach den Fähigkeiten des WFS gefragt. Als Antwort wird ein XML-Dokument an den Benutzer zurückgeschickt, das neben allgemeinen Angaben zum Anbieter des WFS die abfragbaren Feature Types und die möglichen Operationen beinhaltet.
- DescribeFeatureType: Bei dieser Anfrage werden Informationen zur Struktur der einzelnen Feature Types zurückgegeben.
- GetFeature: Mit diesem Request werden die einzelnen Feature Instanzen, d.h. die eigentlichen Daten zurückgegeben. Es sollte möglich sein, dass bei der Anfrage näher spezifiziert wird, welche Eigenschaften der Features zurückgegeben werden und ob diese räumliche Informationen beinhalten.
- GetGmlObject: Der WFS kann dadurch Elemente liefern, die durch Xlinks beschrieben sind.
- Transaction: Ein WFS kann Anfragen der Transaktion bereitstellen, d.h. die Möglichkeit die eigentlichen Features in der Datenbasis zu ändern. Darunter fällt das Anlegen, die Aktualisierung und die Löschung geographischer Features.
- LockFeature: Hiermit wird vom WFS gewährleistet, dass bei einer Operation auf einem Feature Type, dieses nicht während der Transaktion von einer anderen Instanz geändert wird.
Nimmt man diese Operationen als Grundlage, kann man drei Typen von WFS unterscheiden:
- Basic WFS: Der Basic WFS bietet den nur-lesenden Zugriff mit den Operationen GetCapabilities, DescribeFeatureType und GetFeature an.
- XLink WFS: Bietet die Funktionen des Basic WFS und zusätzlich noch Xlink Unterstützung durch die Funktion GetGmlObject.
- Transaction WFS: Der Transaction WFS ermöglicht darüber hinaus auch den schreibenden Zugriff auf die Daten mit den Operationen Transaction und optional LockFeature.
Damit muss ein WFS zwingend Anfragen mit den ersten drei Operationen anbieten, der GetGMLObject, Transaction und LockFeature Request sind optional. Letzterer muss auch bei einem WFS mit Schreibzugriff nicht implementiert werden.
Der übliche Ablauf der Kommunikation zwischen Client und einem WFS in einem verteilten System läuft daher folgendermaßen ab:
- Der Client fragt mit dem GetCapabilties Request nach den Fähigkeiten des WFS und die angebotenen Feature Types.
- Darauf aufbauend kann mit dem DescribeFeatureType Request die Struktur der einzelnen Feature Types eingesehen werden.
- Dadurch kann mit dem GetFeature Request eine spezielle Instanz eines Features angefordert werden. Alternativ kann bei einem WFS mit Schreibzugriff der Transaction oder der LockFeature Request durchgeführt werden.
Innerhalb des OGC-Kontexts ist die Verbindung eines Web Feature Service mit einem Web Map Service (WMS) ein Beispiel für die Architektur eines verteiltes GIS. Der WFS ist für den Zugriff auf die Geodaten verantwortlich, während der WMS nur noch für die de:Visualisierung der Daten zuständig ist. Dabei beschränkt sich der WFS nur auf den Zugriff von Vektordaten, während ein weiterer Service, der Web Coverage Service (WCS) den speziellen Zugriff auf Rasterdaten steuert.
Somit ist im Sinne des Client-Server Prinzips der WMS der Client des WFS. Darüber hinaus kann dieser WFS als kaskadierender WFS wiederum Client eines oder mehrerer weiterer WFS sein. Diese Architektur kann als Typ eines Web GIS gesehen werden.
Transactional Web Feature Server (WFS-T)
Transactional Web Feature Server erfüllen die Anforderungen für Simple Features und ermöglichen das Hochladen derselbigen.
Beispiele
getCapabilities
The getCapabilities call returns an OGC WFS Capabilities Document (XML) which contains all information that an OGC WFS Client needs to request the server for features.
describeFeatureType
This request returns all metainformation about one feature of the WFS. This metainformation is necessary to be able to query for the values of an object and to be able to edit and store features.
http://my_wfs_server&VERSION=1.1.1&REQUEST=GetCapabilities&SERVICE=WFS
The returned XML document contains the description of the feature (geo object)
(the format of the XML has been modified for HTML presentation)
<xs:schema targetNamespace="http://www.openplans.org/topp" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0"> <xs:import namespace="http://www.opengis.net/gml" schemaLocation="http://wms1.ccgis.de:80/geoserver/data/capabilities/gml/2.1.2/feature.xsd"/> <xs:complexType name="mapbender_user_Type"> <xs:complexContent> <xs:extension base="~gml:AbstractFeatureType"> <xs:sequence> <xs:element name="gid" minOccurs="0" nillable="true" type="xs:int"/> <xs:element name="firstname" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="lastname" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="usertype" minOccurs="0" nillable="true" type="xs:int"/> <xs:element name="orga" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="url" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="town" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="email" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="fullname" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="urlmap" minOccurs="0" nillable="true" type="xs:string"/> <xs:element name="the_geom" minOccurs="0" nillable="true" type="~gml:PointPropertyType"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:element name="mapbender_user" type="topp:mapbender_user_Type" substitutionGroup="gml:_Feature"/> </xs:schema>
getFeature
The getFeature request can query for single objects or a selection depending on the filter encoding which is added to the request. The OGC WFS ~getFeature request returns a GML (Example) document.
The parameter requesting the id of the postal code area is added as a WFS FILTER to the getFeature request as http GET parameter.
==== http://wms1.ccgis.de/cgi-bin/mapserv425?map=/data/umn/germany_demo/germany_demo_wfs.map& ==== SERVICE=WFS& REQUEST=~GetFeature& VERSION=1.0.0& TYPENAME=Postleitzahlbereiche& FILTER=
(the following parameters have to be URL-encoded when transmitted with GET)
<Filter> <~PropertyIsLike wildCard="%" singleChar="?" escape="ESC"> <~PropertyName> item_plz </~PropertyName> <Literal> 53111 </Literal> </~PropertyIsLike> </Filter>
The returned GML document contains the corresponding postal code area as a GML.
(the format of the GML has been modified for HTML presentation)
<?xml version='1.0' encoding="ISO-8859-1" ?> <wfs:~FeatureCollection xmlns="!http://www.ttt.org/myns" xmlns:myns="!http://www.ttt.org/myns" xmlns:wfs="!http://www.opengis.net/wfs" xmlns:gml="!http://www.opengis.net/gml" xmlns:ogc="!http://www.opengis.net/ogc" xmlns:xsi="!http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="!http://www.opengis.net/wfs ../wfs/1.0.0/WFS-basic.xsd !http://www.ttt.org/myns !http://wms1.ccgis.de/cgi-bin/mapserv? map=/data/umn/germany_demo/germany_demo_wfs.map& SERVICE=WFS& VERSION=1.0.0& REQUEST=~DescribeFeatureType TYPENAME=Postleitzahlbereiche"> <gml:boundedBy> <gml:Box srsName="epsg:31467"> <gml:coordinates> -1.000000,-1.000000 -1.000000,-1.000000 </gml:coordinates> </gml:Box> </gml:boundedBy> <gml:featureMember> <Postleitzahlbereiche> <gml:boundedBy> <gml:Box srsName="epsg:31467"> <gml:coordinates> 7.089682,50.732651 7.113803,50.749050 </gml:coordinates> </gml:Box> </gml:boundedBy> <gml:polygonProperty> <gml:Polygon srsName="epsg:31467"> <gml:outerBoundaryIs> <gml:~LinearRing> <gml:coordinates> 3365496.566430,5624978.448441 3365521.124423,5625013.908323 3365565.223312,5625084.526916 3365629.214635,5625160.583843 3365723.363724,5625232.038551 3365777.825572,5625277.769189 3365867.287406,5625324.293319 3366081.776121,5625376.954252 3366242.558916,5625409.342895 3366447.711508,5625422.348649 3366677.856852,5625435.565091 3366826.787403,5624801.669664 3366855.035066,5624566.573031 3366925.451142,5624182.224968 3366715.750264,5624144.261254 3366650.863977,5624128.508596 3366600.955317,5624112.804621 3366531.383108,5624081.886701 3366506.401347,5624071.486493 3366442.053224,5624025.159618 3366392.576627,5623979.714963 3366347.846258,5623958.781918 3366303.629382,5623898.347600 3366254.562142,5623822.330657 3366204.783816,5623801.958859 3366170.529172,5623746.359034 3366096.979434,5623625.121634 3365763.215463,5623795.455427 3365500.779929,5623942.335246 3365218.803228,5624068.496482 3365237.785434,5624138.909926 3365251.877503,5624209.028949 3365265.770476,5624284.252033 3365279.898174,5624354.790930 3365313.834894,5624430.338190 3365342.788540,5624515.791264 3365381.492255,5624611.601424 3365424.880011,5624732.334672 3365458.518013,5624832.944095 3365502.496403,5624908.664231 3365531.735324,5624963.958282 3365496.566430,5624978.448441 </gml:coordinates> </gml:~LinearRing> </gml:outerBoundaryIs> </gml:Polygon> </gml:polygonProperty> <gid>3695</gid> <oid>15223704</oid> <plz99>53111</plz99> <item_plz>53111</item_plz> <buffer_>500</buffer_> </Postleitzahlbereiche> </gml:featureMember> </wfs:~FeatureCollection>