Usługa Web Processing Service (WPS) to usługa pozwalająca np. na przetwarzanie danych użytkownika na serwerze za pomocą procesów zdefiniowanych przez usługę. Ten dość skomplikowany opis stanie się bardziej zrozumiały jeśli użyjemy przykładu.
Potrzebna będzie wtyczka QGIS – WPS Client oraz wczytana do Qgis warstwa budynki (do pobrania tutaj)
1. Znajdujemy wtyczkę WPS Client – instalujemy ją
2. Uruchamiamy klienta WPS za pomocą poniższego polecenia:
2. Wywołujemy serwer 52 North i usługę buforowania jak na rysunku poniżej:
3. Używamy warstwy budynki i bufora 1 m jak na rysunku poniżej:
4. Efektem będzie warstwa buforowanych budynków dodana do Qgis – jest to plik GML (wystarczy najechać myszką na nazwę warstwy żeby zobaczyć ścieżkę do pliku)
Co się właściwie stało ?
Łącząc się z serwerem wps pobraliśmy za pomocą klienta listę możliwych do wykonania operacji. Po wybraniu operacji, której chcemy użyć, z serwera pobierane są parametry operacji takie jak wymagane warstwy i zmienne, które po przetworzeniu wyświetlane są w oknie klienta. Po uzupełnieniu parametrów nasze dane włącznie z warstwą budynki przekazywane są do serwera gdzie następuje przetworzenie według parametrów które określiliśmy. Następnie serwer przetwarza otrzymane dane i zwraca odpowiedź, która w tym przypadku jest nową warstwą zawierającą zbuforowane dane w postaci GML.
Czemu piszę o WPS ? Chociażby dlatego, że również GUGiK posiada usługi WPS – wystarczy w pole klienta wpisać adres jak poniżej żeby mieć dostęp do usługi walidacji metadanych.
Po uruchomieniu usługi otrzymujemy parametry pozwalające walidować metadane za pomocą usługi WPS.
Supported profiles zgłasza błąd walidacji odpowiedzi, lecz nie badałem na ile jest to problem serwera a na ile klienta.
Jeśli posiadacie Arcgis, OpenLayers lub Udig warto zobaczyć klienta WPS z 52north:
http://52north.org/downloads/geoprocessing/clients
Klienta WPS posiada również darmowy Openjump i kilka innych programów. Istnieją również serwisy WPS oferujące niekiedy dość ciekawe funkcje głównie za granicami kraju. Warto poszukać ich w google. 😉