Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Institut für Kartographie und Geoinformation, Uni Bonn Lehrstuhl für Geoinformation, Prof. Dr. Plümer, Dr. Gröger, Dr. Kolbe GIS III – Vorlesung 15 Geography.

Ähnliche Präsentationen


Präsentation zum Thema: "Institut für Kartographie und Geoinformation, Uni Bonn Lehrstuhl für Geoinformation, Prof. Dr. Plümer, Dr. Gröger, Dr. Kolbe GIS III – Vorlesung 15 Geography."—  Präsentation transkript:

1

2 Institut für Kartographie und Geoinformation, Uni Bonn Lehrstuhl für Geoinformation, Prof. Dr. Plümer, Dr. Gröger, Dr. Kolbe GIS III – Vorlesung 15 Geography Markup Language – Teil 1

3 T. H. Kolbe: Geography Markup Language – Teil 1 2 Geography Markup Language GML GML ist eine XML-Anwendung zum Transport und zur Speicherung von Geodaten. Spezifikation durch das Open Geospatial Consortium Version 3.0 am 29. Januar 2003 verabschiedet –Spezifikationen abrufbar unter: –Rückwärtskompatibilität: GML2-Instanzdokumente sind gültige GML3-Instanzdokumente; Schemata müssen (leicht) angepasst werden Gemeinsame Weiterentwicklung durch OGC & ISO: GML 3.1 wird ISO-Standard Normbasierte Austauschschnittstelle (NAS) von ALKIS verwendet GML3

4 T. H. Kolbe: Geography Markup Language – Teil 1 3 Open Geospatial Consortium Internationales Standardisierungsgremium –Zusammenschluss von Systemherstellern, Datenlieferanten, Nutzern und Wissenschaftlern –Non-profit, aber Mitgliedschaft ist beitragspflichtig 1994 gegründet (bis 09/2004: OpenGIS Consortium) Ziel: Entwicklung von Industriestandards für GIS –Offene Standards, d.h. frei für Jedermann nutzbar –Spezifikationen kostenlos von Homepage herunterladbar Bekannteste Standards: GML, Web Map Service, Web Feature Service seit 1998 offizielle Zusammenarbeit mit ISO TC 211

5 T. H. Kolbe: Geography Markup Language – Teil 1 4 Entwurfsziele von GML3 Offenes, herstellerneutrales Rahmenkonzept zur Definition raumbezogener Anwendungsmodelle Transport und Speicherung von Schemata und Datensätzen Unterstützung bei der Bildung von Fachschemata Ermöglichung von verteilten raumbezogenen Anwendungsschemata und Datensätzen Möglichkeit der Profilbildung (Teilmengen von GML3)  Interoperabilität für komplexe Geodaten

6 T. H. Kolbe: Geography Markup Language – Teil 1 5 Überblick über GML3 Objektorientierte Modellierungsmöglichkeiten –Generalisierungen/Spezialisierungen & Aggregationen Einfache und komplexe Geometrien –1D: Geraden, Splines, Kreisbögen –2D: planare Flächen, komplexe Interpolationsmethoden –3D: Volumina als Boundary Representation –Zusammengesetzte Geometrien Topologie (mit und ohne Geometriebindung) Koordinaten- und Zeitbezugssysteme Coverages (Raster, TINs, Punktraster, Landkarten)

7 T. H. Kolbe: Geography Markup Language – Teil 1 6 Unterschiede zu anderen Datenformaten Objektorientiert; erlaubt semantische Modellierung –im Gegensatz zu rein geometrischen Modellen (wie CAD- Formaten oder VRML) oder Geometrietyp-orientierten GIS- Modellen (z.B. Shapefiles):  Objektbildung (mit ID)  räumliche und nichträumliche Eigenschaften  Spezialisierungshierarchien (Taxonomien) abbildbar  Bestandteilshierarchien  Assoziationen / Relationen zu anderen Objekten Gemischte Verwendung unterschiedlicher räumlicher Bezugssysteme XML-basiert

8 T. H. Kolbe: Geography Markup Language – Teil 1 7 Bezüge zu anderen Standards / Normen GML3 OGC Abstract Specifications ISO Encoding ISO Temporal Schema ISO Metadata ISO Application Schemas ISO Coverages ISO Spatial Schema W3C XML, SMIL, SVG (Auszug)

9 T. H. Kolbe: Geography Markup Language – Teil 1 8 Anwendungsmodellierung in GML3 GML3 ist ein Meta-Format zur Spezifikation von Austauschformaten für Geoinformationen –GML3-Spezifikation gibt durch abstrakte Elemente und Typen nur den Modellierungsrahmen vor –große Auswahl direkt verwendbarer Geometrie- und Topologieelemente enthalten Das konkrete Austauschformat ergibt sich erst durch Definition anwendungsspezifischer Typen und Elemente –Ableitung von den abstrakten GML3-Typen bzw. –Elementen durch Erweiterung oder Restriktion Verschiedene Anwendungen haben jeweils eigene, und damit unterschiedliche Anwendungsschemata

10 T. H. Kolbe: Geography Markup Language – Teil 1 9 Anwendungsmodell definiert... jeden konkreten, anwendungsspezifischen GML-Typ bzw. -Element Dies sind in der Regel Geoobjektarten mit ihren Eigenschaften (Features) –z. B. Straße, Fluss, Flurstück, Stadt, Point-of-Interest etc. Mengen von Geoobjekten (FeatureCollections) –z. B. Katasterauszug, Stadtmodell, alle Flüsse etc. Feldbasierte Raummodelle (Coverages) –z.B. rasterbasierte Digitale Geländemodelle (DGM) Beobachtungen und Messwerte (Observations) Begriffsbibliotheken (Dictionaries)

11 T. H. Kolbe: Geography Markup Language – Teil 1 10 Wesentliche Komponenten von GML Feature (Merkmal), steht für ein Realweltobjekt –Eigenschaften werden als Properties bezeichnet Differenzierung in raumbezogene und nicht-raumbezogene Eigenschaften raumbezogene Eigenschaften werden durch Geometrie- oder Topologie-Objekte modelliert Feature Collection (Menge von Features) Geometry (Geometrie-Objekte) –z.B. Punkte, Linien, Polygone, TINs, Volumina Topology (Topologie-Objekte) –z.B. Nodes, Edges, Faces

12 T. H. Kolbe: Geography Markup Language – Teil 1 11 Zusammenspiel der GML-Komponenten Feature ist die zentrale (abstrakte) Klasse Modellierung nichtgeometrischer Eigenschaften von Features: –durch Attribute mit Standarddatentypen wie z.B. String, Integer,... –durch Assoziationen von Feature zu anderen Klassen Geometry ist die (abstr.) Oberklasse aller Geometrie-Objekte Geometrische Eigenschaften von Features werden durch die Assoziation geometryProperty mit Geometrie-Objekten modelliert Die Bestandteile einer Feature Collection sind über die Assoziation featureMember erreichbar FeatureCollection Feature Geometry feature Member * geometry Property * nicht- geometrische E.

13 T. H. Kolbe: Geography Markup Language – Teil 1 12 Beispiel für eine GML-Modellierung name:string StrasseStadt konkret GeometrieFeature abstrakt geometry Property * LineString curve Property nichtgeometrische Eigenschaft Spezifische geome- trische Eigenschaft: linienhafte Geometrie Realweltobjekte werden als Unterklasse der Klasse Feature modelliert Es sind für alle Geometrie- Klassen eigene geometrische Eigenschaften definiert

14 T. H. Kolbe: Geography Markup Language – Teil 1 13 Aufbau von GML: GML-Objekte _Object _GML (from gmlBase) + description [0..1] : StringOrRef + name [0..*] : Code + id [0..1] : ID Dictionary _Metadata + id [0..1] : ID Definition + id : ID MetadataPropertyChoice +metadataProperty 0..n _Feature + fid [0..1] : CharacterString +dictionaryEntry 0..n „Ein GML-Objekt ist ein Objekt mit Identität“

15 T. H. Kolbe: Geography Markup Language – Teil 1 14 XML Schema für GML-Objekte Abstraktes Element gml:_GML ist Wurzelelement jedes GML3-Instanzdokuments (Datendatei) Standardeigenschaften: Name, Beschreibung und Metadaten –modelliert als Kindelemente von gml:_GML Entwurfsmuster in GML3: globales Element (dient oftmals als Kopf einer substitution- Group) + ent- sprechendem globalen Typ Entwurfsmuster in GML3: globales Element (dient oftmals als Kopf einer substitution- Group) + ent- sprechender globaler Datentyp

16 T. H. Kolbe: Geography Markup Language – Teil 1 15 Repräsentation von Eigenschaften Eigenschaften (Properties) in GML3 ausschließlich durch Kindelemente eines GML-Objekts repräsentiert –Kindelement definiert den Datentyp der Eigenschaft –keine Verwendung von XML-Attributen zur Repräsentation von Objekteigenschaften Eigenschaftstyp darf nicht von gml:AbstractGMLType abgeleitet sein –kein GML-Objekt ist direktes Kindelement eines anderen GML- Objekts –Kein XML-Element kann gleichzeitig GML-Objekt und GML- Eigenschaft sein

17 T. H. Kolbe: Geography Markup Language – Teil 1 16 Eigenschaftswerte: by value / by reference Eigenschaftswerte können auf 2 Arten angegeben werden: By value –Eigenschaftswerte sind als Kindelement eingebettet („inline“) By reference –Das Eigenschaftselement ist leer und verweist stattdessen auf ein anderes Objekt (XML-Element mit ID) ,

18 T. H. Kolbe: Geography Markup Language – Teil 1 17 XML-Kodierung von GML-Features (I) XML-Kodierung von Features ist in der Schema-Datei feature.xsd zusammengefasst Features werden durch Elemente repräsentiert –Es gibt ein vordefiniertes abstraktes Element _Feature vom Typ AbstractFeatureType darf selber nicht in Instanzdokumenten vorkommen  für Features müssen eigene Elementnamen vergeben werden –Elementtyp muss vom (abstrakten) Typ AbstractFeatureType direkt oder indirekt abgeleitet werden –Für das Element muss explizit spezifiziert werden, dass es stellvertretend für das Element _Feature verwendet wird mittels Substitution Group (siehe folgendes Beispiel)

19 T. H. Kolbe: Geography Markup Language – Teil 1 18 XML-Kodierung von GML-Features (II) Definition von _Feature in der Schema-Datei feature.xsd: ... ... GML-Objekt _Feature erbt von _GML Eigenschaften description name id und definiert die Eig. boundedBy location GML-Objekt _Feature erbt von _GML Eigenschaften description name id und definiert die Eig. boundedBy location Rückwärtskompatibilität zu GML2: ID-Attribut fid

20 T. H. Kolbe: Geography Markup Language – Teil 1 19 Feature-Eigenschaft boundedBy mit der gml:boundedBy-Property kann für jedes Feature ein umgebendes Rechteck (Bounding Box) bzw. Volumen angegeben werden Envelope ist ein GML-Geometrieobjekt

21 T. H. Kolbe: Geography Markup Language – Teil 1 20 Feature-Eigenschaft location mit der gml:location-Property kann für jedes Feature die Lagegeometrie oder ein Ortsname angegeben werden

22 T. H. Kolbe: Geography Markup Language – Teil 1 21 XML-Kodierung von GML-Features (III) Features dürfen beliebig viele nichtgeometrische Eigenschaften besitzen –Jede Eigenschaft wird in einem eigenen Element eingeschlossen Features dürfen beliebig viele geometrische Eigenschaften besitzen –Jede geometrische Eigenschaft wird in einem eigenen Element eingeschlossen –Das Element bezeichnet den Datentyp bzw. die Rolle des Geometrie-Objekts (z.B. surfaceProperty) –Kindelement des „Geometrie-Eigenschaftselements“ ist ein Geometrie-Objekt (z.B. Point, Line, Polygon usw.)

23 T. H. Kolbe: Geography Markup Language – Teil 1 22 Beispiel zur XML-Kodierung 134 Jupp Zupp Meckenheimer Allee... surfaceProperty, die als Kindelement ein Polygon besitzt

24 T. H. Kolbe: Geography Markup Language – Teil 1 23 Feature Eigenschaften Features können auch Eigenschaften besitzen, die selber Features sind Abbildung von Assoziationen / Aggregationen –1:1-Beziehung über referenziertes Feature –1:n-Beziehung über FeatureCollection mit referenzierten Features

25 T. H. Kolbe: Geography Markup Language – Teil 1 24 FeatureCollection Eine FeatureCollection ist eine Sammlung von Features kann null oder mehr FeatureMembers besitzen –featureMember ist ein Property von FeatureCollection –featureMembers ist ein ArrayProperty von FeatureCollection ist selber ein Feature (FeatureCollection von FeatureCollection ist möglich; auch rekursiv) –eine FeatureCollection kann eigene räumliche und nichträumliche Eigenschaften besitzen

26 T. H. Kolbe: Geography Markup Language – Teil 1 25 XML Schema von FeatureCollection

27 T. H. Kolbe: Geography Markup Language – Teil 1 26 Eine konkrete FeatureCollection Ableitung vom Typ gml:AbstractFeatureCollectionType Ersatz für das abstrakte Element einzelne Features werden durch in die FeatureCollection eingebunden: Mitglieder müssen nicht die selbe Klasse haben

28 T. H. Kolbe: Geography Markup Language – Teil 1 27 Beispiel für konkrete FeatureCollection

29 T. H. Kolbe: Geography Markup Language – Teil 1 28 Modellierung der Geometrie

30 T. H. Kolbe: Geography Markup Language – Teil 1 29 Modellierung der Geometrie _GML (from gmlBase) + description [0..1 ] : CharacterString + name [0..*] : CharacterString + i d [0..1] : ID GeometricComplex_GeometricPrimitive + gid [0..1] : CharacterString _CoordinateReferenceSystem (from CoordinateReferenceSystems) _Geometry +srsName 0..1 _GeometricAggregate

31 T. H. Kolbe: Geography Markup Language – Teil 1 30 Basiskonzepte des Geometriemodells Primitive –einfache, kontinuierliche geometrische Objekte Komplexe (GeometricComplex) –Menge geometrisch disjunkter Primitive Zusammengesetzte Geometrien (Composites) –spezielle Art von Komplexen: homogene Komposition von Primitiven und Composites derselben Dimension –isomorph zu Primitiven der entsprechenden Dimension –zusammenhängend –einzelne Primitive besitzen gemeinsame Teilgeometrien (Primitive niedriger Dimension, z.B. bei zwei benachbarten Flächen die Grenzlinie) Aggregate –Sammlungen einzelner Geometrieelemente, die nicht miteinander verbunden sein müssen; Überlappungen sind erlaubt !

32 T. H. Kolbe: Geography Markup Language – Teil 1 31 Hierarchie der Geometrietypen _Geometry +gid [0..1]: String _CoordinateReferenceSystem srsName 0..1 _GeometricPrimitiveGeometricComplex_GeometricAggregatePoint_Surface_Curve_Solid 0D1D2D3D

33 T. H. Kolbe: Geography Markup Language – Teil 1 32 Coordinate Reference System (CRS) zu den Geometriedaten muss das räuml. Bezugssystem (Coordinate Reference System) benannt werden, in dem die Koordinaten vorliegen bei zusammengesetzten Geometrien reicht es, wenn das Bezugssystem bei der Angabe des umschließenden Rechtecks (Bounding Box bzw. Envelope) benannt ist Benennung erfolgt u.a. auf Basis der Klassifikation geodätischer Bezugssysteme der European Petrol Survey Group EPSG (www.epsg.org), –Beispiel: EPSG:4326 entspricht WGS84 Verwendung in GML durch Angabe einer URI, diese kann in beliebigen Geometrie-Elementen als Attribut angegeben werden:

34 T. H. Kolbe: Geography Markup Language – Teil 1 33 Repräsentation von Koordinaten (I) 1. Coordinates Element: Liste von Koordinaten Die syntaktische Vorschrift zur Trennung der Dezimalstellen, der x und y Werte und der Koordinatenpaare wird durch die Attribute festgelegt ,24.12 Trennung Vor-/ Nachkommastelle (.) coordinate separator (,) tuple separator ( )

35 T. H. Kolbe: Geography Markup Language – Teil 1 34 Repräsentation von Koordinaten (II) 2. Pos Element: Liste von Koordinaten (n-dimensional)

36 T. H. Kolbe: Geography Markup Language – Teil 1 35 Envelope Element (I) Das Envelope Element dient zur Modellierung räumlicher Ausdehnung. Es besteht aus zwei Koordinatentupeln, die die diagonal gegenüber liegenden Eckpunkte beschreiben.

37 T. H. Kolbe: Geography Markup Language – Teil 1 36 Envelope Element (II) Beispiel: 0.0, , , ,100.0 Das Envelope Element dient zur Modellierung räumlicher Ausdehnung. Es besteht aus zwei Koordinatentupeln, die die diagonal gegenüber liegenden Eckpunkte beschreiben. Typische Verwendung: Angabe einer Bounding Box

38 T. H. Kolbe: Geography Markup Language – Teil 1 37 Point Geometry Element Ein Point Element besteht aus einem Koordinatentupel Beispiel:

39 T. H. Kolbe: Geography Markup Language – Teil 1 38 LineString Geometry Element LineString: Folge von Punkten, durch gerade Liniensegmente verbunden 100.0, , , , , ,130.0 Beispiel

40 T. H. Kolbe: Geography Markup Language – Teil 1 39 Polygon Geometry Element exterior interior exterior _Surface Polygon _Ring LinearRing +position [4..n]: Position +interior 0..n +exterior 0..1

41 T. H. Kolbe: Geography Markup Language – Teil 1 40 Polygon Geometry Element - Beispiel 0.0, , , , , , , , , ,60.0

42 T. H. Kolbe: Geography Markup Language – Teil 1 41 Zusammenfassung GML3 ist der derzeit umfassendste Standard zur Repräsentation von Geodaten –0D-, 1D-, 2D- und 3D-Geometrien; Topologie; Zeit –Coverages; Observations; Relationen zwischen Geoobjekten GML3 spezifiziert ein Meta-Format GML3-Format A  GML3-Format B –Kompatibel nur dann, wenn Anwendungsschema gleich –NAS ist das gemeinsame Anwendungsschema für ALKIS Wermutstropfen: –Hohe Komplexität, auch bzgl. Einarbeitung –Dateien werden durch XML-Overhead sehr groß

43 T. H. Kolbe: Geography Markup Language – Teil 1 42 Beispiel: Ein einfaches 2D-Stadtmodell Gemarkung Euskirchen Flur 14 Flurstück 5 Eigentümer Leo Land Gemarkung Euskirchen Flur 14 Flurstück 7 Eigentümer Stadt Euskirchen Meckenheimer Allee

44 T. H. Kolbe: Geography Markup Language – Teil 1 43 UML-Diagramm für das 2D-Stadtmodell Stadtmodell Flurstück strname: string Strasse ** feature Member GeometryProperty AbstractFeatureCollectionAbstractFeatureAbstractGeometry feature Member * geometry Property * Polygon LineString curveProperty surfaceProperty 1 1

45 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Anwendungsschema (1) ... Kopf der Schema-Datei 1.Schema-Element mit Angabe des Namensraums, für den das Schema definiert wird 2.Deklaration aller referenzierten Namensräume (hier: XML-Schema, XLink, GML und der des Anwendungsschemas) 3.Import der benötigten Schemadefinitionen (hier: Basisschema feature.xsd von GML3; lädt weitere nach)

46 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Anwendungsschema (2)... ... Deklaration des Wurzelements Erstes in der XML-Schema-Datei definiert das Wurzelelement für die GML-Instanzdokumente (Datendateien) Deklaration des Elements Stadtmodell; dieses kann überall verwendet werden, wo GML ein Feature erwartet Definition des Typs StadtmodellType als Unterklasse der abstrakten GML-Klasse AbstractFeatureCollectionType

47 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Anwendungsschema (3) Repräsentation der Features (1) Deklaration des Elements Flurstueck; dieses kann überall verwendet werden, wo GML ein Feature erwartet Definition des Typs FlurstueckType als Unterklasse der abstrakten GML-Klasse AbstractFeatureType Attribute werden durch Kindelemente mit einfachen Daten- typen realisiert Repräsentation der Ausdehnung hier über vordefinierte GML-Geometrie- Eigenschaft

48 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Anwendungsschema (4) Repräsentation der Features (2) Deklaration des Elements Strasse; dieses kann überall verwendet werden, wo GML ein Feature erwartet Definition des Typs StrasseType als Unterklasse der abstrakten GML-Klasse AbstractFeatureType Repräsentation des Straßenverlaufs hier über vordefinierte GML-Geometrie- Eigenschaft

49 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Anwendungsschema StadtmodellFlurstückStrasseLineStringPolygon

50 T. H. Kolbe: Geography Markup Language – Teil 1 49 GML-Instanzdokument – Beispiel Gemarkung Euskirchen Flur 14 Flurstück 5 Eigentümer Leo Land Meckenheimer Allee

51 T. H. Kolbe: Geography Markup Language – Teil 1 50 Kataster der Stadt XY.. 2D-Stadtmodell Instanzdokument (1) nächste Folie

52 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Instanzdokument (2) BoundedBy: Die in boundedBy definierte Envelope umschließt alle Geodaten dieser Datei. , ,4353.6

53 T. H. Kolbe: Geography Markup Language – Teil 1 52 Kataster der Stadt XY , , D-Stadtmodell Instanzdokument (3) nächste Folie

54 T. H. Kolbe: Geography Markup Language – Teil 1 53 Flst. 5 Euskirchen 14 Leo Land. 2D-Stadtmodell Instanzdokument (4) nächste Folie

55 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Instanzdokument (5) , , , , , ,4300.0

56 T. H. Kolbe: Geography Markup Language – Teil 1 55

57 T. H. Kolbe: Geography Markup Language – Teil D-Stadtmodell Instanzdokument (7) Meckenheimer Allee , , ,4310.7

58 T. H. Kolbe: Geography Markup Language – Teil 1 57 Kataster der Stadt XY , , Flst. 5 Euskirchen 14 Leo Land , , , , , , Meckenheimer Allee , , , Nicht den Kopf verlieren Gemarkung Euskirchen Flur 14 Flurstück 5 Eigentümer Leo Land


Herunterladen ppt "Institut für Kartographie und Geoinformation, Uni Bonn Lehrstuhl für Geoinformation, Prof. Dr. Plümer, Dr. Gröger, Dr. Kolbe GIS III – Vorlesung 15 Geography."

Ähnliche Präsentationen


Google-Anzeigen