Ing. Tomáš Duchoslav, Ing. Jan Růžička, Dr. Ing. Bronislava Horáková
Institut geoinformatiky
VŠB - Technická univerzita Ostrava
17. Listopadu 15
708 33 Ostrava - Poruba
E - mail: tomas.duchoslav@vsb.cz, jan.ruzicka@vsb.cz
The paper discusses possibilities of a metadata (about spatial data) exchange based on XML (eXtensible Markup Language). The metadata exchange is presented on a practical example. We would like to present practical usage of the XML metadata import/export in system MIDAS (Metainformation system). Paper will describe XML metadata exchange for distributed metainformation systems based on metainformation web portal.
Příspěvek se zabývá možností výměny metadat o prostorových datech prostřednictvím jazyka XML (eXtensible Markup Language). Příspěvek také popisuje praktické využití výměny metadat na systému MIDAS. Příspěvek se zaměří rovněž na možnosti využití výměny metadat na bázi XML pro distribuované metainformační systémy integrované s využitím metainformačního portálu.
Nezanedbatelnou součástí každého dobře navrženého informačního systému (i geografického informačního systému) je správa metadat o datech vedených v tomto systému. Častým způsobem vedení metadat o datech spravovaných v informačním systému bývá dokumentace v samostatných dokumentech, které často nebývají žádným způsobem organizovány. Pokud jsou metadata vedena nějakým uceleným způsobem, jsou obvykle spravována jako specifická část informačního systému. Obvykle je pro jejich správu vyčleněna samostatná jednotka (označovaná také jako modul) specializovaná na vedení metadat. Méně častým případem jsou tzv. metainformační systémy. Metainformační systémy stojí mimo celý systém správy dat a mohou na něm být téměř nezávislé.
V současném trendu vývoje geoinformačních technologií je snaha o co největší univerzálnost. Tato univerzálnost se odvíjí především od otevřeného přístupu k datům a jejich zpracování. V podstatě to znamená vývoj takových systémů, které umožní sdílet data s jinými různorodými systémy, které jsou ale také vybudované na stejných celosvětově uznávaných standardech (specifikacích). Vývoj těchto standardů zaštiťují především nezisková konsorcia (např. OpenGIS, W3C atd.), sdružující komerční firmy, vládní instituce a univerzity, které je společně budují tak, aby byly přístupné široké veřejnosti. Odtud tedy "otevřený systémový přístup".
To samé platí i pro metadata "nejen" o prostorových datech. Znamená to popisovat svá data podle uznávaných standardů tak, aby bylo možné tyto informace snadno a bezztrátově integrovat do jiných systémů popisující data.
Příspěvek se nezabývá problematikou metainformačních systémů ani metadaty jako takovými, ale je zaměřen na výměnu metadat pro prostorová data mezi systémy. Pro seznámení se s problematikou metadat pro prostorová data a metainformačních systémů je možné nahlédnout do [1], [2], [4], [6], [9], [10], [13], [15], [16], [17], [21], [23], [22], [26], [29], [32], [33], [34], [36], [37], [39], [42], [48], [49], [50], [51], [52], [53], [54], [55], [57], [58].
Vývoj metainformačních systémů předpokládá, že se nebude jednat o izolované systémy, které slouží pouze pro potřeby úzké skupiny uživatelů. Daleko pravděpodobnější je, že bude vznikat síť navzájem komunikujících systémů. Jednou z oblastí kde se bude výměna metadat významně uplatňovat je distribuovaná správa metadat. V této kapitole a jejích podkapitolách je definována oblast distribuované správy metadat a nastíněny možnosti využití XML jazyka pro tuto oblast.
Metainformační portál představuje nástroj pro uživatele, který jednotným způsobem zpřístupňuje metadata z více metainformačních systémů. Jedná se tedy o uživatelské rozhraní, které zastřešuje více metainformačních systémů a umožňuje uživateli vyhledávat v těchto systémech s využitím jednoho rozhraní. Často je portál konstruován tak, že nezkušený uživatel ani nepozná, že vyhledává v různých metainformačních systémech. Cílem metainformačních portálů je především zjednodušit přístup k metadatům a zpříjemnit, a také zlevnit pro uživatele vyhledávání datových zdrojů.
Obecné schéma komunikace metainformačního portálu s klientem a metainformačními systémy v prostředí WWW je zobrazeno na obr. 1.
Obr. 1 Metainformační portál
Ve schématu není uvedeno několik prvků, které ke komunikaci rovněž patří. Je tak činěno z důvodu zjednodušení popisu. Ve schématu chybí WWW servery, které jsou předpokládány jako prostředník mezi WWW klientem a metainformačním portálem, a rovněž jako prostředníky mezi metainformačními systémy a metainformačním portálem. Dále nejsou ve schématu uvedeny databáze metainformačních systémů. Ve schématu dále chybí rozhraní mezi chybějícími prvky a prvky uvedenými.
WWW klient v případě portálu plní stejné funkce jako v případě samotného metainformačního systému. Je třeba říci, že v případě portálu jsou však obvykle využívány pouze nástroje pro vyhledávání a zobrazení metadat.
Podmínky pro vyhledání mohou být v případě metainformačního portálu rozšířeny o možnost výběru metainformačních systémů, ve kterých bude vyhledáváno. Tato možnost se však jeví vhodná spíše pro pokročilé uživatele. Začátečníci nebo náhodní uživatelé by neměli být takovou volbou obtěžováni a automaticky by se mělo provést vyhledání ve všech připojených metainformačních systémech.
Zkráceně je ve schématu (obr č. 1) metainformační portál označen jako METIS portál. Metainformační portál představuje prostředníka mezi metainformačními servery a WWW klientem portálu. Obecně může být řešen dvěma různými způsoby, které jsou popsány v následujících kapitolách "Distribuce metadat horizontálním členěním" a "Distribuce metadat vertikálním a horizontálním členěním" V obou případech však metainformační portál sestává z následujících komponent:
Technické vybavení a WWW server mohou být v obou případech koncipovány stejně. Významné rozdíly obou řešení jsou především v řešení databáze metainformačního portálu a částečně také v řešení programového vybavení pro portál.
Rozhraní, přes které jsou zasílány požadavky pro vyhledání (výsledky vyhledání a samotná metadata), musí být formalizováno. V distribuované správě může být využito existujících komunikačních protokolů, které jsou popsány v kapitole "Existující komunikační protokoly". Je samozřejmě možné vytvořit vlastní komunikační rozhraní, ale obecně je vhodnější využít již existující řešení, které zajišťuje kompatibilitu i s jinými systémy, které se primárně distribuované správy neúčastí.
Distribuce metadat horizontálním členěním předpokládá následující model:
Vyhledání a zobrazení metadat na straně klienta, s využitím metainformačního portálu při distribuci horizontálním členěním, pracuje na jednoduchém principu a ve dvou fázích:
Fáze 1:
Fáze 2:
Obě fáze mohou být modifikovány tím, že zobrazení výsledků vyhledání a zobrazení metadat nemusí zajišťovat metainformační portál, ale příslušný metainformační systém. Tímto se však omezuje uniformita přístupu k metadatům, ale na druhé straně zjednodušuje celá implementace distribuované správy metadat.
Jiným možným řešením, je kombinace distribuce metadat horizontálním i vertikálním členěním. V tomto případě je předpokládán následující model:
Vyhledání a zobrazení metadat na straně klienta, s využitím metainformačního portálu při distribuci vertikálním i horizontálním členěním, pracuje na jednoduchém principu a ve třech fázích (přičemž třetí nemusí ani nastat):
Fáze 1:
Fáze 2:
Fáze 3:
Třetí fáze může být modifikována tím, že zobrazení podrobných metadat nemusí zajišťovat metainformační portál, ale příslušný metainformační systém. Za určitých okolností, pokud uživateli zobrazená základní metadata dostačují, nemusí ke komunikaci s jednotlivými veřejnými metainformačními systémy vůbec docházet a veškerou činnost zajišťuje metainformační portál.
Další možností, kterou lze zařadit mezi distribuovanou správu metadat, přestože se jedná o replikaci metadat, je způsob, který rovněž předpokládá přístup uživatelů přes jedno rozhraní, ale zároveň uchovávání všech metadat v centrální databázi.
V tomto případě je předpokládán následující model:
Vyhledávání a zobrazování metadat v centrálním metainformačním systému pak probíhá jako v jakémkoliv jiném metainformačním systému.
V následující tabulce jsou stručně popsány základní komunikační protokoly, které se dnes pro distribuované dotazování v prostředí WWW používají. Z uvedených se v současné době nejvíce pro oblast metainformačních systému pro prostorová data využívá protokol Z39.50/GEO Profile. Zajímavým řešením, které jistě bude velmi často využíváno je protokol EO/GEO OGIS Catalogue Services Submission.
Protokol/Jazyk | Popis |
Simple Search | Tento protokol byl vyvinut společností CEOnet, která je jedním z tvůrců NCGI. Protokol je založen na výměně dat s využitím CGI rozhraní přes HTTP protokol. CGI program vrací výsledky v podobě ASCII textu, který je naformátovaný dle ISO/CCDS-developed Parameter Value Language (PVL). |
PVL | Parameter Value Language byl vyvinut organizací CCDS [7]. Po jeho praktickém ověření byl navržen jako kandidát na ISO standard. Jedná se o obecnou specifikaci, která umožňuje specifikovat parametry a jejich hodnoty. Více informací lze nalézt v [8]. |
HGS | Tento protokol byl vyvinut v Joint Research Center (JRC) v Itálii. HTTP-based Geo-Temporal Searching protokol je protokol, který je obdobně jako protokol Simple Search založen na PVL a URL. Tento protokol však počítá s existencí vyhledávacího portálu, který si udržuje přehled o databázích dostupných k prohledávání. Tento portál je prostředníkem mezi uživatelem a databázemi. Výsledky vyhledání jsou předávány ve formě PVL. |
HGSS | HTTP-based Geo-Temporal Simple Searching protokol vznikl spojením a rozšířením protokolu Simple Search a HGS. Komunikace opět probíhá přes URL, CGI a HTTP, přičemž formátování výsledku vyhledání je rozděleno do dvou fází. V první fázi je vytvořen vystup opět s využitím jazyka PVL. V druhé fázi pak probíhá transformace do formátu XML. |
Z39.50 Search and Retrieval Protocol | Tento protokol vychází z komunity tvůrců digitálních knihoven a v dnešní době se jedná o ISO standard. Poskytuje předpis pro specifikování struktury dotazu i struktury výsledku vyhledání (dotazu). Výhodou protokolu je jeho značné rozšíření. |
Z39.50/GEO Profile | FGDC vyvinulo aplikační specifikaci jak využít Z39.50 pro hledání v metadatech specifikovaných pomocí standardu CSDGM. Tato specifikace byla nazvána GEO. Standard specifikuje strukturu pro dotazování v metadatech (včetně prostorových dotazů) a také strukturu výstupu. Na bázi této specifikace funguje americká NCGI. Protokol má stavový charakter s persistentním spojením mezi serverem a klientem. |
Information Management system (IMS) | Tento protokol vychází z půdy organizace NASA (National Areonautics & Space Administration). Protokol využívá možnosti jazyka Object Description Language (ODL) a to je jedna z jeho předností. Jazyk ODL je využíván k specifikaci parametru dotazu. K dispozici jsou jak klientská tak serverová aplikace zdarma stažitelné ze serveru NASA. |
EO/GEO OGIS Catalogue Services Submission | Protokol vychází z dílny Open GIS Consorcia. Protocol využívá Message-Oriented Model (MOM). Protokol může být implementován s využitím nejen rozhraní COM nebo CORBA ale i v prostředí HTTP nebo Z39.50 komunikačních služeb. Ke komunikaci je využíván jazyk XML, jakožto nástroj pro definování dotazu i odpovědi. |
Tabulka 1 Existující protokoly - distribuovaná správa (upraveno podle [55] a doplněno)
Jednou z podmínek, aby bylo možno přenášet metadata ze systému do systému, musí být dodržování stejných zásad popisu metadat. Jak už bylo zmíněno výše, musí být vybudovány na stejných standardech. V současné době se většina evropských systémů zabývající se správou metadat o prostorových datech buduje na standardu CEN/TC 287 [9]. Kromě něho zde však existují ještě další světově významné standardy, například mezinárodní ISO/TC 211 [32] a americký FGDC [22].
Druhou podmínkou je vytvoření komunikačního rozhraní mezi těmito systémy, prostřednictvím jehož se data budou předávat. Pro takovéto rozhraní se jako vhodné nabízí využít jazyka XML (eXtensible Markup Language), resp. textových XML dokumentů.
V poslední době se jazyk XML stává velice populárním nástrojem pro výměnu dat. Jeho obrovskou výhodou je především samotný popis dat, čímž kromě samotného textu nese i informace o jeho významu. V našem případě se jedná o popis metadat. Díky velké pružnosti a univerzálnosti tohoto jazyka se v něm vyvíjejí standardy snad ve všech oblastech lidské činnosti. Tyto standardy mohou být ve formě DTD či nově nastupujících XML schémat. Více informací o jazyce XML a komunikaci na bázi jazyka XML lze nalézt v [3], [14], [17], [19], [28], [30], [35], [44], [47], [53], [54], [60], [61].
Obr č. 2 Komunikace systémů prostřednictvím XML dokumentu
Výsledkem zpracování projektu "Metainformační systém CAGI" je vybudovaný Metainformační systém veřejné správy v ČR, který nese název Metainformační databázový systém zkr. MIDAS [4].
Systém MIDAS pracuje s metadaty ve formátu dle standardu ISVS [58]. Tento standard byl vytvořen jako jeden z produktů řešení výše uvedeného projektu ve spolupráci s Úřadem pro veřejné informační systémy (ÚVIS) a jinými subjekty. Systém prošel složitým vývojem, v rámci kterého bylo zodpovězeno (vyřešeno) množství otázek týkajících se problematiky metadat pro prostorová data a metainformačních systémů.
Metainformační systém MIDAS je průběžně plněn metadaty z různých zdrojů. K 1.6.2002 obsahovala databáze systému MIDAS metadata o téměř 3500 datových sadách od 101 distributorů (majitelů, správců, poskytovatelů, tvůrců) datových sad. Z toho více než 3000 metadatových záznamů bylo pořízeno správci prostorových dat na okresních úřadech ČR.
Systém MIDAS je veřejný metainformační systém a metadata veřejnosti prezentuje s využitím služby WWW. Uživatelé tohoto systému mohou vyhledávat metadata o požadovaných datových sadách s využitím standardních vyhledávacích mechanizmů. Registrovaní uživatelé (správci metadat) mohou s využitím WWW prohlížeče editovat a vkládat metadata do systému.
Metainformační systém MIDAS má v sobě implementováno rozhraní, které umožní vyměňovat metadata o datových sadách právě prostřednictvím XML dokumentů.
Výměnný formát XML je definován "Standardem ISVS pro strukturu a výměnný formát metadat informačních zdrojů, verze 1.1", vydaný ÚVIS a který je odvozen z evropského standardu CEN/TC 287. Je určen k přenosu metadat mezi metainformačními systémy.
Struktura výměnného formátu je uložena v DTD.
Stejně jako MIDAS je i modul zajišťující export a import metadat do XML, internetová aplikace napsaná ve skriptovacím jazyce PHP.
V současné době se řeší zajištění výměny metadat mezi systémem MIDAS a desktopovými aplikacemi MIDASLite. Zatímco MIDAS působí jako centrální oborový katalog geodat veřejné správy a je umístěn na institutu geoinformatiky na VŠB, tak MIDASLite jsou lokální aplikace umístěné na různých úřadech. Z tohoto důvodu je potřeba, aby se metadata o geodatech vytvořených na jednotlivých úřadech, co nejjednodušší cestou předávala do centrálního katalogu. Proto aplikace MIDASLite umožňuje exportovat metadata do dokumentů XML, které splňují výše zmíněnou definovanou strukturu výměnného formátu a takovéto dokumenty lze poté předat systému MIDAS, který z nich prostřednictvím svého modulu pro import, vyjme příslušná metadata a uloží do své databáze. Uživatelé systému MIDAS tak budou mít přístup k aktuálním metadatům o geodatech z celé republiky.
Jedním z elementů metadat pro prostorová data je plošný rozsah datové sady. Plošný rozsah se definuje jako obdélník, polygon nebo geografický areál. Při přenosu metadat pro prostorová data je tedy nezbytně nutné pamatovat i na přenos prostorových dat jako takových.
Pro přenos a uchovávání prostorových dat by měla také být využita technologie, která splňuje kritéria otevřeného systémového přístupu. Jednou z takových technologií je GML (Geometry Markup Language). GML je postaven na jazyce XML a jeho specifikaci vyvíjí konsorcium OpenGIS.
Dnes GML existuje již ve verzi 2.1.2 a je definováno třemi základními XML schématy pro popis prostorových informací. Geometrickou složku představuje schéma "geometry.xsd", které definuje kolekce geoprvků a jejich atributy. "Xlink.xsd" představuje schéma pro podporu prvku Xlink, který je určený pro funkce odkazování. "Feature.xsd" definuje geografické prvky, které jsou v GML obsaženy.
Všechny tyto XML schémata nahrazují stejné DTD, které byly využívány ve verzi GML 1.0.
Datový soubor, který je uložen ve formě GML, představuje pouze textový soubor, ve kterém jsou pomocí jednotlivých prvků popsána zvlášť grafická (pomocí GML prvků) a zvlášť popisná data (pomocí XML prvků). Taková data jsou pak lehce přenositelná a zcela nezávislá na platformě.
GML pro přenos prostorových dat definuje základní vektorové prvky: bod, linie, polygon a polygon s dírou. Pro účely přenosu metadat, jejichž popis v sobě zahrnuje i definování plošného rozsahu datových sad, jsou využívány především prvky obdélník (jako speciální případ polygonu), jednoduchý polygon a tzv. polygon s dírou.
Zajímavým případem je právě možnost přenosu metadat o datové sadě jejíž definovaný plošný rozsah je tvořen polygonem s dírou (obsahuje vnější a vnitřní hranice). Jako názorný případ může sloužit definování správní uzemní jednotky Středočeského kraje, který obklopuje Hlavní město Prahu.
V takovém případě se GML nabízí jako velice vhodným nástrojem pro uchovávání a přenos příslušných metadat.
Za zmínku jistě stojí, že jazyk GML byl částečně využit v případě specifikace výměnného formátu standardu ISVS [58].