1 Laboratoř geoinformatiky a kartografie GEOGRAPHY MARKUP LANGUAGE (GML) Laboratoř geoinformatiky a kartografie 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) Převzato z: http://www.fig.net/pub/cairo/ppt/wss/wss_02_portele_ppt.pdf Laboratoř geoinformatiky a kartografie 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“ (původně společnost Keyhole) až když existovalo GML, jde proto o duplicitu Laboratoř geoinformatiky a kartografie GML schéma, aplikační schéma a dokumenty 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 Laboratoř geoinformatiky a kartografie GML schéma • 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 Laboratoř geoinformatiky a kartografie GML schéma • 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í 2 Laboratoř geoinformatiky a kartografie GML aplikační schéma 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) Laboratoř geoinformatiky a kartografie Mapování do GML aplikačního schématu Převzato z: http://wiki.snowflakesoftware.com/display/GLDOC/Background+Concepts+-+XML,+GML+and+Application+Schemas Laboratoř geoinformatiky a kartografie Základní koncept GML Laboratoř geoinformatiky a kartografie Základní koncept GML • 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) Laboratoř geoinformatiky a kartografie • prvek (angl. feature) – abstrakce fenoménu reálného světa [ISO 19101] – tuto definici převzalo i OGC • pokrytí (angl. coverage) – podmnožina prvku (feature) – vícerozměrný fenomén mění se v prostoru a čase Terminologie: Coverage (pokrytí) Laboratoř geoinformatiky a kartografie • Digitální reprezentace určitého fenoménu měnícího se v prostoru a čase – N dimenzí, identické uchování prostoru a času – častěji diskrétní reprezentace (může být i kontinuální) • v tom případě dělitelná až na úroveň pixelu • Webové služby pro pokrytí (coverage) – původní data či jejich podmnožinu pro další zpracování skrze • OGC Web Coverage Service (WCS) • Web Coverage Processing Service (WCPS) – existují ale i další služby umožňující práci v „určité formě“ • WMS (náhled), WFS (přenos), WPS (zpracování), SOS (přenos),... Základní aspekty coverage (pokrytí) podle OGC (GML) 3 Laboratoř geoinformatiky a kartografie • Základním aspektem je vícerozměrnost – platí pro vektory i pro rastry Coverage (pokrytí) v GML 3.2.1 <> AbstractCoverage MultiSolid MultiSurface MultiCurve MultiPoint Mříž (grid) Rektifikovaná mříž (grid) Referencovatelná mříž (grid) Laboratoř geoinformatiky a kartografie • Mříž (GridCoverage) – v INSPIRE se nemá používat – bez georeference • Rektifikovaná mříž (RectifiedGridCoverage) – georeferencovaná mříž (grid) – např. ortofoto • Referencovatelná mříž (ReferenceableGridCoverage) – nemusí být ekvidistantní – bez explicitní georeference – např. satelitní snímky Coverage (pokrytí) v GML 3.2.1 Laboratoř geoinformatiky a kartografie Tyto reprezentace jsou coverage (pokrytí) Obrázky převzaty z: http://cuzk.cz http://muni.cz http://gis.zcu.cz/studium/ugi/cviceni/ch 08s01.html Laboratoř geoinformatiky a kartografie • 3 základní možnosti vč. jejich kombinací: – jako čisté GML – ve speciálním formátu – jako kombinace GML a jiného formátu Jak ukládat coverage? Laboratoř geoinformatiky a kartografie Ukázka kódování v čistém GML 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 0101 0001/0100 1101/0110 0101/0110 0011/0110 0100 Binární kódování dané mříže (gridu), stejně tak je možné uvést explicitní souřadnice např. TINu či multipoint Laboratoř geoinformatiky a kartografie Ukázka kombinovaného kódování ... orto_1476.tif image/tiff ... Doména povolených hodnot (jako např. 0-255) Odkazy na konkrétní mříž (grid) Značí, že georeferencování je obsaženo přímo v (hlavičce) souboru Odkaz na OGC specifikaci (geo)tiffu pro WCS 4 Laboratoř geoinformatiky a kartografie Ukázka kombinovaného kódování WCS server klient Informace Hodnota Název souboru orto_1476.tif Formát souboru GeoTIFF Komprese LZW Datum a čas snímku 2015-08-25T09:31:57 Souřadnice rohů snímku 48.90,49.25,16.10,19.90 … … Laboratoř geoinformatiky a kartografie • Analogie k Web Map Service (WMS), za jistých okolností můžeme také přímo získat obrázek, WCS jej ale nabízí v plném rozlišení (může být zpoplatněno, autorizováno) • OGC implementační specifikace – verze 1.0, 1.1, 2.0.1 – verze 2.0.1 není zpětně kompatibilní s WCS 1.0 – mnoho rozšíření a tzv. profilů pro jednotlivé domény – KVP, POST-XML, SOAP, REST – existují již funkční řešení s více než 100 TB dat • Základní výměnné formáty – GeoTIFF, netCDF, JPEG2000, GMLJP2 Základní funkcionalita OGC Web Coverage Service (WCS) Laboratoř geoinformatiky a kartografie • 3 základní (povinné) operace: – GetCapabilities • prvotní informace o serveru – kdo poskytuje jaká data, v jakém formátu, souřadnicovém systému, s jakými omezeními/rozšířeními, … – DescribeCoverage • detailní metadata o mříži (gridu) – GetCoverage • mříž (grid) nebo její podmnožina – možnost definice tzv. offerings » např. stažení ortofota ČR/kraje/jednotlivého ortofota Základní funkcionalita OGC Web Coverage Service Laboratoř geoinformatiky a kartografie Operace GetCapabilities Název Web Coverage Service (WCS) ZÚ Typ služby WCS Verze služby 2.0.1 Podporované jazyky čeština, angličtina Poplatky viz ceník na http://geoportal.cuzk.cz/Dokumenty/Cenik.rtf Zodpovědná osoba Zeměměřický úřad (ZÚ) E-mail web_coverage_service@zu.cz Podporované operace Získat metadata služby stahování dat (GetCapabilities) Popsat data (DescribeCoverage) Získat data (GetCoverage) Připojit vyhledávací službu WCS server klient http://geoportal.cuzk.cz/wcs? SERVICE=WCS&REQUEST=GetCapabilities&LANGUAGE=cze Laboratoř geoinformatiky a kartografie Operace GetCoverage WCS server klient orto.tif image/tiff http://geoportal.cuzk.cz/wcs? SERVICE=WCS&REQUEST=GetCoverage&COVERAGEID=orto Laboratoř geoinformatiky a kartografie Operace DescribeCoverage WCS server klienthttp://geoportal.cuzk.cz/wcs? SERVICE=WCS&REQUEST=DescribeCoverage&LANGUAGE=cze Informace Hodnota Název souboru orto_1476.tif Formát souboru GeoTIFF Komprese LZW Datum a čas snímku 2015-08-25T09:31:57 Souřadnice rohů snímku 48.90,49.25,16.10,19.90 … … 5 Laboratoř geoinformatiky a kartografie Rozšířené možnosti operace GetCoverage WCS server klient orto_1476.tif image/tiff http://http://geoportal.cuzk.cz/wcs? SERVICE=WCS&REQUEST=GetCoverage&COVERAGEID=orto&BBOX= 48.90,49.25,16.10,19.90&SUBSET=phenomenon-time("2005-04- 27T14:00:00Z")&FORMAT="image/tiff" Laboratoř geoinformatiky a kartografie • Základní nastavení nepodporuje složitější dotazovací mechanismy • Mnoho rozšíření a tzv. profilů – definice souřadnicových systémů – dotazy na konkrétní barevnou syntézu (Range Subsetting) – interpolace vykonané službou – transakce – coverage collection (např. ortofoto 2012 – 2013) – změna velikosti pixelu vykonaná službou (Scaling extension) – reklasifikace hodnot, simulace povodní (mix WCS a WPS, tzv. Processing extension) – … Závěrem o Web Coverage Service (WCS) Laboratoř geoinformatiky a kartografie • Nabízí přímý přístup ke strukturované geografické informaci na Webu na úrovni prvků a vlastností prvků (atributů) • Komunikační vzor požadavek/odpověď (request/response) – požadavek KVP/XML/GML – odpověď XML/GML – HTTP GET, HTTP POST, SOAP (XML) • Typy WFS – Simple: GetFeature s předdefinovanými dotazy (StoredQueries) – Basic: Simple + Filter Encoding – Transactional: Basic + transakce Web Feature Service (WFS) Laboratoř geoinformatiky a kartografie • 3 verze • WFS 1.0 – GML 2.2 • WFS 1.1 – GML 2.2, 3.1 • WFS 2.0 – GML 2.2, 3.1, 3.2.1 • Operace • GetCapabilities, DescribeFeatureType, GetPropertyValue, GetFeature, GetFeatureWithLock, LockFeature, Transaction, CreateStoredQuery, DropStoredQuery, ListStoredQueries, DescribeStoredQueries Web Feature Service (WFS) Laboratoř geoinformatiky a kartografie • GetCapabilities – http://services.cuzk.cz/wfs/inspire-cp- wfs.asp?SERVICE=WFS&REQUEST=GetCapabilities Web Feature Service (WFS) – příklady operací Laboratoř geoinformatiky a kartografie • GetFeature – http://services.cuzk.cz/wfs/inspire-cp- wfs.asp?service=WFS&version=2.0.0&request=GetF eature&typenames=CadastralBoundary&BBOX=- 599098,-1159750,-598602,- 1159520&srsName=urn:ogc:def:crs:EPSG::5514 Web Feature Service (WFS) – příklady operací 6 Laboratoř geoinformatiky a kartografie • DescribeFeatureType – http://services.cuzk.cz/wfs/inspire-cp- wfs.asp?service=WFS&version=2.0.0&request=descri beFeatureType&typename=CP:CadastralBoundary Web Feature Service (WFS) – příklady operací Atribut Detaily inspireId primární klíč nationalCadastralR eference unikátní identifikátor délka v metrech beginLifeSpanVersi on datum a čas zaznamenání v databázi esitmatedAccuracy odhadovaná poziční přesnost v metrech s přesností jednoho desetinného místa gml_id identifikátor parcely … … Laboratoř geoinformatiky a kartografie • DescribeStoredQueries – http://services.cuzk.cz/wfs/inspire-cp- wfs.asp?service=wfs&version=2.0.0&request=describ eStoredQueries Web Feature Service (WFS) – příklady operací Laboratoř geoinformatiky a kartografie • Nevýhody WFS – pomalé – nafouklé – komplikované – slabá SOAP implementace … • zato interoperabilní Web Feature Service (WFS) Laboratoř geoinformatiky a kartografie • V ČR – zdarma • http://services.cuzk.cz/wfs/inspire-cp-wfs.asp • http://services.cuzk.cz/wfs/inspire-ad-wfs.asp • http://services.cuzk.cz/wfs/inspire-au-wfs.asp • https://gis.nature.cz/arcgis/services/UzemniOchrana/ChranU zemi/MapServer/WFSServer – placené • http://geoportal.cuzk.cz/WFS_ZBG/WFService.aspx • http://geoportal.cuzk.cz/wfs_gn/wfservice.aspx • Na světě několik tisíc služeb (většina v Evropě) Příklady WFS v ČR a Evropě Laboratoř geoinformatiky a kartografie 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 7 Laboratoř geoinformatiky a kartografie FE – geometrické operátory gml:Envelope gml:Point gml:LineString gml:Polygon gml:Arc gml:Circle Laboratoř geoinformatiky a kartografie FE – prostorové operátory Laboratoř geoinformatiky a kartografie FE – porovnávací operátory LessThan GreaterThan LessThanEqualTo GreaterThanEqualTo EqualTo NotEqualTo Like Between NullCheck Laboratoř geoinformatiky a kartografie • GetFeature (zde s výběrem katastrální území podle ID) – http://services.cuzk.cz/wfs/inspire-cp- wfs.asp?service=WFS&version=2.0.0&request=GetFeature&typenames=CadastralParcel &srsName=urn:ogc:def:crs:EPSG::5514&FILTER= WFS s FE – příklad operace Laboratoř geoinformatiky a kartografie 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ě) 8 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 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 Intersect jako prostorový operátor