52°North - exploring horizons - logo

Начало работы с 52°North SOS

52°North SOS является веб-сервисом, который позволяет собирать пространственные данные с сенсоров и давать к ним доступ (включая метаданные и данные наблюдений).

Данное введение описывает: * Как делать запросы 52°North SOS Capabilities для определения того, какие

запросы поддерживаются
  • Как запрашивать подробности о наблюдениях из SOS
  • Как использовать простой инструмент для визуализации, поставляемый вместе с SOS, для исследований доступных данных
  • Как использовать конечный REST API для клиентов разработчиков.
  1. Чтобы запустить 52°North SOS, выберите Geospatial ‣ Web Services ‣ 52North ‣ Start 52North SOS или перейдите по ссылке.
  2. Связанный браузер откроет страницу приглашения тестового клиентского приложения 52°North SOS (см. Рис. 1). Пожалуйста выберите версию спецификации, которую вы хотели бы использовать, например, 1.0.0:
52°North SOS client welcome page

Рис. 1: Стартовой страницы тестового клиентского приложения 52°North SOS

  1. Тестовый клиент может быть использован для отправки(запросов, (см. Рис._2)) к сервису, используя простую форму. В выпадающем списке можно выбрать один из предопределенных запросов, адаптированных к выбранной на предыдущем шаге версии сервиса.
Тестовый клиент 52°North SOS с запросом GetCapabilities

Рис. 2: Тестовый клиент 52°North SOS с запросом GetCapabilities.

  1. Чтобы получить для каждой временной серии доступные данные наблюдений за временной интервал с 2016-07-01T00:30:00.000+00:00 по 2016-07-31T23:00:00.000+00:00, вставьте следующий запрос после выбора “SOS” –> version “2.0.0” –> binding “SOAP” –> operation “GetObservation” в test client в поле запроса:
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
    xmlns:env="http://www.w3.org/2003/05/soap-envelope"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.w3.org/2003/05/soap-envelope http://www.w3.org/2003/05/soap-envelope/soap-envelope.xsd">
    <env:Body>
        <sos:GetObservation service="SOS" version="2.0.0"
            xmlns:sos="http://www.opengis.net/sos/2.0"
            xmlns:fes="http://www.opengis.net/fes/2.0"
            xmlns:gml="http://www.opengis.net/gml/3.2"
            xmlns:swe="http://www.opengis.net/swe/2.0"
            xmlns:xlink="http://www.w3.org/1999/xlink"
            xmlns:swes="http://www.opengis.net/swes/2.0"
            xsi:schemaLocation="http://www.opengis.net/sos/2.0 http://schemas.opengis.net/sos/2.0/sos.xsd">
            <sos:temporalFilter>
                <fes:During>
                    <fes:ValueReference>phenomenonTime</fes:ValueReference>
                    <gml:TimePeriod gml:id="tp_1">
                        <gml:beginPosition>2016-07-01T00:30:00.000+00:00</gml:beginPosition>
                        <gml:endPosition>2016-07-01T23:00:00.000+00:00</gml:endPosition>
                    </gml:TimePeriod>
                </fes:During>
            </sos:temporalFilter>
        </sos:GetObservation>
    </env:Body>
</env:Envelope>

Листинг 1: Запрос по наблюдениям.

Что ещё можно попробовать

  • Примеры некоторых других запросов из выпадающего списка
  • Изменять запросы для получения различной информации
  • SOS administrator, используя имя пользователя “user” и пароль “user”.
  • View Client (см. Рис. 3).
52°North SOS — JavaScript-клиент для временных серий данных.

Рис. 3: 52°North SOS — JavaScript-клиент для временных серий данных.

  • Попробуйте REST API (see Listing 2):
[
    {
        id: "services",
        label: "Service Provider",
        description: "A service provider offers timeseries data."
    },
    {
        id: "stations",
        label: "Station",
        description: "A station is the place where measurement takes place."
    },
    {
        id: "timeseries",
        label: "Timeseries",
        description: "Represents a sequence of data values measured over time."
    },
    {
        id: "categories",
        label: "Category",
        description: "A category group available timeseries."
    },
    {
        id: "offerings",
        label: "Offering",
        description: "An organizing unit to filter resources."
    },
    {
        id: "features",
        label: "Feature",
        description: "An organizing unit to filter resources."
    },
    {
        id: "procedures",
        label: "Procedure",
        description: "An organizing unit to filter resources."
    },
    {
        id: "phenomena",
        label: "Phenomenon",
        description: "An organizing unit to filter resources."
    }
]

Листинг 2: Вывод конечной точки REST API.

Дополнительная информация

Подробную информацию о сервисе 52°North SOS и/или сообществе 52°North Sensor Web можно найти по следующим ссылкам:

Если сервис SOS недоступен, проверьте, запущен ли контейнер сервлетов Tomcat, используя следующие команды:

user@osgeolive:~$ sudo service tomcat7 status
* Tomcat servlet engine is running with pid 1234          <-- Tomcat is running
[...]
* Tomcat servlet engine is not running.                   <-- Tomcat not runing, so please start:
user@osgeolive:~$ sudo service tomcat7 start
* Starting Tomcat servlet engine tomcat7           [ OK ] <-- Tomcat is running, now

Листинг 3: Tomcat Status and Start (password for sudo: user).