SVG v kartografii

From Geoinformatics FCE CTU

< Papers

Otakar Čerba
Department of Mathematics, Geomatics section
Faculty of Applied sciences, University of West Bohemia
E-mail: <ota.cerba@seznam.cz>

Klíčová slova: SVG, XML, digitální mapa, internet, mobilní zařízení

Contents

Abstakt

V červenci 2005 se ve španělském městě A Coruña konala dvacátá druhá Mezinárodní kartografická konference. Ve svém příspěvku definoval předseda Komise pro mapy a internet Mezinárodní kartografické asociace (Commission on Maps and the Internet, International Cartographic Association / Association Cartographique Internationale) Prof. Michael P. Peterson čtyři základní směry, kterými by se měl ubírat výzkum v oblasti digitální kartografie v prostředí internetu:

  • Internet Map Use,
  • Internet Map Delivery,
  • Internet Multimedia Mapping,
  • Internet Mobile Mapping.

Cílem tohoto příspěvku je ukázat SVG (Scalable Vector Graphics) jako pravoplatného člena rodiny technologií pro tvorbu digitálních map, konkrétně pro tzv. Internet Mapping. Jednotlivé části se věnují představení SVG, možnostem využívání SVG v současné kartografii s přihlédnutím k bodům z výše uvedeného seznamu, přednostem a nedostatkům současné verze SVG a také různého aplikakčního software. Článek také obsahuje výčet možností tvorby map ve formátu SVG, včetně jejich stručného zhodnocení.

Úvod

SVG představuje otevřený formát určený především pro popis a distribuci dvourozměrných vektorových dat v prostředí internetu. V oblasti digitální kartografie, především v internetové kartografii, se s SVG setkáváme stále častěji.

Standard SVG vytváří od roku 1998 World Wide Web Consortium (W3C). SVG 1.0 získalo status W3C Recommendation (doporučení organizace W3C), které se de facto rovná standardizaci, v září 2001. Od 14.1.2003 je k dispozici verze 1.1 (specifikace SVG 1.1), která je dnes všeobecně uznávaným standardem. Verze 1.1 se zaměřuje především na aplikování SVG na méně výkonná mobilní zařízení. Proto došlo k rozdělení (modularizaci) celé specifikace SVG a vznikly dva nové profily SVG Tiny (SVGT) a SVG Basic (SVGB), které jsou souhrně označovány jako SVG Mobile Profiles (Mobile SVG). SVGB se orientuje na zařízení typu PDA (Personal Data Assistant) nebo Smartphone. Z původní specifikace byly odstraněny některé filtry a použití ořezových cest. SVGT jako podmnožina SVGB je určeno především pro mobilní telefony. Z toho důvodu byla vypuštěna podpora CSS stylů, filtrů, skriptů, gradientů, vzorků a průhlednosti. Ve stádiu přípravy (W3C Working Draft) se nalézá verze 1.2 - Scalable Vector Graphics (SVG) Full 1.2 Specification.

SVG je schématem odvozeným ze standardu SGML/XML (Standard Generalized Markup Language / eXtensible Markup Language). Díky tomu může SVG komunikovat se všemi aplikacemi a technologiemi na stejné bázi. Kromě vlastního XML lze využít například GML (Geography Markup Language), XHTML (eXtensible HyperText Markup Language), MathML (Mathematical Markup Language), XForms, SMIL (Synchronized Multimedia Integration Language), XSLT (Extensible Stylesheet Language Transformations), XSL FO (Extensible Stylesheet Language Formatting Objects), DOM (Document Object Model) a mnohé další. Navíc pokud má uživatel zkušenosti s nějakou SGML/XML aplikací, pak základy práce s SVG na něj nekladou žádné zvláštní požadavky ani z hlediska času, ani z hlediska studijní náročnosti.

Ze SGML/XML přebírá SVG řadu výhod, pro které si získává ve světě informačních technologií řadu příznivců. Jedná se především o formu zápisu, snadné propojení s jinými aplikacemi, jednoduché přizpůsobení potřebám uživatele a jednoduchá pravidla pro užívání (podrobněji viz [Čer2006]). Soubor ve formátu SVG není binární (pro příznivce binárních formátů existuje komprimovaná verze SVGZ - používá se komprese gzip, tedy open-source varianta známého zip algoritmu), ale jde o běžný textový ASCII (American Standard Code for Information Interchange) soubor. Zápis v textové formě je snadno čitelný a také srozumitelný pro běžného člověka, nikoli jen pro IT specialistu. ASCII text je nezávislý na konkrétní platformě a technologii - se stejným SVG souborem mohou pracovat uživatelé různých operačních systémů i různých typů zařízení. Textový formát je univerzální, a proto nezastarává jako některé proprietární formáty. Důležitá je také možnost prohledávání dokumentů. Zápis SVG souboru umožňuje také vyhledávání textu uvnitř obrázků - například systém Google dokáže indexovat SVG elementy <text>.

Integrace SVG do vlastních aplikací je bezproblémová - SVG je otevřená technologie. Kterýkoli uživatel má možnost SVG využívat a také vytvářet si vlastní podmožiny SVG (obecně nové formáty založené na XML). Integraci do jiných aplikací, případně s jinými dokumenty podporuje fakt, že SGML/XML není jediný formát, ale jedná se velice širokou skupinu technologií, které lze mezi snadno propojit pomocí vazeb, většinou definovaných opět pomocí SGML/XML. Ke kladným reakcím uživatelů na SVG mapy přispěla také podpora znakového kódování Unicode, které obsahuje více než 38 000 znaků světových abeced. Pro tvůrce map tedy není problémem vytvářet texty, včetně mapových popisků v nejrůznějších exotických jazycích.

Výhodou formátů založených na standardu SGML/XML je možnost automatické kontroly syntaktické správnosti dokumentu pomocí specializovaných programů - validátorů. Kontrola je možná díky propojení s tzv. schémovými jazyky (RELAX NG, XML Schema, DTD, Schematron a další). Pomocí schémových jazyků (opět často založených na SGML/XML) uživatel může definovat řadu pravidel (povolené elementy a atributy, vazby mezi jednotlivými prvky a dokumentu, datové typy, omezení rozsahu přípustných hodnot, integritní omezení apod.), případně přidávat a upravovat pravidla již existujících schémat. Tato pravidla určují libovolnou podmnožinu jakéhokoli SGML/XML formátu pro vlastní použití.

SVG dokumenty lze snadno převádět mezi sebou a také do jiných formátů. Pro zápis transformačních pravidel slouží stylové jazyky. Vizualizační vlastnosti lze přiradit SVG dokumentům pomocí kaskádových stylů [Čer2005]. SVG dokument lze převést na SVG dokument s odlišnou strukturou (např. odstranění popisků, výběr konkrétního typu prvků apod.). Také je možná transformace na jiný SGML/XML - často se používá metoda generování map v SVG z GML (Geography Markup Language) dat (viz XSLT transformace). Je možná i transformace obrácená, kdy lze z mapy získat například souřadnice jednotlivých prvků a uložit je v libovolném SGML/XML formátu nebo v ASCII textu. Konečně je možné také upravit SVG do formátu, který bude vhodnější pro tisk (např. PDF). K těmto operacím se používá transformační jazyk nazývaný XSL (eXtensible Stylesheet Language). Podrobnější informace o SVG jsou k dispozici na stránkách W3C, kde se také nachází specifikace jednotlivých verzí a další materiály.

SVG & internetová kartografie

V červenci 2005 se ve španělském městě A Coruña konala dvacátá druhá Mezinárodní kartografická konference. Ve svém příspěvku definoval předseda Komise pro mapy a internet Mezinárodní kartografické asociace (Commission on Maps and the Internet, International Cartographic Association / Association Cartographique Internationale) Prof. Michael P. Peterson z University of Nebraska čtyři základní směry, kterými by se měl ubírat výzkum v oblasti digitální kartografie v prostředí internetu:

  1. Internet Map Use (používání internetových map),
  2. Internet Map Delivery (distribuce map na internetu),
  3. Internet Multimedia Mapping (propojení map na internetu a multimédií),
  4. Internet Mobile Mapping (intertové mapy na mobilních zařízeních).

Následující části se věnují aplikaci SVG s přihlédnutím k jednotlivým bodům z výše uvedeného seznamu.

Internet Map Use

Podle [Pet2005] je cílem výzkumu je šetření v oblasti nárůstu uživatelů internetu, nárůstu uživatelů map na internetu, metod používání map na internetu a přístupů ke zlepšení používání map na internetu.

Používání SVG mapy je poměrně jednoduché. Uživatel obvykle nepotřebuje žádný speciální software pro prohlížení map a pro práci s těmito mapami. V praxi se používají dva základní způsoby zobrazování SVG souborů - speciální prohlížeče (Batik) nebo klasické prohlížeče webových stránek (Mozilla Firefox, Opera, Internet Explorer, Konqueror, Safari, Amaya). Prohlížeče mohou SVG podporovat nativně (např. Mozilla Firefox, Konqueror, Amaya, Safari nebo Opera; přímou podporu SVG by měla nabízet i sedmá verze programu Internet Explorer) nebo pomocí pluginu, který je nutné do prohlížeče nainstalovat. Nejpoužívanější kombinací je propojení prohlížeče Microsoft Explorer s modulem Adobe SVG Viewer. Tento prohlížeč lze nainstalovat i do jiných prohlížečů (Mozilla Firefox, Opera) a existují i verze pro Mac OS X, Linux nebo Solaris. Adobe SVG Viewer představuje v současnosti nejpoužívanější a nejkvalitnější aplikaci pro prohlížení SVG dokumentů. Také množina podporovaných SVG elementů a atributů je v případě Adobe SVG Viewer nekomplexnější. Na druhou stranu je třeba poznamenat, že firma Adobe si přidala do SVG standardu řadu atributů, které ostatní prohlížeče ani SVG standardy nepodporují.

Většina programů pro práci SVG (prohlížeče, editory, validátory, konverzní nástroje apod.) je navíc k dispozici zdarma v rámci nejrůznějších otevřených licencí. To znamená, že tvorba map i jejich používání znamená pro autory i uživatele minimální náklady.

SVG je velice atraktivní i z hlediska interaktivity. Některé prohlížeče uživateli nabízí některé předdefinované základní funkce, které jsou pro uživatele digitálních map důležité. Například Adobe SVG Viewer nabízí změnu měřítka (zooming) a posun (panning), přičemž tyto funkce jsou přístupné kombinací tlačítka myši a kláves nebo prostřednictvím kontextového menu. Mnohem univerzálnější je používání skriptovacích jazyků. S jejich pomocí a s pomocí objektově orientované reprezentace XML DOM lze realizovat výše uvedené funkce i náročnější operace s mapou, jako je například přepínání vrstev. Jednotlivé elementy SVG dokumentu lze provázat pomocí odkazů s dalšími prvky (webové stránky, jiné SVG dokumenty apod.). Tímto způsobem lze SVG mapu provázat s legendou, datovou tabulkou, grafy nebo externími dokumenty. Nejvíce používaným skriptovým jazykem je ECMAScript (European Computer Manufacturer's Association), který představuje standardizovanou verzi JavaScriptu. Z hlediska skriptování SVG dokumentů je zajímavá iniciativa E4X (ECMAScript pro XML) - podporu tohoto standardu nabízí například prohlížeč Mozilla Firefox 1.5.

Ačkoli je SVG standardizováno od roku 1998, výrobci software většinou nepodporují kompletní specifikaci, ale pouze nějakou podmnožinu. Například prohlížeč www stránek Opera, která do své aplikace integrovala prohlížeč firmy Ikivo, podporuje od verze 8 pouze profil SVG 1.1 Tiny. To znamená, že v Opeře nelze pracovat s grafickými filtry, skripty, přechody barev, výplňovými vzorky, průhledností, symboly, ořezovými cestami, maskováním ani s některými složitějšími elementy pro zobrazení textu (<tspan>, <tref>). Opera, resp. SVG 1.1 Tiny nepodporuje ani formátování pomocí kaskádových stylů. Také prohlížeč Mozilla Firefox, který přišel s přímou podporou SVG od verze 1.5, nepodporuje kompletní SVG 1.1. K dipozici nejsou elementy práci fonty, většina filtrů a také chybí podpora animací. Tyto nedostatky by měly být podle tvůrců odstraněny, cílem je kompletní podpora SVG 1.1. Také autoři Opery předpokládají, že devátá verze bude obsahovat podporu stadardu SVG 1.1 Basic.

Internet Map Delivery

Výzkum v této oblasti se soustředí na nalezení lepších metod pro přenos map v prostředí internetu, především studium nových internetových protokolů a grafických souborových formátů pro kartografické aplikace [Pet2005].

Do této kategorie spadá výzkum SVG z hlediska vhodnosti pro tvorbu internetových map. V současnosti se ukazuje, že producenti digitálních map konečně začínají SVG využívat ve větší míře a že SVG není jen kuriozitou nebo experimentálním formátem používaným v univerzitním prostředí. Proč se SVG prosazuje stále ve větší míře na trhu s internetovými mapami? Na tuto otázku nejlépe odpovídají vlastnosti tohoto formátu.

Základem každého SVG dokumentu jsou tři libovolně kombinovatelné prvky - vektorové elementy, text a rastrové obrázky. Uživatel může vhodným způsobem zobrazit vektorové prvky mapy, u nichž při změně měřítka nedojde k rozostření hran, jako v případě rastrů a není tedy zapotřebí vytvářet pohledové pyramidy jako v případě některých rastrových map. Vektorové elementy (například komunikace, hranice, polygony apod.) mohou být doplněny rastrovým podkladem (například ortofotomapa nebo zditalizovaná historická mapa) a textovými popisky.

Další výhodou SVG je malá velikost souborů. Ačkoli současné technologie umožňují rychlý přenos a zobrazování, přesto velikost souborů je pro velkou část uživatelů limitujícím faktorem. Pokud bude SVG použito pro mapy s velkým podílem vektorových prvků, pak je srovnání velikosti a kvality souborů mezi SVG a libovolným rastrovým formátem bezpředmětné. mnohem zajímavější situace nastává v případě porovnání SVG a jeho největšího konkurenta na poli vektorové grafiky formátu Shockwave Flash (SWF). SWF dokumenty jsou binární a proto jsou menší než stejné soubory SVG. SVG ovšem může existovat i v komprimované variantě SVGZ - pak je velikost výsledných souborů podobná [Hel2004].

Mezi další vlastnosti SVG, které kartografa zaujmou patří možnost transformací. SVG nabízí celou množinu geometrických transformací v rovině - posunutí (translate), otočení (rotate), změnu měřítka (scale) a zkosení (skewX, skewY). Transformace je možné zapisovat pomocí atributu transform s příslušnými hodnotami (viz seznam transformací) nebo se pro zápis používá transformační matice. Transformace zjednoduší problematiku přizpůsobení souřadnicového systému mapy souřadnicovému systému používanému v SVG dokumentu. SVG také umožňuje také zavedení vlastních délkových jednotek, které lze definovat pomocí atributu viewBox. Mezi podporované délkové jednotky patří milimetry, centimetry, palce, pixely, procenta a další. Takovým způsobem lze například dokumentu o rozměru 400 x 400 pixelů, přiřadit souřadnice S-JTSK.

Dalším užitečným prvkem je element <symbol>. Tento prvek umožňuje definování grafických entit, které je pak možné opakovaně umisťovat na libovolná místa SVG dokumentu. V případě tvorby map lze tuto vlastnost využít pro definování mapových značek. Tyto značky je pak možné pomocí transformačních funkcí nejen posunout na správné místo, ale také natočit, případně zmenšit nebo zvětšit. V SVG je jednoduché definování knihoven mapových značek, které mohou být připojeny (vloženy) do různých SVG dokumentů, přičemž jejich vizualizační vlastnosti (barva, typ linie, průhlednost apod.) lze individualizovat prostřednictvím kaskádových stylů.

V úvodní pasáži SVG dokumentu, která je označená tagy <defs>, lze kromě symbolů definovat také další prvky jako například vzory výplně, gradienty nebo typy čar. Pro kartografy je užitečná také další vlastnost, která dovoluje rozmístit text podle libovolné křivky, což lze využít například při popiscích pohoří, vodních ploch nebo územních celků.

V SGML/XML dokumentech je možné používat elementy z jiných SGML/XML formátů. K tomu se používají tzv. jmenné prostory (Namespaces). Takovým způsobem je možné propojit i metadata popisující mapu. W3C doporučuje metadatové formáty na bázi SGML/XML - RDF (Resource Description Framework) nebo Dublin Core.

Tvůrci internetových map a atlasů uvádí mnoho dalších důvodů proč používat technologii SVG. Jedná se například o možnost vyhlazování grafických i textových prvků (antialiasing) nebo možnosti exportu dat z jiných formátů jako jsou například shapefile nebo GML. SVG mapy je také možné generovat z databází.

Internet Multimedia Mapping

V prostředí internetu lze snadno zrealizovat propojení kartografického produktu s multimediálními prvky (zvukové soubory, grafické soubory, video apod.). Internetová kartografie zkoumá možnosti obohacení map o nejrůznější multimediální prvky.

SVG v současnosti nabízí dva prvky, které podporují propojení multimediálních prvků s vektorovou grafikou. Jedná se o možnost vložení rastrové grafiky. K tomu účelu slouží element <image>, který umožňuje připojení rastru. K dispozici jsou dva typy kompresí rastrové grafiky:

  • Bezztrátová komprese - formát PNG (Portable Network Graphics),
  • ztrátová komprese - formát JPEG (Joint Photography Expert Group).

Druhou zajímavou vlastností, která může přispět k podpoře Multimedia Mapping a také vést k nárůstu uživatelů SVG map je využívání SMIL animací. Animace jsou důležité nejen jako prostředek prostředek pro zatraktivnění mapy a přitáhnutí pozornosti uživatele. Pomocí animovaných kartogramů nebo kartodiagramů lze velice snadno vizualizovat časové změny v geografickém prostoru.

Velké zlepšení v souvislosti s podporou multimédií se očekává s nástupem nové verze SVG 1.2, která by měla zlepšit integraci audio a video souborů a také zavést možnosti streamování.

Internet Mobile Mapping

Mobilní zařízení (mobilní telefony, kapesní počítače) jsou díky své velikosti a snadné manipulaci čím dál častěji používány pro navigační účely spojené se naváděním pomocí mapových produktů. Hlavním problémem je redukce velikosti mapy pro zobrazení na malých displejích a přenos pomocí technologií s malou kapacitou.

Tvůrci SVG kladou v současnosti velký důraz na mobilní aplikace, o čemž svědčí iniciativa Mobile SVG. V konsorciu, které SVG vyvíjí, aktivně pracují výrobci mobilních zařízení, jako jsou například Nokia, ERICSSON nebo Sharp Corporation. Normu SVG Tiny také zařadilo konsorcium 3GPP (3rd Generation Partnership Project) do svého 3GPP standardu pro třetí generaci mobilních telefonů jako povinný základ Multimedia Message Service (MMS). Mobile SVG je také určeno pro oblast zábavy a e-komerce. Dále by na podkladě SVG měly pracovat lokalizační a mapovací služby. Uvažuje se i o tvorbě grafického uživatelského prostředí (GUI) pomocí SVG.

Z hlediska aplikací je k dispozici programové vybavení firem Nokia, CSIRO, eSVG (embedded SVG), BitFlash, Sharp, ACCESS nebo ZOOMON. Jedná se například o prohlížeče TinyLine, ZOOMON SVGT Viewer nebo BitFlash SVGT Viewer. Samostatnou kapitolou je prohlížeč Opera s integrovaným prohlížečem ZOOMON SVGT Viewer existující ve verzi pro mobilní telefony, PDA, Smartphones, který umožňuje zobrazování SVG i XHTML. Kartografické služby určené pro mobilní zařízení poskytuje například firma Vodafone nebo japonská telekomunikační společnost KDDI, která také spravuje www stránky JaMaPS. [Qui2004]

V oblasti Internet Mobile Mapping se v poslední době objevilo velké množství konkurenčních vektorových formátů. Jedná se například o RaveGeo (od společnosti Idevio), MapTP (NETSOLUT), SlimMap a GfxFeatureMap (Wayfinder Systems AB). Podrobnější srovnání těchto formátů lze nalézt v publikaci [Wal2003].

Tvorba map v SVG

Ačkoli se používání SVG v digitální kartografii jeví jako velice perspektivní, je nutné si uvědomit, že SVG je pouze prostředkem pro tvorbu a distribuci map a nikoli komplexní technologií nebo dokonce programovým vybavením. Kvalita výsledného kartografického produktu tedy nezávisí v plné míře na vývoji SVG, ale zčásti také na používaném software pro tvorbu map a jejich zobrazení.

Existují čtyři základní způsoby tvorby map v SVG:

  1. Pomocí WYSIWYG (What You See Is What You Get) editorů,
  2. export z jiného formátu,
  3. generování z dat ve formátu XML pomocí XSLT transformací,
  4. generování z databáze prostřednictvím skriptovacích jazyků.

WYSIWYG editory

Tvorba map pomocí WYSIWYG editorů je velice snadná a pohodlná. Z tohoto důvodu je tato metoda vhodná i pro kartografické začátečníky a laiky, kterým umožní poměrně jednoduše publikovat na webu vektorové mapy. Navíc existuje velké množství editorů, které jsou distribuovány na platformě open-source (Inkscape, GLIPS Graffiti, Sodipodi).

Na druhou stranu tento postup bývá často zdrojem elementárních chyb a nepřesností, které jsou často způsobeny ignorováním základních kartografických pravidel. Mapy vytvořené pomocí WYSIWYG editorů mají většinou pouze grafickou přesnost - správné souřadnice je většinou nutné opravit „ručně” ve zdrojovém kódu mapy.

Dvojsečnou zbraň představuje také jazyk Java, v němž je většina software pro práci s SVG vytvořena. Na jednu stranu jsou tyto programy k dispozici pro všechny hardwarové platformy. Problémem zůstávají rozsáhlé soubory, s nimiž se v oblasti digitální kartografie můžeme často setkat. Přičemž se jedná především o velikost z hlediska počtu vykreslovaných elementů. Programy v interpretovém jazyce Java často nedokáží tak rozsáhlé soubory zpracovat - dochází ke značnému zpomalení aplikace nebo dokonce k jejímu zastavení v důsledku nedostatku paměti.

Export dat do SVG

Některé GIS aplikace, jako například ArcGIS, MapInfo nebo open-source OpenJUMP, umožňují export dat do formátu SVG. Výhodou tohoto přístupu je možnost tvorby mapy v prostředí, které je současným standardem pro tvorbu digitálních map. Další předností tohoto přístupu je existence velkého množství dat ve formátech pro GIS software a také mnoha kartografických nástrojů integrovaných do GIS. Data převedená z GIS do SVG neobsahují některé typy chyb, například překryty značek nebo popisků. Proto tato cesta představuje pro uživatele geografických informačních systémů nejjednodušší prostředek k tvorbě SVG map.

Mezi problematické stránky tohoto přístupu patří nemožnost ovlivnění výsledného SVG, které často nesplňuje standardy. Vyexportované soubory bývají většinou příliš rozsáhlé z důvodů připojení nadbytečného množství XML prezentačních atributů. Některé programy (například OpenJUMP) neexportují do SVG data, z nichž je mapa generována, ale pouze výslednou mapu - nejsou tedy zachovány původní souřadnice. Podobně jako v předchozí sekci je uživatel nucen použít „ruční” editaci souboru, pokud bude chtít mapu obohatit o různé interaktivní prvky.

XSLT transformace

Pro tvorbu map z dat v XML formátu (nejčastěji se používá formát GML) prostřednictvím XSLT transformací jsou nutné netriviální znalosti z oblasti XML a XSLT. Také zápis XSLT pravidel lze většinou realizovat jen pomocí textových (programátorských) editorů, které přes snahu svých tvůrců nemohou z hlediska komfortu předstihnout své WYSIWYG konkurenty. Proto je tvorba XSLT map pomocí XSLT trasformací často opomíjenou metodou.

Na druhou stranu je třeba poznamenat, že díky příbuznosti všech XML formátů jsou postupy pro práci s nimi téměř identické - proto lze označit jako výhodu fakt, že formáty pro zdrojová data, transformační pravidla a také výsledná mapa jsou založeny na bázi SGML/XML. Tvůrce mapy i její uživatel mohou využívat všech předností formátu XML, jako je například čitelnost, flexibilita apod. Také je možné opakované využívání již vytvořeného stylu a především přizpůsobení výstupní mapy potřebám uživatelů, včetně změny symbolizace nebo velikosti souborů, kdy je možné odstranění nadbytečných elementů a atributů výsledné SVG. Tato vlastnost je důležitá při přenosu a zobrazování map prostřednictvím málo výkonných mobilních zařízení.

Předností je také široká nabídka kvalitního programového vybavení (editory, konvertory, transformační procesory), přičemž většina je šířena pod některou z oteřených licencí.

XSLT procesory, včetně nejpoužívanějšího procesoru Saxon, jsou většinou vytvořeny v jazyce Java, proto se můžeme setkat s obtížemi popisovanými v odstavci 3.1.

Generování SVG map z databáze

Z pohledu budoucnosti se tato metoda jeví jako nejperspektivnější. Podobně jako v předchozím odstavci lze výslednou mapu téměř dokonale přizpůsobit potřebám a požadavkům uživatele. Databáze, serverové technologie a skriptovací jazyky umožňují bezpečné uchovávání a spravování velkého množství geografických dat, jejich transformaci do SVG a také publikování na internetu. Navíc veškeré komponenty existují open-source nebo podobných licenčních variantách:

  • Serverové technologie (Apache),
  • skriptovací jazyky (Python, Perl, PHP),
  • databázové systémy (PostgreSQL).

Generování SVG map z relační databáze využívá například projekt Tirol Atlas, který vytváří katedra geografie univerzity v Innsburcku. Jednotlivé tematické mapy a grafy atlasu jsou vytvářeny skripty v jazyce Perl z databáze PostgreSQL/PostGIS. Z dalších technologií autoři použili HTML, CSS a JavaScript.

Závěr

Technologie SVG se v současné kartografii prosazuje ve stále větší míře. Ačkoli se SVG hojně využívá v mnoha oblastech, například v prostředí komerční grafiky, e-bussinesu nebo zábavního průmyslu, na celosvětové konferenci SVG Open 2005 v nizozemském Eshende byla téměř jedna čtvrtina všech příspěvků věnována problematice geografických informačních technologií, především tvorbě map.

Nelze ovšem považovat SVG za jedinou samospasitelnou technologii, která vyřeší veškeré problémy, se kterými se současná kartografie setkává. SVG, stejně jako ostatní technologie, má svoje přednosti, ale i nevýhody. Mezi klady SVG patří univerzálnost, nezávislost, otevřenost a komunikativnost. Naopak k nedostatkům SVG se nejčastěji řadí nedostatečná podpora ze strany výrobců software a také fakt, že tato podpora není standardizována, neboť producenti programového vybavení často nerespektují všechna doporučení ze strany standardů W3C. Kartografové by přivítali obohacení SVG o podporu topologie, souřadnicových systémů a trojrozměrné grafiky, především výškových systémů (v současnosti se nadmořské výšky připojují k SVG souborům jako metadata) [Ack2001].

Nekomerční licence a také široká komunita pracující na vývoji nových verzí SVG a také na software pracující s SVG zaručuje velice rychlý vývoj tohoto formátu. Například ještě v polovině roku 2005 neexistovala v žádné aplikaci podpora tzv. alternativních stylů - tedy možnost volby stylů v prostředí prohlížeče nebo pomocí skriptů [Čer2005]. Alternativní styly nepodporoval žádný ze speciálních prohlížečů ani prohlížeče www stránek s přímou podporou SVG (například Opera používá pouze variantu SVG Tiny, která neobsahuje kaskádové styly a vizualizačních vlastnosti jsou definovány pomocí XML prezentačních atributů). Kvalitní podpora kaskádových stylů, včetně alternativních, přišla až s programem Mozilla Firefox 1.5. Alternativní styly mohou být využívány pro změny barevných stupnic tematických map nebo některých kartografických technik (např. typy grafů v kartodiagramech). Navíc v kvalitním prohlížeči, který respektuje zásady W3C, není nutné ke změně stylů používat skripty, což zjednoduší a především zrychlí práci z rozsáhlými SVG soubory. Určité zlepšení přinese nová verze SVG 1.2, od které se očekávají následující změny: lepší podpora multimédií (audio i video, včetně streamování), zkvalitnění interaktivity, zalamování textů, podpora XBL (XML Binding Language) a další. Tyto nové vlastnosti jistě přinesou nové prvky do digitálních map, které budou poskytovat mnohem více informací navíc přitažlivější a zajímavější formou.

Reference

Personal tools
Namespaces

Variants
Actions
journal
pages
Toolbox