ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA STAVEBNÍ OBOR GEODÉZIE A KARTOGRAFIE KATEDRA MAPOVÁNÍ A KARTOGRAFIE
Publikování map na webu - WMS semestrální práce
Ondřej Dohnal Martina Černohorská editor: Filip Dvořáček editor: Michal Hodek
V Praze dne 23. 4. 2012
Kartografická polygrafie a reprografie
Úvod Téma webových mapových služeb je v současnosti velice aktuální. Stále více organizací poskytuje nejrůznější mapové produkty a služby na svých serverech. Tato semestrální práce si klade za cíl poskytnout čtenáři alespoň základní informace o dané problematice a dále předložit přehled možností, jak k webovým mapovým službám přistupovat a využívat všechny jejich výhody. Závěrem bude uveden směr, kam se webové mapové služby ubírají a co z toho pro běžného uživatele plyne.
1
Web Map Service
V českém jazyce webová mapová služba, v anglickém jazyce Web Map Service, zkráceně WMS.
1.1
Historie WMS
Na historii webových mapových služeb můžeme pohlížet z několika různých hledisek. Nejdříve se musí upřesnit, co se již dá považovat za webovou mapovou službu a co ještě ne. Abychom uvedli na pravou míru výraz webové mapové služby, je nutné dodat, že se nejedná pouze o digitální prezentaci map, ale že v tomto systému jsou začleněny i prvky geografických informačních systémů (GIS). Za předchůdce webových mapových služeb lze pokládat desktopové aplikace, které běžely pouze na lokálním počítači. Další krok, který svět přiblížil k webovým mapovým službám, jak je chápeme dnes, bylo vytvoření aplikací využívající data uložená na lokálním serveru. V tomto okamžiku už bylo blízko k nahrazení lokálního serveru serverem, který byl připojený k celosvětové informační sítí internet. Data se tak mohla dostat k velkému počtu uživatelů připojených k internetu. V současnosti již využíváme tzv. webové aplikace k prohlížení dat poskytovaných webovými mapovými servery. Jedná se o programy, které běží na vzdálených počítačích a jen jejich malá část se stahuje do lokálního počítače uživatele. To s sebou samozřejmě nese velkou řadu výhod. Především to, že uživatel není nucen instalovat do lokálního počítače složité programy, které zabírají velké množství prostoru na místním disku. To stejné platí pro zpracovávaná data. Nevýhodou však zůstává rychlost zpracování dat, která je přímo úměrná kvalitě připojení do sítě internet. Webové aplikace jsou skutečným začátkem webových mapových služeb. Příkladem webových aplikací může být prohlížení map. Na tomto příkladu můžeme poznat, že se jedná o komunikaci uživatele se vzdáleným počítačem či serverem. Složitější variantou jsou webové služby, kdy komunikují mezi sebou dva servery. Například si vzájemně předávají informace.
1.2
Princip WMS
Jak již bylo řečeno, hlavní síla WMS spočívá v získávání informací ze vzdálených serverů. Komunikace mezi servery, případně mezi serverem a uživatelem, se zajišťuje pomocí XML jazyka. Jedná se o značkovací jazyk vyvinutý z obecného značkovacího jazyka SGML. Původní jazyk byl bohužel až příliš obecný a tím extrémně složitý. Proto na půdě W3C
1
konsorcia vznikla modifikovaná podoba SGML. Touto modifikovanou podobou je jazyk eXtensible Markup Language, zkráceně XML. Obrovská výhoda této mutace původního SGML jazyka spočívá v jeho rozšiřitelnosti. V praxi to znamená, že si autor může rozšířit kód o svoje vlastní tagy, když dodrží jistá pravidla. Tímto způsobem je možné vytvořit nekonečně mnoho vlastních příkazů. Konsorcium W3C formát XML stále zdokonaluje a posouvá jeho praktické využití. Jazyk má relativně jednoduchá syntaktická pravidla, která však vyžadují jejich striktní dodržování. Toto je jeden z hlavních rozdílů oproti příbuznému značkovacímu jazyku HTML, u kterého drobné nepřesnosti nemají vliv na zobrazovaný výsledek. WMS jsou standardizovány organizací OGC (Open Geospatial Consorcium), která se stará i o vývoj. Standard se řídí normou ISO 19128 (od 2005). Nejnovější verzí je 1.3.0 (2004), nejrozšířenější je však stále verze 1.1.0 (2002). Jazyk je postaven tak, aby pomocí něj bylo možné pokládat serveru či aplikaci nějaký dotaz. Naopak dotazovaná jednotka musí být schopna na základě položeného dotazu vrátit zcela jasnou odpověď, například výřez mapy. Mezi základní dotazy patří: ∙ GetCapabilities – vrátí jako odpověď soubor ve formátu XML, obsahující veškeré informace o poskytované WMS službě ∙ GetMap – ve zvoleném druhu rastrového formátu vrátí mapovou kresbu ∙ GetFeatureInfo – vrátí atributy prvku mapy na souřadnicích zadaných uživatelem Data se distribuují buď ve vektorových nebo rastrových formátech. Rastrová data mají zpravidla nižší přesnost než vektorová. Na druhou stranu objem rastrových dat na disku je daleko menší než u vektorových. Existují však i webové servery poskytující vektorová data. Potom mluvíme o tzv. WFS (Web Feature Service). WFS servery nejsou příliš rozšířené, protože kladou velké nároky na rychlost připojení k internetu. Dalším důvodem je ekonomický aspekt, jelikož WMS jsou zpravidla nabízeny zdarma také proto, že neposkytují tak kvalitní rastrová data, jako kdyby byla poskytována ve vektorové formě. Vektorová data bývají častěji zpoplatněna. WCS (Web Coverage Service) přináší výhodu práce s daty, které se v čase mění, a umožňuje tak provádět složitější analýzy povrchů s ohledem na čtvrtý rozměr. WPS (Web Processing Service) umožňuje uživateli provádět nad daty jednoduché i složité výpočetní analýzy, které provádí centrální server. Vývoj služeb WCS a WPS není ještě zcela ukončen a k jejich širšímu využití zatím nedošlo.
1.3
Mapfile versus XML
WMS služby běží pomocí mapových serverů, a ačkoliv bylo řečeno, že WMS služby pracují na základě XML jazyka, není to tak úplně pravda. Korektním zobrazením dat se zabývá konfigurační soubor, tzv. mapfile, který říká mapovému serveru, jak má s daty nakládat. Mapfile ve své podstatě sice z jazyka XML vychází, ale ztrácí jeho univerzalitu a lze jej využít pouze pro přenos dat z mapového serveru k uživateli. Mapfile udává pro jaké kartografické zobrazení je vrstva vytvořena, v jakém formátu jsou data uložena a v jakém jsou poskytována. V tomto souboru je také definována struktura datových vrstev. V praxi to znamená, že je zde uveden název vrstev a jejich stromová struktura. Většina příkazů je párových, to znamená, že jsou uvozeny názvem příkazu a ukončeny příkazem END. Všechny příkazy musí být umístěny na každou řádku a jejich funkčnost nezávisí na velikosti písma (END a end má stejný význam). 2
Mezi základní příkazy jazyka mapfile patří: ∙ MAP – uvozuje celý projekt, může být vytvořen pro jednotlivé kartografické projekce ∙ LAYER – definuje novou vrstvu včetně kartografické projekce a cesty k datům dané vrstvy, dále lze nastavit minimální a maximální měřítko zobrazení ∙ EXTENT – vymezuje území v souřadnicích dané projekce, ve kterém budou všechna mapová data uložena (nejedná se již o párovou značku) Po správném nastavení již mapové servery poskytují uložené rastrové, případně vektorové soubory. K rastrovým souborům je ještě nutné uložit informaci, která definuje polohu a orientaci rastrového souboru.
1.4
Metody přístupu k WMS
Nyní když víme jak WMS fungují, tak se podíváme na to, jak služeb využívat. Výhoda webových mapových služeb je jejich relativně snadná dostupnost. Přistupovat k WMS produktům lze několika způsoby pomocí následujících nástrojů: ∙ internetové prohlížeče (např. Internet Explorer, Mozilla Firefox) ∙ webové prohlížečky – běží v okně internetového prohlížeče, tzv. „tenký“ klient ∙ komerční software – prohlížeče integrované v softwarech primárně určených k jinému účelu, tzv. „tlustý“ klient (např. ArcGIS, GeoMedia, Microstation, Kokeš, ...) V následující části představíme stručné návody na prohlížení WMS pomocí všech tří výše zmíněných způsobů. Nutno dodat, že vždy se jedná o principiálně stejný postup. U každého je vždy nutné znát adresu daného WMS serveru. Postupy se řídí standardem OGC. 1.4.1
Internetové prohlížeče
Pro přístup k WMS využáváme přímo adresní řádky v libovolném internetovém prohlížeči. Postupovat při zobrazování mapy můžeme v těchto krocích: ∙ Zadat adresu WMS serveru a doplnit příkaz REQUEST=GetCapabilities, po zadání URL adresy se nabídne ke stažení XML soubor obsahující možné parametry mapy. Příkaz GetCapabilities musí být vždy ještě doplněn o parametr SERVICE=WMS. ∙ Pomocí textového prohlížeče otevřít stažený XML soubor a vybrat doplňují parametry. ∙ Následuje URL příkaz doplněný o dotaz REQUEST=GetMap a doplňující parametry. Po potvrzení URL se nabídne rastrový soubor ke stažení, nebo se přímo zobrazí v internetovém prohlížeči. Tento rastrový soubor již obsahuje mapovou kresbu se zadanými parametry. ∙ Příkaz REQUEST=GetFeatureInfo je další rozšiřující možností, jak získat informace navíc. Příkaz s upřesňujícími parametry vrátí informace o daném bodu mapy.
3
Za příklad použijeme WMS provozovanou ČÚZK, po zadání adresy http://wms.cuzk. cz/wms.asp?service=wms&request=GetCapabilities obdržíme XML soubor jehož náhled je zobrazený na obrázku č. 1. V něm získáme základní metadata o poskytovaných vrstvách.
Obrázek 1: GetCapabilities Z těchto informací pak můžeme sestavit v adresním řádku například následující požadavek. Jako odpověď na něj dostaneme soubor s výřezem požadované mapy. ∙ http://wms.cuzk.cz/wms.asp?service=wms – adresa serveru ∙ &version=1.1.1&request=GetMap – verze WMS a příkaz ∙ &SRS=EPSG:102067 – Spatial Reference System = kartografické zobrazení ∙ &bbox=-745025,-1041025,-744625,-1040625 – souřadnicové ohraničení výřezu ∙ &width=400&height=400&format=image/png – rozměry a formát obrázku ∙ &layers=KN – vrstva
4
1.4.2
Webové prohlížečky
Jsou aplikace, které využívají okno internetového prohlížeče. Pro správný běh aplikace je obvykle nutné mít nainstalovaný programovací jazyk Java a příslušný software, který umí tento jazyk kódovat. Zmíněná prohlížečka umožňuje přidávání několika vrstev a podporuje tak jejich kaskádování. Na obrázku č. 2 je vidět, že webová prohlížečka vlastně nahrazuje ručně psané příkazy pomocí ikon, které daný dotaz na server odešlou automaticky. Ikona s i nahrazuje příkaz GetFeatureInfo. Dále jsou zde funkce pro manipulaci s obrazem jako vytváření výřezů nebo naopak zobrazení celkového náhledu. Dále je zde kromě mapového okna ještě okno s přehledkou polohy výřezu. Pod touto přehledkou se zobrazují připojené mapové vrstvy. Vykreslování vrstev se děje ve stejném pořadí, v jakém jsou vrstvy zobrazeny. Pomocí check boxu se dá měnit viditelnost vrstvy, šipka posunuje vrstvou směrem vzhůru v pořadí. Křížkem lze vrstvu odpojit. Přidávání vrstev se provádí přes ikonu se znakem plus. Otevře se nové okno, v kterém si můžeme zvolit z několika přednastavených WMS serverů nebo můžeme ručně přidat jiný server, který v seznamu nefiguruje. Po zvolení serveru se otevře další okno, které představuje výsledek příkazu GetCapabilities.
Obrázek 2: Ukázka webové prohlížečky
1.4.3
Prohlížení WMS v aplikacích původně určené k jinému účelu
Pro prohlížení WMS lze využít například programy ArcGIS, GeoMedia, Microstation, Kokeš a mnoho jiných. Ve zmíněných programech je připravena funkce na připojení dat WMS, do níž stačí pouze zadat webovou adresu serverů, který poskytne data. Po spojení se serverem, nabídne uživateli dostupné vrstvy k načtení. V tomto ohledu se jedná tedy o nejlepší variantu přístupu k datům, na druhou stranu se však nejedná, jako v ostatních případech, o software poskytovaný zdarma. Tyto programy stojí řádově desítky až stovky tisíc korun. Uživatel má však při práci s WMS k dispozici rozhraní a všechny funkce jemu známé aplikace (obrázek č. 3). 5
Obrázek 3: ArcGIS
1.5
Výhody a nevýhody WMS
Pro běžného uživatele jsou WMS výhodné, protože ve většině případů poskytují dostatečně přesná data a často jsou poskytovány zdarma. K využívání WMS postačuje webový prohlížeč, ale pro složitější práce a analýzy nad daty je však výhodnější použít k operacím nějaký komerční software. Uživatel si vybere komunikační prostředí, které mu vyhovuje. Mapová data nejsou uložena na lokálním disku uživatele a nezabírají tak úložný prostor. Stahována jsou jen ta data, na která se uživatel server dotazuje. A to dokonce v takové podobě, o které si zažádá. Je totiž možné měnit zobrazované atributy mapy. Údržba i aktualizace dat je velice jednoduchá, neboť všechna data jsou uložena centrálně na serveru. Výhodou je ustanovení konsorcia OGC (The Open Geospacial Consortium), které zajišťuje jednotnost standardů pro WMS. To umožňuje rozvoj open-source programů a dává jasná pravidla pro všechny programátory a uživatele. Nevýhody WMS nejsou na první pohled patrné, ale určitě se také najít dají. V první řadě je tu dostupnost. Ta je podmíněna možností připojení k síti internet, její funkčností a spolehlivostí a v neposlední řadě také funkčností mapového serveru. V případě využití WFS (Web Feature Service), která přenáší vektorová data, je nutné použít vysokokapacitní připojení k internetu, neboť služba je náročná na objem přenesených dat. Nevýhodou zůstávají data, která jsou při stažení zpoplatněna. Zato však často mají vyšší kvalitu než data, která jsou zdarma. Problém také může být s autorskými právy k mapám. Zveřejnění každé mapy přes internet je podmíněno souhlasem osoby, která k dílu vlastní autorská práva. Naopak osoby zachycené na leteckých snímcích s vysokým rozlišením mohou mít stížnosti na zásah do svého soukromí. Poslední nevýhodou se jeví fakt, že zobrazení map je realizováno pomocí obrazovek (nejčastěji LCD panelů), které mají menší velikost a nižší rozlišení než by někdy bylo potřeba. To lze řešit vytvořením detailu mapy, ale jen za cenu ztráty velikosti zobrazované oblasti. Toto je jeden z hlavních důvodů proč webové mapy ty papírové ještě po nějakou dobu plně nenahradí.
6
1.6
Příklady WMS serverů
V roce 2008 rozjel svoji první veřejnou WMS i Český úřad zeměměřický a katastrální. V současně době poskytuje tento server rastrové katastrální mapy, a to i v místech, kde je již mapa v digitální podobě. Jako další vrstvy lze připojit popisná čísla budov nebo parcelní čísla s jejich definičními body. Celá republika zatím bohužel není definičními body pokryta, proto se ještě nedají všechny parcely vyhledat pomocí příkazu. Dále jsou takto dostupná například data ze ZABAGED, Státní mapa 1:5000, Základní mapy ČR, Ortofoto, Geonames, Klady mapových listů a další. Využívat tohoto WMS serveru lze opět pomocí uvedených postupů. Kompletní seznam poskytovaných WMS nalezneme na adrese http://geoportal.cuzk.cz. Pro širokou veřejnost by pak měla sloužit integrovaná WMS prohlížečka pro tento server, http://geoportal.cuzk.cz/geoprohlizec (obrázek č. 4) kde lze připojit všechny poskytované vrstvy i z jiných WMS. Další nesporná výhoda této WMS prohlížečky je, že při označení definičního bodu parcely vypíše zkrácený výpis z listu vlastnictví, který je běžně dostupný na stránkách http://nahlizenidokn.cuzk.cz. Naopak z těchto stránek lze zobrazit parcelu, ke které je právě zobrazen zkrácený výpis z listu vlastnictví. Tato operace se provede korektně pouze v případě, že parcela má zavedený definiční bod. V opačném případě se zobrazí celé katastrální území. Velké množství tématických vrstev pak nabízí Národní geoportál INSPIRE http://geoportal.gov.cz.
Obrázek 4: Geoprohlížeč ČÚZK
7
URL, kde lze nalézt další vybrané WMS servery pro ČR, udává následující výčet: ∙ http://geoportal.cuzk.cz ∙ http://geoportal.gov.cz ∙ http://www.geofond.cz/mapsphere/geofond ∙ http://geoportal2.uhul.cz/index.php ∙ http://www.geology.cz/extranet/geodata/mapserver/wms ∙ http://mapy.nature.cz Některé seznamy WMS serverů pro ČR: ∙ http://geoportal.gov.cz/web/guest/other-portals ∙ http://www.gepro.cz/geodezie-a-projektovani/tipy-a-triky/wms ∙ http://www.mapshake.cz
Závěr WMS se stále vyvíjejí a většina z nyní volně dostupných služeb se snaží zdokonalit sdílená data. Pro běžného uživatele to znamená, že zdarma dostává stále kvalitnější data a jejich objem se zvětšuje. Podstatné zůstává, že klient nepotřebuje specializovaný software, který by mu umožňoval prohlížení WMS obrazových dat. V současnosti stále postačují standardní internetové prohlížeče, které jsou základní výbavou každého dnes používaného operačního systému. Pouze při využívání některých WMS přes webové prohlížečky je nutné mít nainstalován programovací jazyk Java, který je však zatím také zdarma dostupný. Závěrem lze říci, že WMS patří a do budoucna pravděpodobně zůstane nejvyužívanějším nástrojem k publikování map na internetu.
Literatura [1] TALICH, Milan: WWW stránky, [online], 2004 [cit. 2008-05-25]. URL: http://www.inforum.cz/pdf/2004/Talich_Milan.pdf [2] FSV-ČVUT: WWW stránky, [online], 2008 [cit. 2010-03-21]. URL: http://gama.fsv.cvut.cz/wiki/index.php/153GIS1_-_10._cvičení [3] JIRÁNEK, Jan: WWW stránky, [online], 2010 [cit. 2010-03-21]. URL: http://geo3.fsv.cvut.cz/wms [4] FSV-ČVUT: WWW stránky, [online], 2010 [cit. 2010-03-21]. URL: http://geo3.fsv.cvut.cz/kurzy/file.php/3/uvod/prednasky.html
8