Podstawy metodyczne i technologiczne
This presentation is the property of its rightful owner.
Sponsored Links
1 / 42

Warsztaty naukowe w ramach XIII Konferencji PTIP „Systemy informacji przestrzennej” PowerPoint PPT Presentation


  • 102 Views
  • Uploaded on
  • Presentation posted in: General

Podstawy metodyczne i technologiczne infrastruktur geoinformacyjnych Cz. 4: Język GML (Geography Markup Language). Warsztaty naukowe w ramach XIII Konferencji PTIP „Systemy informacji przestrzennej” Warszawa, 8.10.2003. Janusz Michalak Uniwersytet Warszawski.

Download Presentation

Warsztaty naukowe w ramach XIII Konferencji PTIP „Systemy informacji przestrzennej”

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Podstawy metodyczne i technologiczneinfrastruktur geoinformacyjnychCz. 4: Język GML (Geography Markup Language)

Warsztaty naukowe w ramach

XIII Konferencji PTIP

„Systemy informacji przestrzennej”

Warszawa, 8.10.2003

Janusz Michalak

Uniwersytet Warszawski


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Język GML został opracowany i jest rozwijany przez zespół utworzony przy OGC – obecnie liderami tego zespołu są:Ron Lake (Galdos Sustems) i Simon Cox (CSIRO)

[Źródło: http://www.gmlcentral.org]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

<jakiśElement>Wnętrze_jakiegośElementu</jakiśElement>

znacznik początkuznacznik końca

Znacznik początku może zawierać atrybuty, na przykład nazwę:

<jakiśElement nazwa="NazwaJakegośElementu">

Element złożony zawiera w sobie inne elementy – proste lub również złożone:

<elementZłożony><elementProsty>"coś"</elementProsty>...</elementZłożony>

Bardziej czytelna forma zapisu – z wcięciami:

<elementZłożony>

<elementProsty>

"coś"

</elementProsty>

<innyElementProsty>

"coś innego"

</innyElementProsty>

</elementZłożony>.

„abc” języka XML


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Przykład prostego schematu definiującego element złożony:

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema

xmlns:xs="http://www.w3.org/2001/XMLSchema"

elementFormDefault="qualified" attributeFormDefault="unqualified">

<xs:element name="OkresCzasu">

<xs:annotation>

<xs:documentation>

Prosty przykład schematu

</xs:documentation>

</xs:annotation>

<xs:complexType>

<xs:sequence>

<xs:element name="Nazwa"/>

<xs:element name="Początek"/>

<xs:element name="Koniec"/>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

sposób zapisu schematu (XML Scheme) podlega tym samym prawom co dokumentu


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Odpowiadający mu zapis (dokument) w XML:

<?xml version="1.0" encoding="UTF-8"?>

<OkresCzasu

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:geol="http://netgis.geo.uw.edu.pl/schemas/czas.xsd">

<Nazwa>Jakiś okres czasu</Nazwa>

<Początek>1.1.1996</Początek>

<Koniec>31.12.2003</Koniec>

</OkresCzasu>

<!-- ... -->


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Okno informacyjne programu narzędziowego XML-Spy – jest to najpopularniejszy edytor i procesor dla opracowywania i przetwarzania plików XML – w tym także GML


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Tabelaryczne przedstawienie deklaracji i definicji elementów

geoprzestrzennych zawartych w pliku

feature.xsd należącym do specyfikacji GML 3.0


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Objaśnienia diagramów

generowanych przez

edytor XML_Spy


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Diagram XML wygenerowany przez program XML-Spy struktury elementu typu: osgb:AbstractLineStringPropertyType – większość elementów składowych tworzących tą strukturę należy do przestrzeni nazw gml:


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

abstrakcyjne i składniki

nieobowiązkowe

[Źródło:

archiwum OGC]

Diagram UML

przedstawiający

hierarchę

podstawowych

elementów języka

GML 3.

*

Nazwy pisane

pismem pochyłym

dotyczą elementów

abstrakcyjnych

Geometria

(abstrakcyjny

element

_Geometry)

nie jest

obowiązkowym

składnikiem

elementu

_Feature.

*

*

- wielokrotne dziedziczenie

<element name="_Object" abstract="true">


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Poprawiony

model UML dla

elementów typu

Choice

Nazwy pisane

pismem pochyłym

dotyczą elementów

abstrakcyjnych

Geometria

(abstrakcyjny

element

_Geometry)

nie jest

obowiązkowym

składnikiem

elementu

_Feature.

Taki model elementu Choice jest zgodny z regułami określonymi w

„Profilu UML dla XML” (D. Carlson, 2001)


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Najbardziej podstawowym (bazowym) elementem abstrakcyjnym w GLM 3 jest _Object. Wszystkie inne elementy są pochodnymi od niego. Zarówno geoprzestrzenne jak i niegeoprzestrzenne.

Z tego elementu są wyprowadzone

dwa inne elementy abstrakcyjne:

_GML dla innych rzeczywistych

elementów związanych z informacją geoprzestrzenną i _MetaData dla opisu danych.

W aplikacjach tego języka elementy dotyczące informacji

niegeoprzestrzennej powinny być pochodnymi od abstrakcyjnego elementu _Object.

Dotyczy to takich elementów jak

opis właściciela nieruchomości lub dokumentu określającego własność.

niezdefiniowany typ prosty


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Składniki abstrakcyjnego elementu złożonego _Feature. FeatureCollection jest elementem pochodnym od _Feature

Element _Feature jest

elementem pochodnym

od abstrakcyjnego elementu

_Object – za pośrednictwem

elementu _GML (tłumaczenie

obu tych terminów na język

polski jako objekt prowadzi

do niejednoznaczności i

nieporozumień).

Wszystkie składniki elementu

_Feature są nieobowiązkowe

i jest on przeznaczony do

wyprowadzania tylko

rzeczywistych elementów

tosiadających atrybuty

geoprzestrzenne (tylko do

wyróżnień).


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Brytyjski projekt MasterMap realizowany przez

Ordnance Survey jest najbardziej zaawansowaną

aplikacją języka GML

[Źródło: http://www.ordnancesurvey.co.uk]


Przegl darka map zapisanych w gml firmy snowflake przeznaczona do aplikacji masrermap

Przeglądarkamapzapisanychw GML firmySnowflakeprzeznaczonado aplikacjiMasrerMap

[Źródło: http://www.snowflakesoft.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Zwiększenie skali mapy pozwala zobaczyć tysiące wyróżnień

(wszystkie elementy graficzne i symbole są zapisane wektorowa w XML)

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Każde wyróżnienie ma określonych szereg atrybutów

nie-geoprzestrzennych

(tabelka pokazuje wartości tych atrybutów dla budynku

zaznaczonego kolorem brązowym)

[Źródło: http://www.ordnancesurvey.co.uk/ ]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

W schematach przestrzeni nazw osgb nie stosuje się kodów

i słowników, tylko enumeratory zawierające pełne określenia

atrybutów wyliczeniowych

[Źródło: http://www.ordnancesurvey.co.uk/ ]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

W dalszej kolejności

projekt MasterMap

przewiduje, że

dokumenty GML

zawierające dane

dla poszczególnych

obszarów („mapy”

wektorowe) będą

uzupełnione

ortoobrazami w

dużej skali i o

wysokiej

rozdzielczości

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Wielokrotne powiększenie ortoobrazu pozwala zobaczyć jego wysoką rozdzielczość

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Fragment nagłówkowy jednego ze schematów XML projektu MasterMap

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

GML

Fragment pliku zapisu MasterMap – aplikacji GML

W dokumencie tym obok własnej przestrzeni nazw osgb występuje

przestrzeń nazw gml w elementach będących składnikami elementów własnych

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Część nagłówkowa dokumentu MasterMap – aplikacji GML

Plik zawiera zbiór wyróżnień (osgb:FeatureCollection) ograniczony wielobokiem (gml:Poligon) w formie liniowego pierścienia (gml:LinearRing)

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Fragment pliku OSDNFFeatures.xsd definiujący typ „punkt topograficzny”

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Lista systemów programowych implementujących GML:

Objaśnienia: nazwa firmy,nazwa systemu, S – server, K – klient, E – encoder (GML/XML)

  • implementacje GML 2.0:

    • Cogent Logic Corp. :XchainJ (S&K)

    • CubeWerx Inc. :CubeXPLOR (K), CubeServ Web Map Server (S),

      CubeServ – Web Feature Server (S),

      CubeServ – Cascading Web Map Server (S)

    • Pacific GeoTech Systems Ltd. : shp2gml GeoBroker (S&K)

  • implementacje GML 2.1:

    • Cadcorp Ltd. :Cadcorp SIS (K)

    • ESRI :Arc Explorer (K), ArcIMS (S)

    • Galdos Systems Inc. : Geographic Data Server (GDS) (S), GML Schema Parse (E),

      FreeStyler (S)

    • INT Inc. :JCarnacGIS (S&K)

    • Intergraph Corp. :GeoMedia GML Data Server (K)

    • Lat-Lon:deegree (S&K)

    • MapInfo Corp. : MapXtreme Java Ed. (S&K), MapInfo Prof. (E), MapXtend (E),

      MapMaker J Server (S&K), MapRouting J Server (S&K)

    • Snowflake Software : GO Loader (K)

    • Social Change Online Pty Ltd.: MapBroker (K), WebMap Composer (K), WFS-Lite (S)

  • implementacje GML 3.0:

    • Compusult Ltd. :Web Enterprise Suit (S&K), Map Manager (S&K)

    • Galdos Systems Inc.:GDS (Geographic Data Server) (S)

Stan na dzień: 28.08.03 [Źródło: Archiwum OGC]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Przykład zapisu w XML symbolu kartograficznego „drzewo liściaste”

i grupy symboli „drzewa liściaste i iglaste”

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Przykład zastosowania symboli kartograficznych

zapisanych w XML

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Przykład zastosowania symboli kartograficznych

zapisanych w XML - II

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Mercury

(ObjectStore)

MAIA

(Oracle)

Aktualizacje z terenu

Wyniki wyszukiwania zwracane w GML

Aktualizacje w XML

Systemyobsługi MasterMap(Ordnance Survey)

  • MasterMap przechowuje i aktualizuje dane geoprzestrzenne z obszaru Wielkiej Brytanii w skali 1:1250

  • MAIA zbiera i przechowuje aktualizacje danych z pomiarów w terenie

  • Aktualizacje są przesyłane w języku XML do systemu Mercury i przechowywane tam jako obiekty C++ (pod OSZBD ObjectStore)

  • Mercury udostępnia dane na żądanie klientów w językuserves GML

widownia

za kulisami

scena

[Źródło: http://www.ordnancesurvey.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Logical Model

GML

Physical Model

Create Tables

Routing

Create Partitions

Setup Translator

Oracle 9iASMap Viewer

Load Data

GIS

Apply Updates

Index Data

Updates

Your App

Maintain Archive

Schemat przedstawiający funkcje realizowane przez GO-Loader firmy Snowflake

za kulisami

[Źródło: http://www.snowflakesoft.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Oprogramowanie GO-Loader firmy Snowflake przeznaczone do konwersji danych MasterMap (pozwala ono dane zapisane w GML załadować do bazy Oracle) [Źródło: http://www.snowflakesoft.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Aplikacja C++

Trwałe obiekty

Nietrwałe obiekty

Co to jest ObjectStore?

ObjectStore jest ‘czystą’ obiektową bazą danych (OSBD – obiektowy system zarządzania bazą danych)

  • Daje możliwość trwałego składowania obiektów C++

  • Obiekty są składowane w takiej samej postaci jak nietrwałe obiekty C++

    • Obiekty nietrwałe są przechowywane na stosie lub stercie (w RAM) i przestają istnieć po zakończeniu działania aplikacji C++

  • Obiekty trwałe (w bazie danych) są dostępne i mogą być używane w taki sam sposób jak zwykłe obiekty C++


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Projektowanie struktury obiektowej bazy danych w systemie ObjectStore odbywa się przy pomocy programu Designer w języku UML. Przykład dotyczy próby zastosowania nowej Polskiej Normy w odniesieniu do punktu i krzywej


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

-X

-X

-X

WFS

WFS

WFS

FR EuroRoads Ontology

DE EuroRoads Ontology

UK EuroRoads Ontology

DE Road GML

DE Road XSD

UK Road GML

UK Road XSD

FR Road GML

FR Road XSD

Euro Roads GMLEuro Roads XSD

Euro Roads GMLEuro Roads XSD

Euro Roads GMLEuro Roads XSD

DE Client

UK Client

FR Client

EU EuroRoads Clients

Rozszerzenie standardu OGC dla WFS o funkcje ontologiczne i semantyczne – pozwala ono na semantyczną translację geoinformacji pomiędzy różnymi NSDI

WFS-X jest

realizowany przez

współpracujące

ze sobą systemy

GO-Loader i

GO-Publisher

firmy Snowflake.

[Źródło: http://www.snowflakesoft.co.uk]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

przez dziedziczenie – „extension”(element

x:d jest pochodny od elementu x:c)

przez zawieraniez odwołaniem - ”ref=”

(element x:b jest składnikiem elementu x:a)

przez użycie odsyłacza – „Xlink:href” (element

x:f odwołuje się w dokumencie do elementu x:e)

Łączenie w aplikacjach schematów GML z innymi schematami XML

Objaśnienia:

x:a

x:b

x:c

x:d

x:e

x:f

Dwie oddzielne, niepowiązane struktury w różnych schematach:

Hierarchiczna struktura elementów

innego schematu XML (NG – non-GML)

Hierarchiczna struktura

elementów schematu GML

ng:base

gml:base

gml:a

ng:c

ng:a

gml:c

ng:b

gml:b

ng:e

gml:e

ng:d

gml:f

gml:d

Czy przenosić ontologię GML

do danej dziedziny, czy nie?

ng:g

ng:f

gml:g


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

gml:base

gml:a

ng:base

gml:c

gml:b

ng:c

ng:a

ng:b

gml:e

gml:d

gml:f

ng:e

ng:d

gml:g

ng:g

ng:f

Łączenie schematów GML z NG przez

zawieranie z odwołaniem – ”ref=”

Schemat GML

Schemat NG (non-GML)

Rozszerzenie schematu NG: nowe elementy zawierają elementy schematu GML, np. :

<element ref=„gml:x”...>

ng:g1

ng:d1

ref=˝ ˝

ref=˝ ˝

ref=˝ ˝

gml:e

gml:f

gml:g

w UML: kompozycje


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

gml:base

gml:a

gml:c

gml:b

gml:e

gml:d

gml:f

gml:g

Łączenie schematów GML z NG przez

dziedziczenie – „extension”

Schemat GML

Schemat NG (non-GML)

ng:base

ng:c

ng:a

ng:b

ng:e

ng:d

ng:g

ng:f

ng:gml-f1

ng:gml-g1

Rozszerzenie schematu NG:

nowe elementy są

rozszerzeniami elementów schematu GML

ng:g

gml:e

ng:d

w UML: dziedziczenie


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

ng:base

ng:c

ng:a

ng:b

ng:e

ng:d

ng:g

ng:f

Łączenie schematów GML z NG przez

odsyłace – ”xlink:href=”

Dokument GML

Dokument NG (non-GML)

gml:base

gml:a

gml:c

gml:b

gml:e

gml:d

gml:f

gmlid2”

gmlid3”

gml:g

gmlid1”

Rozszerzenie schematu NG: nowe elementy zawierają odsyłacze do innego dokumentu

ng:d1

ng:g1

xlink:href=„doc1.gml#gmlid2”

xlink:href=„doc1.gml#gmlid1”

xlink:href=„doc1.gml#gmlid3”

w UML: asocjacje


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Trzy podstawowe konstrukcje GML 3 pozwalające na używanie

w aplikacjach odsyłaczy przy pomocy xlink

<attributeGroupname="AssociationAttributeGroup">

<attributeGroupref="xlink:simpleLink"/>

<attributeref="gml:remoteSchema"use="optional"/>

</attributeGroup>

<element name="_reference"type="gml:ReferenceType"abstract="true"/>

<complexTypename="ReferenceType">

<sequence/>

<attributeGroupref="gml:AssociationAttributeGroup"/>

</complexType>

<complexTypename="StringOrRefType">

<simpleContent>

<extensionbase="string">

<attributeGroupref="gml:AssociationAttributeGroup"/>

</extension>

</simpleContent>

</complexType>


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

Dokument XML (w tym przypadku GML) może być przy

pomocy procesora XSLT przetransformowany na różne

dokumenty HTML (lub XML) na podstawie różnych

arkuszy styli (CSS)

Zastosowanie

procesora XSLT

pozwala aby

geoinformacja

zapisana w GML

mogła być

zobrazowana

na wiele różnych

sposobów

(XSLT – eXtensible Stylesheet Language for Transformation)


Ionic konwersja gml do svg

Ionic:konwersjaGML do SVG

[Źródło: http://www.ionicsoft.com]


Warsztaty naukowe w ramach xiii konferencji ptip systemy informacji przestrzennej

GML 3 pozwala na zapis geoinformacji w 3D, lecz zobrazowanie graficzne takiej informacji nastręcza wiele problemów. Przykład: zobrazowanie pokrycia rastrowego (macierzowego) z uwzględnieniem trzeciego wymiaru w systemie GRASS


  • Login