OGC WFS de
From MapbenderWiki
Read the English language version
Contents |
Beschreibung
Das OGC (Open Geospatial Consortium) hat die Spezifikationen für den Web Feature Service (WFS) erstellt. Lesen Sie hier alle Details der OGC Specifikationen. Die OGC WFS spezifiert einige Abfragetypen, von denen einige optional und nicht immer implementiert sind:
- getCapabilities
- describeFeatureType
- getFeature
Diese Anfragen liefern die vollständigen Features (Geometrien mit Attributen) vom Server zurück. Dies ist sozusagen die Erweiterung der OGC WMS getFeatureInfo-Anfrage.
Diese Anfragen können alle von Hand zusammen gestellt werden (wie unten beschrieben), aber das ist eine ziemlich mühsame und fehleranfällige Aufgabe. WFS Clients helfen durch Benutzeroberflächen einen Zugang zu den OGC WFS Diensten zu erhalten, um eine Abfrage und Auswahl zu erstellen, Layer zu aktivieren (~FeatureTypes), etc.
Mapbender erweitert diese Funktionalität durch eine vollständige Benutzerverwaltung, Oberflächen, GIS Features und implementiert einige andere OGC Specifikationen für zusätzliche Features.
Lesen Sie hier weiter zur WFS Konfiguration.
Technische Beschreibung
getCapabilities
Der getCapabilities Aufruf liefert ein OGC WFS Capabilities Dokument (XML) zurück, das alle Informationen enthält, die ein OGC WFS Client benötigt, um die Feature auf dem entsprechenden Server abzufragen. Das WFS Capabilities-Dokument ist dem OGC WMS Capabilities Dokument sehr ähnlich, ist aber erweitert durch mehr Details in Bezug auf die Felder innerhalb eines Layers.
getFeature
Die getFeature Anfrage ist in der Lage einzelne Objekte abzufragen oder eine Auswahl, abhängig von der Filterkodierung, die der Anfrage hinzugefügt wird. Die OGC WFS ~getFeature Anfrage liefert ein 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 (Beispiel)] Dokument zurück.
Der Parameter, der die id des Postleitzahlenbereiches abfragt, wird als WFS FILTER an die getFeature Anfrage als http GET Parameter angehängt.
==== 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=
(die folgenden Parameter müssen URL-encoded sein, wenn sie mit GET übergeben werden)
<Filter>
<PropertyIsLike wildCard="%" singleChar="?" escape="ESC">
<PropertyName>
item_plz
</PropertyName>
<Literal>
53111
</Literal>
</PropertyIsLike>
</Filter>
Das zurückgelieferte GML Dokument enthält den entsprechenden Postleitzahlenbereich als GML.
(das Format des GML wurde für die HTML Präsentation modifiziert)
<?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>

