Dominik Abrahám: Tvorba webovej aplikácie s podporou mapovej služby WFS-T (referát), Študentská vedecká konferencia Prírodovedeckej fakulty Univerzity Komenského v Bratislave, 24.4.2013
Referát: Tvorba webovej aplikácie s podporou mapovej služby WFS-T
1. Tvorba webovej aplikácie s podporou mapovej služby WFS-T
Dominik Abrahám
Univerzita Komenského, Prírodovedecká fakulta, Katedra kartografie, geoinformatiky
a diaľkového prieskumu Zeme, Mlynská dolina, 842 15 Bratislava 4, Slovensko;
dominikabraham@gmail.com
Abstract
This article describes process of creating a web application which supports OGC standards for map
services WMS and WFS, including its transactional service (WFS-T). According to the client-server architecture,
this application presents client, while the server consists of implementation of several interfaces: database system,
map server and web server. All of the used interfaces are freeware.
Kľúčové slová: GIS; Web GIS; OGC; WMS; WFS; WFS-T; priestorová databáza; mapový server
Úvod a formulácia cieľa
Voľne šíriteľný softvér, ktorý je bez výraznejších licenčných obmedzení, sa v
súčasnosti stáva stále viac a viac konkurencieschopný voči proprietárnemu softvéru. Zároveň
ako sa zväčšuje vplyv internetu v spoločnosti, rastú tiež možnosti webového programovania,
ktoré prinášajú nové možnosti aj do sveta geografických informačných systémov. Webové
mapové aplikácie sú v súčasnosti veľmi populárnym prostriedkom získavania geografických
informácií. Zároveň však určité typy týchto aplikácií umožňujú geografické informácie aj
editovať. Tento príspevok zakladá práve na vyššie uvedených skutočnostiach.
Hlavným cieľom predloženej práce bolo vytvorenie webovej aplikácie, ktorá má
podporovať štandardy konzorcia OGC pre mapové služby WMS a WFS, pričom transakčnú
službu (WFS-T) má demonštrovať možnosť pridávať, odoberať a upravovať geometriu.
Vytvorenie webovej aplikácie s danou funkcionalitou predstavuje komplexný problém,
ktorého dosiahnutie bolo podmienené splnením určitých krokov. Z tohto dôvodu boli
vyčlenené nasledovné čiastkové ciele:
1. implementácia priestorovej databázy;
2. implementácia mapového servera, publikovanie priestorových údajov z
databázy;
3. implementácia webového servera;
4. tvorba webovej aplikácie s podporou mapových služieb WMS a WFS-T;
5. tvorba štýlov pre zobrazované mapové vrstvy.
2. Tvorba štýlov pre mapové vrstvy nepredstavuje nevyhnutný krok pre vznik webovej
aplikácie s požadovanou funkcionalitou. Bez vytvorenia štýlov by však výsledná mapa,
utvorená z takýchto vrstiev, nemala pre užívateľa dostatočnú výpovednú hodnotu.
Materiál a metódy
Webové mapové aplikácie zväčša využívajú architektúru klient-server, kde sa na
jednej strane nachádza klientsky softvér, ktorý odosiela požiadavky na server, a ten ich
následne spracúva a odpoveď zasiela naspäť klientovi. Pri webových mapových aplikáciách sa
však jedná špecifikáciu architektúry klient-server, kde webový server po spracovaní klientskej
požiadavky zašle požiadavku ďalej na mapový server, ten získa dáta z databázového servera,
zašle ich naspäť webovému serveru a ten až potom odpovie klientskej aplikácii. Aplikácia
postavená na takejto architektúre je tiež označovaná pojmom Web GIS [1]
Obr. 1 Architektúra klient-server pre Web GIS [1]
Do úlohy webového serveru bol vybraný softvér Apache, ktorý je dlhodobo jednotkou
v tejto kategórii. Za mapový server bol zvolený softvér GeoServer, ktorý poskytuje
implementáciu nami požadovaných štandardov. Ponúka tiež tvorbu SLD dokumentov, ktoré
určujú štýly zobrazenia WMS vrstiev.. Potrebnú priestorovú databázu sme získali
implementáciou softvéru PostgreSQL a jeho knižnice PostGIS.
Samotná aplikácia je uložená v HTML dokumente. Zdrojový kód vytvorený v jazyku
JavaScript je interpretovaný vo webovom prehliadači a komunikácia s mapovým serverom
prebieha vďaka funkciám knižnice OpenLayers. Štýly pre užívateľské rozhranie a pre
zobrazované WFS vrstvy boli zapísané do CSS dokumentu.
Vstupné údaje v našom prípade predstavujú vybrané mapové vrstvy, pochádzajúce
z projektu OpenStreetMap. Záujmové územie bolo vyhraničené hranicou bratislavského
katastra Podunajské Biskupice. Pre účely transakčnej služby sme použili po jednej vrstve pre
každý typ geometrie:
bodová vrstva - body záujmu
líniová vrstva - cestná sieť)
3. polygónová vrstva - zastavané plochy
Pre dotvorenie celkového obrazu výslednej mapy boli použité aj nasledovné vrstvy: vodstvo,
zalesnené územie, poľnohospodárska pôda, mestská zeleň, športoviská. Farby, ktorými sú
znázornené vyššie uvedené vrstvy, boli určené podľa predlohy z OpenStreetMap.
Obr. 2 Výsledná aplikácia: základné zobrazenie s roztvoreným zoznamom vrstiev
Výsledky a diskusia
Po ukončení vývoja aplikácie, bola celá architektúra presunutá na školský server, kde
je verejne dostupná na adrese http://158.195.43.203/transakcny_klient. Následne prebehlo
testovanie v aktuálne najpoužívanejších webových prehliadačoch: Google Chrome, Mozilla
Firefox, Opera, Safari, Internet Explorer. Poskytovaná transakčná služba fungovala vo
všetkých prípadoch rovnako. Po vizuálnej stránke sa aplikácia v jednotlivých prehliadačoch
líšila buď len nepatrne, alebo vôbec.
Vrstvám WMS, a tým pádom aj ich štýlom SLD, bola venovaná pozornosť len do tej
miery, do akej bolo nevyhnutné vzhľadom na fungovanie aplikácie. Mapová aplikácia
vytvorená s použitím knižnice OpenLayers totiž vyžaduje minimálne jednu WMS vrstvu,
ktorú používa ako podkladovú vrstvu. Ako vidíme na obrázku 2, ostatné vrstvy môžeme
vidieť v roztváracom zozname ako „overlays“. Na obrázku 3 vidíme, ako prebieha úprava
vrstvy zastavanej plochy. Na žlto zvýraznený je aktivovaný nástroj na úpravu polygónovej
geometrie. Nasledovný obrázok 4 ukazuje hlásenie o úspešnom prevedení transakcie, ktoré je
4. odozvou po kliknutí na tlačidlo pre uloženie zmien.
Obr. 3 Výsledná aplikácia: zapnutý nástroj na editáciu vrstvy zastavanej plochy
Obr. 4 Výsledná aplikácia: hlásenie o úspešnom uložení zmien [2]
Záver
Kostru tejto práce tvorila interoperabilita množstva nástrojov. Môžeme teda
konštatovať, že bez štandardov konzorcia OGC by realizácia bola otázna. Zároveň sa
5. preukázalo, že v súčasnosti sú už voľne šíriteľné softvéry, využívané na vybudovanie aplikácií
typu Web GIS, na veľmi dobrej úrovni. Webové mapové aplikácie majú v spoločnosti pestrú
škálu využitia. Navyše funkcionalita editácie geometrie, pridáva mapovým aplikáciám
možnosť jednoducho aktualizovať informácie. Ak napríklad línia predstavuje cestnú
komunikáciu, na ktorej prebehla nejaká polohová zmena, užívateľ ju prostredníctvom takejto
aplikácie môže jednoducho zaznamenať a tým pádom udržovať databázu cestných sietí stále
aktuálnu.
Poďakovanie
Za cenné rady a pripomienky by som chcel poďakovať Mgr. Gabrielovi Petříčkovi,
ktorý bol školiteľom mojej bakalárskej práce. Vďaka patrí tiež Doc. RNDr. Eve Mičietovej
PhD., za usmerňovanie počas celého štúdia na Katedre kartografie, geoinformatiky a
diaľkového prieskumu Zeme.
Zoznam použitej literatúry
[1] Peng Z. R., Tsou M. H. (2003) Internet GIS: distributed geographic information services
for the internet and wireless network. John Wiley and Sons, New Yersey, USA
[2] Abrahám D. (2012) Tvorba webovej aplikácie s podporou mapovej služby WFS-T.
(Bakalárska práca) Prírodovedecká fakulta, Univerzita Komenského, Bratislava,
Slovensko, p. 62