Web Feature Service (WFS) – это открытая спецификация для предоставления географических объектов по сети. В отличие от Web Map Service (WMS) сервис WFS возвращает пространственные объекты с геометрией и атрибутами. Вы можете подключиться к сервису WFS Open Geospatial Consortium (OGC) в ArcGIS Pro, создав подключение к сервису WFS или добавив элемент WFS с активного портала.
Добавление подключения к серверу WFS
Чтобы добавить подключение к серверу WFS, выполните следующие действия:
- На вкладке Вставка в группе Проект, щелкните кнопку Подключения, щелкните Сервер и затем Новый WFS сервер .
Появится диалоговое окно Добавить подключение WFS сервер.
- Введите URL сайта сервера WFS, к которому вы хотите подключиться, в текстовое поле URL сервера.
URL-адрес зависит от конфигурации системы сервера (сайта).
Пример URL-адреса: https://sampleserver6.arcgisonline.com/arcgis/services/SampleWorldCities/MapServer/WFSServer
- Из ниспадающего меню Версия выберите версию WFS, к которой вы хотели бы подключиться.
Версия по умолчанию подключается к версии с самым высоким номером, поддерживаемой сервером.
- Если сервис WFS, к которому вы подключаетесь, имеет дополнительные возможности, или вы хотите задать свойство клиента ArcGIS Pro для подключения к серверу WFS, добавьте имена и значения параметров пользовательского запроса в разделе Параметры пользовательского запроса.
Примерами обычно используемых зарезервированных ключевых слов для клиентов ArcGIS Pro являются: PAGESIZE - для включения разбиения на страницы на стороне клиента, BBOX - для ограничения объектов определенной географической областью, MAXFEATURES - для ограничения количества объектов, отображаемых на карте (по умолчанию ограничение равно 3000), и SWAPXY - для изменения порядка осей слоя. Эти ключевые слова применяются ко всем слоям подключения к серверу WFS. Чтобы изменить свойства отдельных слоев, просмотрите или измените их на вкладке WFS свойств слоя. Учтите, что ArcGIS Pro не может проверить эти дополнительные параметры для сервера.
Чтобы добавить пользовательские параметры выполните следующее:
- Щелкните в первой ячейке.
- Задайте имя параметра в ячейке под столбцом Параметр.
- Задайте значение параметра в ячейке под столбцом Значение.
- Чтобы добавить больше параметров, щелкните кнопку Добавить строку и повторите шаги a–c.
Чтобы удалить пользовательские параметры выполните следующее:
- Выберите строку, содержащую параметр, который нужно удалить.
- Для удаления этой строки щелкните Удалить строку.
- Повторяйте шаги a и b для каждого параметра, который требуется удалить.
- Если необходимо, проверьте аутентификацию сервиса, выполнив одно из следующих действий:
- Если сервис защищен с помощью обычной проверки подлинности, в ниспадающем меню Аутентификация выберите Аутентификация сервера и введите имя пользователя и пароль. Чтобы сохранить имя пользователя и пароль в Windows Credential Manager или в файле подключения, включите опции под заголовком Сохранить логин.
- Если сервис защищен с помощью аутентификации на основе OAuth 2.0, в ниспадающем меню Аутентификация выберите соответствующее подключение из ниспадающего списка. См. раздел Подключение к провайдерам аутентификации из ArcGIS Pro, чтобы узнать, как добавить подключение к поставщикам аутентификации, если они недоступны. При необходимости щелкните Войти, чтобы выполнить аутентификацию подключения к провайдеру.
- Нажмите OK.
Новый файл подключения WFS (.wfs) будет создан и сохранен в домашнем каталоге вашего проекта. В проект будет добавлен элемент, ссылающийся на данный файл подключения, а само подключение появится в папке Серверы на вкладке проект на панели Каталог.
- Разверните подключение к WFS, чтобы просмотреть слои в сервисе WFS, щелкните правой кнопкой мыши слой и выберите опцию в ниспадающем меню Добавить в новой или щелкните Добавить на текущую карту, чтобы добавить слой WFS на карту.
Вы можете также добавить сервис на карту, перетащив его на нее или на панель Содержание.
Элемент WFS будет добавлен на карту. Можно отменить добавление слоя на карту, щелкнув Отмена в диалоговом окне процесса. Если сервис поддерживает разбиение на страницы, при добавлении слоя на карту используется размер страницы по умолчанию, равный 200. Если при добавлении на карту данные отображаются не так, как ожидалось, можно изменить свойства слоя WFS.
Сервисы WFS позволяют добавить один или несколько слоев. Чтобы выбрать группу слоев, нажмите клавишу Shift и щелкните первый и последний подслои в группе, которую вы хотите добавить. Также можно выбрать непоследовательно расположенные слои, удерживая нажатой клавишу Ctrl и щелкая каждый отдельный слой. После выбора нужных слоев щелкните правой кнопкой мыши выбранные слои и выберите, добавить ли их на текущую карту, или на новую карту. Одновременное добавление нескольких слоев занимает больше времени, чем добавление одного слоя.
Добавление сервиса WFS из подключения к активному порталу
Сервисы WFS также можно добавлять на портал. На портале есть следующие три источника элементов WFS:
- Сервисы WFS, опубликованные на сайтах ArcGIS Server, которые вы интегрировали с порталом, автоматически добавляются в качестве элементов портала.
- Сторонние сервисы WFS, которые добавлены на портал в качестве элементов.
- Размещенные сервисы WFS, которые создаются при публикации сервиса WFS из размещенного векторного слоя.
Каждый из этих типов WFS-элементов портала добавляется на карту с помощью следующих шагов:
- На панели Каталог щелкните вкладку Портал.
- Перейдите к элементам WFS или найдите элементы, которые вы хотите использовать, из коллекций Мои ресурсы, Мои группы или ArcGIS Online.
Наведите курсор мыши на элемент портала, чтобы увидеть его тип.
- Щелкните правой кнопкой мыши элемент и выберите опцию в ниспадающем меню Добавить к новой или щелкните Добавить на текущую карту , чтобы добавить слой WFS на карту.
Вы можете также добавить сервис на карту, перетащив его на нее или на панель Содержание. Если сервис содержит несколько слоев, вам будет предложено выбрать слой для добавления на карту.
Элемент WFS будет добавлен на карту. Можно отменить добавление слоя на карту, щелкнув Отмена в диалоговом окне процесса. Если при добавлении на карту данные отображаются не так, как ожидалось, можно изменить свойства слоя WFS.
Сервисы WFS позволяют добавить один или несколько слоев. Чтобы выбрать группу слоев, нажмите клавишу Shift и щелкните первый и последний подслои в группе, которую вы хотите добавить. Также можно выбрать непоследовательно расположенные слои, удерживая нажатой клавишу Ctrl и щелкая каждый отдельный слой. После выбора нужных слоев щелкните правой кнопкой мыши выбранные слои и выберите, добавить ли их на текущую карту, или на новую карту. Одновременное добавление нескольких слоев занимает больше времени, чем добавление одного слоя.
Использование параметра пользовательского запроса
Форма параметров пользовательского запроса может использоваться для ввода дополнительных возможностей, которые поддерживаются сервисом WFS. Входная пара ключ-значение может быть пользовательским параметром, который является специфичным для внедрения сервера WFS, или можно использовать одно из зарезервированных ключевых слов, встроенных клиентом ArcGIS Pro.
Использование пары ключ-значение
Некоторые из сервисов WFS могут иметь определенные пары ключ-значение, используемые для выполнения пользовательского запроса к сервису. Пара ключ-значение будет добавлена к адресу URL WFS после символа вопросительного знака. Например, URL-адрес WFS такой: https://sampleserver6.arcgisonline.com/arcgis/services/SampleWorldCities/MapServer/WFSServer?. Если у вас есть пользовательский параметр с именем myCustomKey, вы можете ввести значение myCustomKey в ячейку Параметр и ввести его значение в ячейку Значение. Когда ArcGIS Pro делает запрос на подключение к сервису WFS, он применит пару ключ-значение к URL-адресу WFS, например, https://sampleserver6.arcgisonline.com/arcgis/services/SampleWorldCities/MapServer/WFSServer?request=GetCapabilities&service=WFS&myCustomKey=myValue.
Использование зарезервированного ключевого слова
Клиент ArcGIS Pro WFS содержит зарезервированные ключевые слова, которые могут использоваться для указания свойства подключения для подключения к серверу WFS. Значение, которое вы задаете для этих параметров, будет применяться ко всем слоям в сервисе WFS. Если вы хотите применить зарезервированное ключевое слово к отдельным слоям в сервисе WFS вместо того, чтобы применять их к подключению, необходимо создать несколько подключений с различными значениями параметров или обновить свойства слоев WFS на карте. В следующей таблице перечислены имена и значения пользовательских параметров, которые можно использовать для задания свойств файла подключения к серверу WFS:
Ключевое слово | Описание |
---|---|
BBOX | Предоставляет экстент ограничивающей рамки для возвращаемых объектов, например, -122.5,37.7,-122.3,37.8. Этот параметр полезен, если нужно ограничить число возвращаемых объектов во всех слоях WFS определенной географической областью. Этот параметр применим только для режима снимка. |
MAXFEATURES | Задает максимальное количество объектов, возвращаемых для слоев подключения к серверу WFS. Этот параметр позволяет избежать проблем с производительностью в случаях, когда в сервисе имеется очень большое количество объектов. Значение по умолчанию - 3000. Если ваших данных больше, можно задать большее число, чтобы видеть больше объектов. Если ваш сервис поддерживает разбиение на страницы, можно настроить параметр PAGESIZE для более эффективной загрузки данных. |
OUTPUTFORMAT | Укажите формат, в котором запрашиваются объекты. WFS-сервисы могут поддерживать множество типов выходных форматов, но по умолчанию используется формат GML. Используйте эту опцию только, если сервис поддерживает указанный выходной формат. Можно проверить, какие выходные форматы поддерживает сервис в ответе на запрос GetCapabilities.
Свойства SWAPXY и SWAPXYFILTER не применяются, когда используется выходной формат GeoJSON. |
PAGESIZE | Укажите размер страницы, который будет использоваться при выполнении запроса GetFeature для загрузки данных в карту. По умолчанию, если сервис поддерживает разбиение на страницы, будет использовано значение размера страницы, равное 200. Сервис, не поддерживающий разбиение на страницы, может медленно работать при выполнении запроса большого числа объектов. Используйте это ключевое слово, чтобы запросить конкретное число объектов, которые должны быть возвращены на странице. Например, PAGESIZE равно 100. Это ключевое слово применимо только для сервисов WFS 2.0, которые поддерживают параметры startIndex и count. Ключевое слово неприменимо при использовании режима подключения по запросу. |
STRINGLENGTH | Задает длину текстовый полей в слое WFS. Когда слой открыт в карте, длина всех текстовых полей обрезается до 255 символов по умолчанию. |
SWAPXY | Переставляет координаты x,y для отображения слоя.
|
SWAPXYFILTER | Меняет местами координаты x,y для запросов пространственного фильтра, отправляемых на сервер.
|
Примечание:
За исключением ключевых слов BBOX, STRINGLENGTH, OUTPUTFORMAT и PAGESIZE, все ключевые слова имеют соответствующие настройки для слоя в свойствах слоя WFS. Доступ к свойствам слоя WFS можно получить, щелкнув слой правой кнопкой мыши на панели Содержание и выбрав Свойства.
Дополнительно к перечисленным ключевым словам, которые могут использоваться для указания свойства подключения к WFS серверу, существуют другие зарезервированные ключевые слова, которые использовать нельзя, поскольку они имеют особенное значение для сервисов WFS или для ArcGIS. Эти ключевые слова включают следующие: NAMESPACE, TYPENAME, VERSION, SERVICE, CRSNAME, REQUEST, USER, URL, PASSWORD, MODE, ANONYMOUS, HTTPTIMEOUT, CAPABILITIES_PARAMETERS, и CONNECTIONPATH.
Использование инструмента WFS в класс объектов
Инструмент геообработки WFS в класс объектов можно использовать для загрузки данных из сервиса WFS в базу геоданных. Инструмент позволяет создавать сценарии загрузки данных WFS и поддерживает комплексные сервисы WFS.
Для применения инструмента для загрузки данных из комплексного сервиса WFS выполните следующие действия:
- Откройте инструмент геообработки WFS в класс объектов.
Инструмент можно открыть, перейдя к нему на панели Геообработки в наборе инструментов Конвертация и группе инструментов Из WFS, или можно найти инструмент по имени, набрав его в строке поиска.
Откроется диалоговое окно инструмента WFS в класс объектов.
- Если сервис WFS является комплексным, включите опцию Комплексный сервис WFS.
- Скопируйте или введите URL-адрес вашего сервиса WFS в параметр WFS Server и щелкните вне текстового окна параметра.
http://gisserver.example.com/geoserver/ows?
Это заполнит ниспадающее меню параметра Выбрать тип объекта для извлечения списком доступных слоев для загрузки.
- Выберите слой из ниспадающего меню.
- Укажите местоположение для загрузки при помощи параметра Выходное местоположение.
Если Комплексный сервис WFS отмечено, выходными данными будет файловая база геоданных, поэтому местоположением должна быть папка.
Если Комплексный сервис WFS не отмечено, выходными данными будет класс объектов, поэтому местоположением должна быть база геоданных или набор классов объектов в базе геоданных.
- Предоставьте имя выходного класса объектов или базы геоданных в параметре Имя.
- Дополнительно выберите ввод значения для параметра Макс. число объектов, чтобы ограничить количество возвращаемых объектов.
- Дополнительно, при включенной опции Комплексный сервис WFS, предоставьте метаданные сервиса, включив параметр Предоставить метаданные, которые создаст и заполнит таблицы метаданных в выходной базе геоданных.
Для автоматизации этого процесса в скрипте Python найдите примеры кода в документации инструмента.