Skip To Content

Использование дескрипторов стилей слоев с сервисами WMS

Дескрипторы слоев со стилем (SLD) помогают публиковать различные схемы символов для сервиса WMS с помощью спецификации XML, определенной Open Geospatial Consortium , Inc. (OGC). Или же клиенты сервиса могут использовать собственные SLD для применения символов по их выбору.

Файлы SLD и стили SLD

Файл SLD — это файл XML, который использует синтаксис OGC SLD, что позволяет понимать его при взаимодействии сервера и клиента.

Стили SLD физически хранятся в файле SLD. Один стиль SLD определяет правила символов для заданного набора объектов в указанном слое WMS. У одного стиля может быть несколько правил, а у каждого правила может быть один фильтр, описывающий, какие объекты должны отображаться, и несколько механизмов отображения символов, описывающих отображение этих объектов.

Далее представлен пример документа SLD XML:

<sld:StyledLayerDescriptor version="1.0.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd">
 <!--
  ESRI_StatesCitiesRivers_USA @		
  http://sampleserver1.arcgisonline.com/arcgis/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?
 -->
 <sld:NamedLayer>
  <!-- 
   layer "2" is the "cities" point layer in the WMS service
  -->
  <sld:Name>2</sld:Name>
  <sld:UserStyle>
   <!-- 
    style should be applied on layer "2", reference the style by it's name "pointSymbolizer" 
   -->
   <sld:Name>pointSymbolizer</sld:Name>
   <sld:Title>pointSymbolizer</sld:Title>
   <sld:FeatureTypeStyle>
    <sld:Rule>
     <sld:PointSymbolizer>
      <sld:Graphic>
       <sld:Mark>
        <!-- uses a circle to mark a city -->
        <sld:WellKnownName>circle</sld:WellKnownName>
        <!-- fill circle with color #666666 -->
        <sld:Fill>
         <sld:CssParameter name="fill">#666666</sld:CssParameter>
         <sld:CssParameter name="fill-opacity">1</sld:CssParameter>
        </sld:Fill>
        <!-- circle boundary with color #666666 -->
        <sld:Stroke>
         <sld:CssParameter name="stroke">#666666</sld:CssParameter>
         <sld:CssParameter name="stroke-opacity">1</sld:CssParameter>
         <sld:CssParameter name="stroke-width">1</sld:CssParameter>
        </sld:Stroke>
       </sld:Mark>
       <!-- circle opacity 1.0 -->
       <sld:Opacity>1</sld:Opacity>
       <!-- circle size "3" -->
       <sld:Size>3</sld:Size>
       <sld:Rotation>0</sld:Rotation>
      </sld:Graphic>
     </sld:PointSymbolizer>
    </sld:Rule>
   </sld:FeatureTypeStyle>
  </sld:UserStyle>
 </sld:NamedLayer>
</sld:StyledLayerDescriptor>

Реализация WMS SLD в ArcGIS Server основана на спецификации реализации дескриптора стиля слоя (SLD) OGC. Полный обзор SLD см. на странице Дескриптор стиля слоя на веб-сайте OGC.

Публикация нескольких стилей с помощью SLD

Можно использовать следующую процедуру для публикации нескольких стилей для слоев WMS с помощью SLD:

  1. Создайте сервис WMS с помощью сгенерированных системой файлов функций.
  2. Создайте один документ SLD XML, определяющий несколько стилей, для каждого слоя в сервисе WMS.
  3. Привяжите SLD XML к сервису WFS.

Для этого выполните следующие шаги:

В ArcGIS Server Manager:

  1. Опубликуйте сервис WMS, следуя инструкциям в разделе Сервисы WMS.
  2. Создайте документ XML с синтаксисом SLD, определяющий дополнительные стили, для каждого слоя WMS, который нужно опубликовать. Этот документ SLD XML можно сохранить на локальный диск или предоставить к нему доступ по URL.
  3. Откройте Manager и выполните вход. Справка по этому шагу приведена в разделе Вход в Менеджер.
  4. Выберите Сервисы > Управление сервисами.
  5. В модуле Управление сервисами найдите свой сервис и щелкните Редактировать Редактировать. Если сервис не показан в списке, он может находиться во вложенной папке корневой директории Site.
  6. В модуле Редактирование перейдите на закладку Функции (Capabilities).
  7. В списке функций щелкните WMS и убедитесь, что функции WMS активированы.
  8. В списке Конфигурация WMS (WMS configuration) вы увидите текстовое окно Путь SLD или URL (SLD Path or URL). Введите URL документа SLD XML или используйте обозреватель файлов для поиска SLD XML на диске.
  9. Нажмите Сохранить и перезапустить (Save and Restart). Внесенные в сервис изменения будут применены незамедлительно.

В ArcGIS Desktop:

  1. Опубликуйте сервис WMS, следуя инструкциям в разделе Сервисы WMS.
  2. Создайте документ XML с синтаксисом SLD, определяющий дополнительные стили, для каждого слоя WMS, который нужно опубликовать. Этот документ SLD XML можно сохранить на локальный диск или предоставить к нему доступ по URL.
  3. В ArcCatalog или в окне Каталога в ArcGIS Desktop разверните узел ГИС-серверы и задайте тип подключения к ArcGIS for Server Администрирование ГИС-сервера. Если административное подключение уже установлено, этот шаг можно пропустить. Инструкции по подключению приведены в разделе Установка административного соединения с ArcGIS Server в ArcGIS Desktop.
  4. В соединении с ArcGIS Server щелкните правой кнопкой мыши сервис WCS и выберите Свойства сервиса (Service Properties).
  5. В Редакторе сервиса (Service Editor) перейдите на закладку Функции (Capabilities) и убедитесь в том, что выбрана опция WMS.
  6. Щелкните закладку WMS.
  7. В разделе Свойства (Properties) закладки списке WMS вы увидите текстовое окно Путь SLD или URL (SLD Path or URL). Введите URL документа SLD XML или используйте обозреватель файлов для поиска SLD XML на диске.
  8. Щелкните ОК. Сервис перезапущен, внесенные вами изменения применены.

Примечания:

Чтобы проверить правильность привязки SLD XML к сервису WMS, выполните одно из следующих действий:

  • Отправьте запрос WMS GetCapabilities в браузере. В ответе XML должен быть один элемент <Style> для каждого дополнительного стиля, определенного в SLD для каждого слоя WMS.
  • Изучите папку <каталог_результатов_картографического_сервиса>\<имя_сервиса_MapServer>\wms\. Должен быть создан один файл изображения легенды для каждого дополнительного стиля, определенного в SLD для каждого слоя WMS.

Примеры рабочих SLD см. в разделе Примеры дескрипторов слоя WMS.

Изменение стиля карты WMS в ArcGIS Desktop

После привязки файла SLD XML к сервису WMS доступные стили будут выбраны для каждого слоя, а информация о них будет передана в сведениях о возможностях сервиса WMS. Определенные клиенты WMS, такие как ArcMap, будут знать об этих стилях и позволят переключаться между ними.

Чтобы выбрать нужный SLD для каждого подслоя сервиса WMS в ArcMap, щелкните правой кнопкой слой и выберите Свойства слоя (Layer Properties). В этом диалоговом окне есть закладка Стиль (Style), на которой можно выбрать, какой SLD использовать для слоя.

Примечание:

Многие другие клиенты WMS, такие как Gaia и uDig, разрешают использовать разные стили для слоя WMS, если они указаны в сведениях о возможностях сервиса WMS.

Использование внешних SLD на клиентской стороне

В сервисах WMS пользователи могут применять не только стили, опубликованные на сервере. Клиенты могут ссылаться на соответствующий файл SLD в запросе WMS GetMap, чтобы сервис WMS отображал карту с помощью собственных стилей.

Для использования внешнего SLD на клиентской стороне необходимо выполнить следующие действия:

  1. Создайте один документ SLD XML, определяющий несколько стилей для каждого слоя в сервисе WMS, или можно использовать публичный SLD XML, если это разрешено в сервисе WMS.
  2. Предоставьте доступ к SLD XML с помощью URL, доступного на сервере (если вы используете публичный SLD XML, убедитесь, что он доступен по URL).
  3. Измените значения параметров LAYERS и STYLES в исходном запросе WMS HTTP GetMap, чтобы указать, какой стиль должен использовать сервер WMS для отображения каждого слоя.
  4. Отправьте SLD XML на сервер WMS и запросите карту, добавив ещё одну пару параметров ключа и значения (SLD=<sld_xml_url>) в конец строки запроса WMS HTTP GetMap.

Как работает SLD_BODY

Альтернативой передаче стилей SLD на сервер служит использование стандартного параметра запроса WMS GetMap, SLD_BODY. В отличие от параметров SLD, значение SLD_BODY содержит фактическое тело XML документа SLD. С помощью SLD_BODY клиент может динамически изменять стили слоя WMS без предоставления доступа к документу SLD через публичный URL.

Примечание:

На данный момент всего несколько клиентов WMS поддерживают SLD_BODY. Большая часть практических сценариев использования SLD_BODY приходится на веб-клиенты, такие как OpenLayers и ArcGIS API for JavaScript, с помощью которых разработчики приложений могут изменять запрос GetMap для добавления параметра SLD_BODY.

Для использования SLD на клиентской стороне необходимо выполнить следующие действия:

  1. Создайте один документ SLD XML, определяющий несколько стилей для каждого слоя в сервисе WMS, или можно использовать публичный документ, если у вас есть доступ к SLD XML.
  2. Измените значения параметров LAYERS и STYLES в исходном запросе WMS HTTP GetMap, чтобы указать, какой стиль должен использовать сервер WMS для отображения каждого слоя.
  3. Отправьте SLD XML на сервер WMS и запросите карту, добавив ещё одну пару параметров ключа и значения (SLD_BODY=<sld_xml_body>) в конец строки запроса WMS HTTP GetMap.

Примеры SLD_BODY

Пример запроса 1.

http://myserver:6080/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

Ответ на пример запроса :.

Ответ на пример запроса 1

Пример запроса 2:

http://gisserver.domain.com:6080/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

Ответ на пример запроса 2:

Ответ на пример запроса 2

Пример запроса 3:

http://gisserver.domain.com:6080/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

Ответ на пример запроса 3:

Ответ на пример запроса 3