Verwenden von Styled-Layer-Deskriptoren mit WMS-Services
Mit Styled-Layer-Deskriptoren (SLDs) können Sie verschiedene Symbolisierungsschemas für den WMS-Service veröffentlichen, der eine von der Open Geospatial Consortium, Inc. (OGC) definierte XML-Spezifikation verwendet. Clients des Service können alternativ mithilfe eines eigenen SLDs selbst ausgewählte Symbole anwenden.
SLD-Dateien und SLD-Styles
Eine SLD-Datei ist eine XML-Datei, die die OGC SLD-Syntax einhält, damit sie in der Server-Client-Kommunikation verstanden wird.
SLD-Styles werden physisch in der SLD-Datei gespeichert. Logisch definiert ein solcher SLD-Style Symbolisierungsregeln für bestimmte Feature-Sets innerhalb eines angegebenen WMS-Layers. Ein Style kann mehrere Regeln haben, und jede Regel kann einen Filter, der beschreibt, welche Features gerendert werden sollen, sowie mehrere Symbolisierungen aufweisen, die beschreiben, wie diese Features gerendert werden sollen.
Hier sehen Sie ein Beispiel für ein SLD-XML-Dokument:
Die Implementierung von WMS SLD in ArcGIS Server basiert auf der Implementierungsspezifikation für Styled-Layer-Deskriptoren (SLD) von OGC. Eine allgemeine Übersicht über SLD finden Sie auf der Seite Styled Layer Descriptor der OGC-Website.
Veröffentlichen von mehreren Styles mit SLDs
Sie können mehrere Styles für WMS-Layer mit SLD mithilfe des folgenden Workflows veröffentlichen:
- Erstellen Sie einen WMS-Service mit systemgenerierten Capabilities-Dateien.
- Erstellen Sie ein einzelnes SLD-XML-Dokument, das mehrere Styles für jeden Layer im WMS-Service definiert.
- Binden Sie das SLD-XML an den WMS-Service.
Um dies zu erreichen, führen Sie in ArcCatalog oder ArcGIS Server Manager folgende Schritte aus:
- Starten Sie ArcCatalog, oder melden Sie sich bei ArcGIS Server Manager an.
- Veröffentlichen Sie einen WMS-Service anhand der Anweisungen unter WMS-Services.
- Erstellen Sie ein XML-Dokument in SLD-Syntax, das zusätzliche Styles für jeden WMS-Layer definiert, den Sie veröffentlichen möchten. Sie können dieses SLD-XML-Dokument auf der lokalen Festplatte speichern oder es als URL zum Zugriff bereitstellen.
- Beenden Sie den Karten-Service, falls er immer noch ausgeführt wird.
- Öffnen Sie das Dialogfeld "Karten-Service-Eigenschaften". Klicken Sie dazu in ArcCatalog mit der rechten Maustaste auf einen vorhandenen Karten-Service, und klicken Sie auf Service-Eigenschaften. Klicken Sie in ArcGIS Server Manager auf das Symbol Bearbeiten eines vorhandenen Karten-Services auf der Registerkarte Services.
- Klicken Sie auf die Registerkarte Funktionen.
- Aktivieren Sie in der Liste der Funktionen WMS, falls es noch nicht aktiviert ist.
- Unter dem Abschnitt Eigenschaften der Registerkarte Funktionen sehen Sie das Textfeld SLD-Pfad oder -URL. Geben Sie den URL des SLD-XML ein, oder suchen Sie das SLD-XML mithilfe des Datei-Browsers auf der lokalen Festplatte.
- Starten Sie den Karten-Service neu.
- Um sicherzustellen, dass das SLD-XML ordnungsgemäß an den WMS-Service gebunden ist, führen Sie einen der folgenden Schritte aus:
- Geben Sie im Browser eine WMS GetCapabilities-Anforderung aus. In der XML-Antwort sollte es ein Element <Style> für jeden zusätzlichen Style geben, den Sie im SLD für jeden WMS-Layer definiert haben.
- Überprüfen Sie den Ordner <Ausgabeverzeichnis_Karten-Service>\<Service-Name_MapServer>\wms\. Es sollte eine Legendenbilddatei für jeden zusätzlichen Style geben, den Sie im SLD für jeden WMS-Layer definiert haben.
Arbeitsbeispiele für SLDs finden Sie unter Beispiele für WMS-Styled-Layer-Deskriptoren.
Ändern des Styles einer WMS-Karte in ArcGIS Desktop
Sobald Sie eine SLD-XML-Datei an einen ArcGIS Server-WMS-Service gebunden haben, werden anwendbare Styles für jeden Layer abgerufen und durch die Capabilities-Informationen dieses WMS-Service bekannt gegeben. Bestimmte WMS-Clients wie ArcMap erkennen diese Styles und ermöglichen Ihnen das Umschalten zwischen diesen Styles.
Jeder WMS-Service-Sublayer in ArcMap hat ein Dialogfeld Layer-Eigenschaften. In diesem Dialogfeld gibt es eine Registerkarte Style, auf der Sie auswählen können, welchen SLD Sie für den Layer verwenden möchten.
Verwenden von externen SLDs von der Client-Seite
Mit ArcGIS Server WMS-Services sind Benutzer nicht auf die auf dem Server veröffentlichten Styles beschränkt. Clients können in der WMS GetMap-Anforderung auf eine anwendbare SLD-Datei verweisen, damit der WMS-Service die Karte mit eigenen Styles rendert.
Zur Verwendung eines externen SLDs von der Client-Seite sind die folgenden Schritte erforderlich:
- Erstellen Sie ein einzelnes SLD-XML-Dokument, das mehrere Styles für jeden Layer im WMS-Service definiert, oder Sie können ein öffentliches SLD-XML verwenden, wenn es auf den WMS-Service anwendbar ist.
- Stellen Sie das SLD-XML über einen URL zur Verfügung, auf den der Server Zugriff hat (wenn Sie ein öffentliches SLD-XML verwenden, stellen Sie sicher, dass darauf als URL zugegriffen werden kann).
- Ändern Sie die Werte der Parameter LAYERS und STYLES in der ursprünglichen WMS HTTP GetMap-Anforderung, um anzugeben, welchen Style der WMS-Server verwenden soll, um jeden Layer zu rendern.
- Senden Sie das SLD-XML an den WMS-Server und fordern Sie die Karte an, indem Sie am Ende einer WMS HTTP GetMap-Anforderungszeichenfolge ein weiteres Schlüssel/Wert-Parameterpaar hinzufügen (SLD=<sld_xml_url>).
Funktionsweise von SLD_BODY
Eine Alternative zum Senden von SLD-Styles an den Server besteht darin, den standardmäßigen WMS GetMap-Anforderungsparameter SLD_BODY zu verwenden. Im Gegensatz zum Parameter-SLD enthält der Wert von SLD_BODY den tatsächlichen XML-Text eines SLD-Dokuments. Mit SLD_BODY ist es für einen Client möglich, die WMS-Layer-Styles dynamisch zu ändern, ohne dass das SLD-Dokument durch einen öffentlichen URL verfügbar gemacht wird.
Derzeit unterstützen nur wenige Desktop-WMS-Clients SLD_BODY. Die meisten der praktischen Anwendungsfälle für SLD_BODY sind in Web-Clients wie OpenLayers und ArcGIS API for JavaScript, mit denen Anwendungsentwickler die Flexibilität haben, die GetMap-Anforderung an SLD_BODY anzuhängen.
Zur Verwendung von SLD_BODY sind die folgenden Schritte auf der Client-Seite erforderlich:
- Erstellen Sie ein einzelnes SLD-XML-Dokument, das mehrere Styles für jeden Layer im WMS-Service definiert, oder Sie können ein öffentliches SLD-XML verwenden, wenn Sie Zugriff darauf haben.
- Ändern Sie die Werte der Parameter LAYERS und STYLES in der ursprünglichen WMS HTTP GetMap-Anforderung, um anzugeben, welchen Style der WMS-Server verwenden soll, um jeden Layer zu rendern.
- Senden Sie das SLD-XML an den WMS-Server und fordern Sie die Karte an, indem Sie am Ende der WMS HTTP GetMap-Anforderungszeichenfolge ein weiteres Schlüssel/Wert-Parameterpaar hinzufügen (SLD_BODY=<sld_xml_body>).
Beispiele für SLD_BODY
Beispielanforderung 1
http://myserver/arcgis/services/OGC/SanFrancisco/MapServer/WMSServer?LAYERS=highways&STYLES=style_sld_body&TRANSPARENT=true&FORMAT=image%2Fpng&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&CRS=CRS%3A84&SLD_BODY=%3Csld%3AStyledLayerDescriptor%20xmlns%3Asld%3D%22http%3A%2F%2Fwww.opengis.net%2Fsld%22%20version%3D%221.0.0%22%20xsi%3AschemaLocation%3D%22http%3A%2F%2Fwww.opengis.net%2Fsld%20http%3A%2F%2Fschemas.opengis.net%2Fsld%2F1.0.0%2FStyledLayerDescriptor.xsd%22%20xmlns%3Axsi%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema-instance%22%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%20xmlns%3Agml%3D%22http%3A%2F%2Fwww.opengis.net%2Fgml%22%3E%3Csld%3ANamedLayer%3E%3Csld%3AName%3Ehighways%3C%2Fsld%3AName%3E%3Csld%3ANamedStyle%3E%3Csld%3AName%2F%3E%3C%2Fsld%3ANamedStyle%3E%3Csld%3AUserStyle%3E%3Csld%3AName%3Estyle_sld_body%3C%2Fsld%3AName%3E%3Csld%3ATitle%3Eroad_types%3C%2Fsld%3ATitle%3E%3Csld%3AFeatureTypeStyle%3E%3Csld%3ARule%3E%3Csld%3AName%3Ecalles%3C%2Fsld%3AName%3E%3Csld%3ATitle%3Ecalles%3C%2Fsld%3ATitle%3E%3Csld%3ALineSymbolizer%3E%3Csld%3AStroke%3E%3Csld%3ACssParameter%20name%3D%22stroke%22%3E%23FFFF00%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-width%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linejoin%22%3Eround%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linecap%22%3Eround%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AStroke%3E%3C%2Fsld%3ALineSymbolizer%3E%3C%2Fsld%3ARule%3E%3Csld%3ARule%3E%3Csld%3AName%3Eautopista%3C%2Fsld%3AName%3E%3Csld%3ATitle%3Eautopista%3C%2Fsld%3ATitle%3E%3Cogc%3AFilter%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3APropertyIsEqualTo%3E%3Cogc%3APropertyName%3EROAD_TYPE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3EMajor%20Roads%2FHighways%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsEqualTo%3E%3C%2Fogc%3AFilter%3E%3Csld%3ALineSymbolizer%3E%3Csld%3AStroke%3E%3Csld%3ACssParameter%20name%3D%22stroke%22%3E%230000FF%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-width%22%3E2%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linejoin%22%3Eround%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linecap%22%3Eround%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AStroke%3E%3C%2Fsld%3ALineSymbolizer%3E%3C%2Fsld%3ARule%3E%3Csld%3ARule%3E%3Csld%3AName%3Erampa%3C%2Fsld%3AName%3E%3Csld%3ATitle%3Erampa%3C%2Fsld%3ATitle%3E%3Cogc%3AFilter%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3APropertyIsEqualTo%3E%3Cogc%3APropertyName%3EHWYNAME%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3ERAMP%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsEqualTo%3E%3C%2Fogc%3AFilter%3E%3Csld%3ALineSymbolizer%3E%3Csld%3AStroke%3E%3Csld%3ACssParameter%20name%3D%22stroke%22%3E%2300FF00%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-width%22%3E2%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linejoin%22%3Eround%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linecap%22%3Eround%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AStroke%3E%3C%2Fsld%3ALineSymbolizer%3E%3C%2Fsld%3ARule%3E%3C%2Fsld%3AFeatureTypeStyle%3E%3C%2Fsld%3AUserStyle%3E%3C%2Fsld%3ANamedLayer%3E%3C%2Fsld%3AStyledLayerDescriptor%3E&BBOX=-122.64942090625,37.6087920625,-122.25391309375,37.8724639375&WIDTH=1152&HEIGHT=768
Antwort auf Beispielanforderung 1
Beispielanforderung 2
http://myserver/arcgis/services/OGC/SanFrancisco/MapServer/WMSServer? LAYERS=pizzastores&STYLES=style_sld_body&TRANSPARENT=true&FORMAT=image%2Fpng&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&SLD_BODY=%3Csld%3AStyledLayerDescriptor%20xmlns%3Asld%3D%22http%3A%2F%2Fwww.opengis.net%2Fsld%22%20version%3D%221.0.0%22%20xsi%3AschemaLocation%3D%22http%3A%2F%2Fwww.opengis.net%2Fsld%20http%3A%2F%2Fschemas.opengis.net%2Fsld%2F1.0.0%2FStyledLayerDescriptor.xsd%22%20xmlns%3Axsi%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema-instance%22%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%20xmlns%3Agml%3D%22http%3A%2F%2Fwww.opengis.net%2Fgml%22%3E%3Csld%3ANamedLayer%3E%3Csld%3AName%3Epizzastores%3C%2Fsld%3AName%3E%3Csld%3ANamedStyle%3E%3Csld%3AName%2F%3E%3C%2Fsld%3ANamedStyle%3E%3Csld%3AUserStyle%3E%3Csld%3AName%3Estyle_sld_body%3C%2Fsld%3AName%3E%3Csld%3ATitle%3Epizza%3C%2Fsld%3ATitle%3E%3Csld%3AFeatureTypeStyle%3E%3Csld%3ARule%3E%3Csld%3AName%3Edefault%3C%2Fsld%3AName%3E%3Csld%3APointSymbolizer%3E%3Csld%3AGraphic%3E%3Csld%3AExternalGraphic%3E%3Csld%3AOnlineResource%20xlink%3Atype%3D%22simple%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xlink%3Ahref%3D%22http%3A%2F%2Fzeon%2Fresources%2Fsld%2Fsanfrancisco%2Fimages%2Fpizza.gif%22%2F%3E%3Csld%3AFormat%3EGIF%3C%2Fsld%3AFormat%3E%3C%2Fsld%3AExternalGraphic%3E%3Csld%3AOpacity%3E1%3C%2Fsld%3AOpacity%3E%3Csld%3ASize%3E12%3C%2Fsld%3ASize%3E%3Csld%3ARotation%3E0%3C%2Fsld%3ARotation%3E%3C%2Fsld%3AGraphic%3E%3C%2Fsld%3APointSymbolizer%3E%3C%2Fsld%3ARule%3E%3C%2Fsld%3AFeatureTypeStyle%3E%3C%2Fsld%3AUserStyle%3E%3C%2Fsld%3ANamedLayer%3E%3C%2Fsld%3AStyledLayerDescriptor%3E&BBOX=-122.64942090625,37.6087920625,-122.25391309375,37.8724639375&WIDTH=1152&HEIGHT=768
Antwort auf Beispielanforderung 2
Beispielanforderung 3
http://myserver/arcgis/services/OGC/SanFrancisco/MapServer/WMSServer? LAYERS=blockgroups&STYLES=style_sld_body&TRANSPARENT=true&FORMAT=image%2Fpng&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&SLD_BODY=%3Csld%3AStyledLayerDescriptor%20xmlns%3Asld%3D%22http%3A%2F%2Fwww.opengis.net%2Fsld%22%20version%3D%221.0.0%22%20xsi%3AschemaLocation%3D%22http%3A%2F%2Fwww.opengis.net%2Fsld%20http%3A%2F%2Fschemas.opengis.net%2Fsld%2F1.0.0%2FStyledLayerDescriptor.xsd%22%20xmlns%3Axsi%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema-instance%22%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%20xmlns%3Agml%3D%22http%3A%2F%2Fwww.opengis.net%2Fgml%22%3E%3Csld%3ANamedLayer%3E%3Csld%3AName%3Eblockgroups%3C%2Fsld%3AName%3E%3Csld%3ANamedStyle%3E%3Csld%3AName%2F%3E%3C%2Fsld%3ANamedStyle%3E%3Csld%3AUserStyle%3E%3Csld%3AName%3Estyle_sld_body%3C%2Fsld%3AName%3E%3Csld%3AFeatureTypeStyle%3E%3Csld%3ARule%3E%3Csld%3AName%3E0%20-%20784%3C%2Fsld%3AName%3E%3Csld%3ATitle%3E0%20-%20784%3C%2Fsld%3ATitle%3E%3Cogc%3AFilter%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3APropertyIsBetween%3E%3Cogc%3APropertyName%3EPOP1990%3C%2Fogc%3APropertyName%3E%3Cogc%3ALowerBoundary%3E%3Cogc%3ALiteral%3E0%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3ALowerBoundary%3E%3Cogc%3AUpperBoundary%3E%3Cogc%3ALiteral%3E784%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3AUpperBoundary%3E%3C%2Fogc%3APropertyIsBetween%3E%3C%2Fogc%3AFilter%3E%3Csld%3APolygonSymbolizer%3E%3Csld%3AFill%3E%3Csld%3ACssParameter%20name%3D%22fill%22%3E%23FFFF80%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22fill-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AFill%3E%3Csld%3AStroke%3E%3Csld%3ACssParameter%20name%3D%22stroke%22%3E%23FF3300%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-width%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linejoin%22%3Eround%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linecap%22%3Eround%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AStroke%3E%3C%2Fsld%3APolygonSymbolizer%3E%3C%2Fsld%3ARule%3E%3Csld%3ARule%3E%3Csld%3AName%3E785%20-%201571%3C%2Fsld%3AName%3E%3Csld%3ATitle%3E785%20-%201571%3C%2Fsld%3ATitle%3E%3Cogc%3AFilter%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3APropertyIsBetween%3E%3Cogc%3APropertyName%3EPOP1990%3C%2Fogc%3APropertyName%3E%3Cogc%3ALowerBoundary%3E%3Cogc%3ALiteral%3E785%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3ALowerBoundary%3E%3Cogc%3AUpperBoundary%3E%3Cogc%3ALiteral%3E1571%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3AUpperBoundary%3E%3C%2Fogc%3APropertyIsBetween%3E%3C%2Fogc%3AFilter%3E%3Csld%3APolygonSymbolizer%3E%3Csld%3AFill%3E%3Csld%3ACssParameter%20name%3D%22fill%22%3E%23F7C348%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22fill-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AFill%3E%3Csld%3AStroke%3E%3Csld%3ACssParameter%20name%3D%22stroke%22%3E%230033FF%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-width%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linejoin%22%3Eround%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linecap%22%3Eround%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AStroke%3E%3C%2Fsld%3APolygonSymbolizer%3E%3C%2Fsld%3ARule%3E%3Csld%3ARule%3E%3Csld%3AName%3E1572%20-%204737%3C%2Fsld%3AName%3E%3Csld%3ATitle%3E1572%20-%204737%3C%2Fsld%3ATitle%3E%3Cogc%3AFilter%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3APropertyIsBetween%3E%3Cogc%3APropertyName%3EPOP1990%3C%2Fogc%3APropertyName%3E%3Cogc%3ALowerBoundary%3E%3Cogc%3ALiteral%3E1572%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3ALowerBoundary%3E%3Cogc%3AUpperBoundary%3E%3Cogc%3ALiteral%3E4737%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3AUpperBoundary%3E%3C%2Fogc%3APropertyIsBetween%3E%3C%2Fogc%3AFilter%3E%3Csld%3APolygonSymbolizer%3E%3Csld%3AFill%3E%3Csld%3ACssParameter%20name%3D%22fill%22%3E%23C46D1B%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22fill-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AFill%3E%3Csld%3AStroke%3E%3Csld%3ACssParameter%20name%3D%22stroke%22%3E%2333FF00%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-opacity%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-width%22%3E1%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linejoin%22%3Eround%3C%2Fsld%3ACssParameter%3E%3Csld%3ACssParameter%20name%3D%22stroke-linecap%22%3Eround%3C%2Fsld%3ACssParameter%3E%3C%2Fsld%3AStroke%3E%3C%2Fsld%3APolygonSymbolizer%3E%3C%2Fsld%3ARule%3E%3C%2Fsld%3AFeatureTypeStyle%3E%3C%2Fsld%3AUserStyle%3E%3C%2Fsld%3ANamedLayer%3E%3C%2Fsld%3AStyledLayerDescriptor%3E&BBOX=-122.64942090625,37.6087920625,-122.25391309375,37.8724639375&WIDTH=1152&HEIGHT=768
Antwort auf Beispielanforderung 3