1 Geography Markup Language (GML) • Účel GML: - modelovací jazyk pro geografickou informaci - kódování geografické informace - navržen pro web a webové služby • Základní principy GML: - otevřený standard - umožňuje výměnu prostorových dat nezávisle na technologii poskytovatele - vhodný pro SOA (Service Oriented Architecture) Laboratoř geoinformatiky a kartografie Převzato z: http://www.fig.net/pub/cairo/ppt/wss/wss_02_portele_ppt.pdf Geography Markup Language (GML) • XML gramatika definovaná OGC pro vyjádření geografických prvků • modelovací a výměnný jazyk geografických systémů na internetu • velmi obecný: vektory, coverage a senzorová data, rozšiřitelnost • první definice GML v roce 1999 • verze 2 v roce 2000 (OGC), verze 3.2.1 využívána INSPIRE, v 3.3 • ISO 19136 (2007), navazuje na ostatní standardy série ISO 19100 • KML je podobné GML, nicméně KML je: - jazyk pro vizualizaci geografické informace (GML je o obsahu) - KML lze využít pro uchování GML obsahu - KML vyvinul Google až když existoval GML, jde proto o duplicitu Laboratoř geoinformatiky a kartografie GML schéma, aplikační schéma a dokumenty Laboratoř geoinformatiky a kartografie Univerzum diskurzu Výběr typů prvků Aplikační schéma(ta) Data Katalog prvků Katalog prvků Katalog prvků • Definuji standardní elementy a typy pro užití v aplikačním schématu = GML schéma • Užiju schéma jazyka pro modelování v GML aplikačním schématu včetně definice pravidel pro toto schéma • Zachytím objekty reálného světa podle GML aplikačního schématu = GML dokument(y) Převzato z: http://www.fig.net/pub/cairo/ppt/wss/wss_02_portele_ppt.pdf GML schéma Laboratoř geoinformatiky a kartografie • GML schéma je základem pro vytvoření libovolného aplikačního schématu • poskytuje „kostru“ – základní koncepty, které je možné využít ve všech aplikačních doménách (respektive aplikačních schématech) Převzato z: http://xmml.arrc.csiro.au/display?page=src GML schéma Laboratoř geoinformatiky a kartografie • základní schémata, obecná syntaxe, model prvků, principy metadat • základní geometrie (0D, 1D, 2D) • geometrická primitiva (0D, 1D, 2D, 3D) • principy složených geometrických prvků, agregace • definice souřadnicových referenčních systémů • topologie • časová informace a dynamické prvky • definice a slovníky • jednotky, měření, coverage • výchozí stylování GML aplikační schéma Laboratoř geoinformatiky a kartografie Převzato z: http://wiki.snowflakesoftware.com/display/GLDOC/Background+Concepts+-+XML,+GML+and+Application+Schemas • základem GML konceptu (tj. i každého aplikačního schématu je prvek) • každý prvek náleží do typu prvků • geografický prvek je prvek s umístěním na Zemi • (geografický) prvek obsahuje vlastnosti (atributy) 2 Mapování do GML aplikačního schématu Laboratoř geoinformatiky a kartografie Převzato z: http://wiki.snowflakesoftware.com/display/GLDOC/Background+Concepts+-+XML,+GML+and+Application+Schemas Základní koncept GML Laboratoř geoinformatiky a kartografie Základní koncept GML Laboratoř geoinformatiky a kartografie • základ GML je definován pomocí tří XML Schémat - geometry.xsd (vrstvy a jejich atributy) * bod, linie, pravoúhelník, uzavřená linie, polygon - xlink.xsd (odkazy mezi elementy/dokumenty) - feature.xsd (jednotlivé geometrické prvky) • Grafický výstup - GML je o obsahu - pro vizualizaci je nutná XSLT transformace např. do SVG, VML, X3D, ale i textový výstup v podobě RTF, PDF aj. - nebo se k GML souboru připojí vizualizační jazyk (SLD) Web Coverage Service (WCS) • standardizovaný způsob, jak získávat vektorová a/nebo rastrová data plus atributy (vč. DEMů) • datová služba – jediným rozdílem oproti WMS je rozměr pixelu • místo JPEG/GIF/PNG obrázku vrací GML popis rastru • požadavek (request) - parametry XML/GML • odpověď (response) – popis (XML) nebo data (XML/GML) • HTTP, POST, GET • Data mohou být v DTED, GeoTIFF, HDF-EOS, NITF • Operace: GetCapabilites, GetCoverage a DescribeCoverageType • Příkladem je Atlas kryosféry http://nsidc.org/data/atlas/ Laboratoř geoinformatiky a kartografie WCS požadavky • GetCapabilites – XML dokument poskytované služby a jejich dat • GetCoverage – navrací hodnoty nebo vlastnosti geografických lokací zakotvená ve standardizovaném formátu; syntaxe a sémantika odpovídají požadavku GetMap, pro získání coverage jsou však vytvořena určitá rozšíření • DescribeCoverageType Laboratoř geoinformatiky a kartografie Web Feature Service (WFS) • standardizovaný způsob, jak získávat vektorová data z DB (popis dat založený na XML) • nativně podporován GML (velikost), možnost KML • požadavek (request) - parametry XML/GML • odpověď (response) – popis (XML) nebo data (XML/GML) • GML = kompletní popis prvku • HTTP, POST, GET • klasické WFS (basic) je POUZE KE ČTENÍ • WFS-T (Transactional) = práce s databází (vkládání, smazání, aktualizace, zamknutí, odemknutí, stanovení restrikcí, validace integrity dat) • WFS-T umožňuje plnohodnotné zpracování DB Laboratoř geoinformatiky a kartografie 3 WFS požadavky • GetCapabilities • DescribeFeatureType • GetFeature • LockFeature • Transaction – Insert, Update ns01:TREESA_1M ns02:ROADL_1M Laboratoř geoinformatiky a kartografie Nevýhody WFS • pomalé • nafouklé • komplikované • slabá SOAP implementace • … zato interoperabilní Laboratoř geoinformatiky a kartografie WFS a WCS servery v ČR a Evropě • před INSPIRE cca pár desítek implementací v Evropě - většinou testovací - např. http://mapserver.geonet.sk/nipiwfs/request.aspx - http://www.plan4all.eu/cgi- bin/mapserv?map=/data/www/www.plan4all.eu/data/Glog/Temp/wf s_6df1dbf8b4b6b24fd4a353e9a5597997.map • v listopadu 2012 takřka 200 implementací WFS/WCS • v ČR veřejné WFS pro katastr nemovitostí (ČÚZK) - http://services.cuzk.cz/wfs/inspire-cp-wfs.asp • Placené WFS služby v ČR pro: ZABAGED, Geonames Laboratoř geoinformatiky a kartografie • Bird Studies Canada (BSC) http://www.bsc-eoc.org/cgi- bin/bsc_ows.asp?version=1.0.0&service=WFS&request=GetCapabilities • UN World Demo Dataset http://webservices.ionicsoft.com/unData/wfs/UN • Airports of the World http://webservices.ionicsoft.com/worldData/wfs/WORLD • Refractions Research http://www.refractions.net:8080/geoserver/wfs/GetCapabilities • GMap Demo Server (Canada) http://www2.dmsolutions.ca/cgi-bin/mswfs_gmap • MapInfo Global WFS Server http://www.mapinfo.com/miwfs • Canadian Geographical Names Service (CGNS) http://cgns.nrcan.gc.ca/wfs/cubeserv.cgi?datastore=cgns • Nova Scotia Civic Address File (GeoNOVA Portal) http://142.176.62.103:8194/servlet/WFS_NSCAF_P • Nova Scotia Topographic Database 1:10,000 (NSTDB) (GeoNOVA Portal) http://142.176.62.103:8194/servlet/WFS_NSTDB_10000_P • Nova Scotia Road Network (GeoNOVA Portal) http://142.176.62.103:8194/servlet/WFS_NS_NRN • Nova Scotia Geographic Names Database http://142.176.62.103:8194/servlet/WFS_NS_NAMES Laboratoř geoinformatiky a kartografie WFS servery – příklady ve světě Filter Encoding (FE) • mechanismus vytvořený OGC pro dotazování - umožňuje získat podmnožinu (prostorových) dat - dovoluje také setřídit získané výsledky • nastaví se filtr; porovnávají se instance v datové sadě s filtrem; ty, které vyhovují filtru tvoří tzv. sadu výsledků (result set); sada výsledků může být seřazena určitým způsobem • obdoba SQL dotazu “SELECT … FROM … WHERE … ORDER BY …” • rozšíření jiných webových služeb, typicky např. WFS • dotaz na BBOX je oproti WMS realizován pomocí jazyka FE (prostorový operátor BBOX) • verze 2.0, XML a KVP Laboratoř geoinformatiky a kartografie Filter Encoding • možnost kombinace geometrických, prostorových a porovnávacích operátorů • POST příklad: Box Laboratoř geoinformatiky a kartografie 4 FE – geometrické operátory Laboratoř geoinformatiky a kartografie gml:Envelope gml:Point gml:LineString gml:Polygon gml:Arc gml:Circle FE – prostorové operátory Laboratoř geoinformatiky a kartografie FE – porovnávací operátory Laboratoř geoinformatiky a kartografie LessThan GreaterThan LessThanEqualTo GreaterThanEqualTo EqualTo NotEqualTo Like Between NullCheck Web Coordinate Transformation Service (WCTS) • nejedná se o implementační specifikaci, discussion paper v0.4.0 • transformace prostorových dat mezi souřadnicovými systémy • podmnožina Web Processing Service (WPS) • transformuje tzv. feature i coverage data • využívá EPSG (European Petroleum Survey Group) databázi • request/response, KVP/SOAP, HTTP POST • Jeden český WCTS server v resortu ČÚZK: http://geoportal.cuzk.cz/WCTService/WCTService.svc/get? Laboratoř geoinformatiky a kartografie Web Coordinate Transformation Service (WCTS) GetCapabilities (popis možností, prostředků, funkčnosti webové služby – metadata služby) Transform (transformace vstupních prostorových dat) IsTransformable (informace o tom, zda transformaci zadávaných dat služba poskytuje) GetTransformation (informace o konkrétní transformaci konkrétních souřad. systémů) DescribeTransformation (informace o konkrétní transformaci) DescribeCRS (informace o konkrétním souřadnicovém referenčním systému) DescribeMethod (informace o konkrétní transformační metodě) Laboratoř geoinformatiky a kartografie Web Processing Service (WPS) • původně nazývaná Geoprocessing Service • přejmenováno kvůli možné záměně se zkratkou GPS • standardní rozhraní publikace prostorových procesů • online služba prakticky jakékoli GIS funkcionality • klientský přístup k přednastaveným výpočetním modelům operujícím nad prostorovými daty • pracuje nad vektorovými i rastrovými daty • výstup není definován • v ČR ani Evropě žádný oficiální veřejný WPS server • v Evropě jediný veřejný testovací WPS server http://193.56.4.167/ionicwrs/wrs/WRS Laboratoř geoinformatiky a kartografie 5 WPS požadavky • GetCapabilities - jména a obecné popisy nabízených procesů - verze specifikace • DescribeProcess - detailní informace o procesech - možné vstupy - povolené formáty - výstupy • Execute (provede; vstupní a výstupní parametry) Laboratoř geoinformatiky a kartografie Catalogue Service (CSW; CAT) • Catalogue Services for Web (CSW) • věcné, prostorové a časové vyhledávání • základem jsou metadata dle ISO 19115/19119/19139 • specifikace rozhraní mezi klienty a katalogovou službou • dotazovací prvky Laboratoř geoinformatiky a kartografie CSW požadavky • GetCapabilities – základní metadata služby • DescribeRecord – popis struktury metadatového záznamu • GetDomain – popis domény parametrů • GetRecords – vrací metadatové záznamy • GetRecordsById – vrací metadatové záznamy podle ID • HarvestRecords – získání zdrojů z konkrétního umístění na serveru • Transaction – sada akcí „vlož“, „aktualizuj“ a „smaž“ použitelná pro metadatové položky uchovávané v implementaci katalogové služby Laboratoř geoinformatiky a kartografie Operace GetRecords • RESULTTYPE – co je schopna katalogová služba vrátit - hits (počet nalezených záznamů) - results (vrací metadatové záznamy) - validate (testuje, zda je dotaz validní) • TYPENAMES – jaký profil metadat katalogová služba vrací - csw:Record (Dublin Core) - gmd:MD_Metadata (ISO 19115/19119) • ELEMENTSETNAME – množina prvků, kterou lze vrátit - brief - summary - full Laboratoř geoinformatiky a kartografie