57
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

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

Embed Size (px)

Citation preview

Page 1: 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

Institut für Kartographie und Geoinformation, Uni BonnLehrstuhl für Geoinformation, Prof. Dr. Plümer, Dr. Gröger, Dr. Kolbe

GIS III – Vorlesung 15

Geography Markup Language – Teil 1

Page 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

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: http://www.opengis.org– 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 19136

• Normbasierte Austauschschnittstelle (NAS) von ALKIS verwendet GML3

Page 3: 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

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

Page 4: 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

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

Page 5: 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

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)

Page 6: 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

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

Page 7: 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

T. H. Kolbe: Geography Markup Language – Teil 1 7

Bezüge zu anderen Standards / Normen

GML3

OGC AbstractSpecifications

ISO 19118Encoding

ISO 19108Temporal Schema

ISO 19115Metadata

ISO 19109Application Schemas

ISO 19123Coverages

ISO 19107Spatial Schema

W3CXML, SMIL, SVG

(Auszug)

Page 8: 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

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

Page 9: 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

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)

Page 10: 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

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

Page 11: 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

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 GeometryfeatureMember

*geometryProperty

*nicht-geometrische E.

Page 12: 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

T. H. Kolbe: Geography Markup Language – Teil 1 12

Beispiel für eine GML-Modellierung

name:string

Strasse Stadt konkret

Geometrie Feature abstraktgeometryProperty

*

LineStringcurve

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

Page 13: 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

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“

Page 14: 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

T. H. Kolbe: Geography Markup Language – Teil 1 14

XML Schema für GML-Objekte <element name="_GML" type="gml:AbstractGMLType" abstract="true"

substitutionGroup="gml:_Object"/> <complexType name="AbstractGMLType" abstract="true"> <sequence> <element ref="gml:metaDataProperty" minOccurs="0"

maxOccurs="unbounded"/> <element ref="gml:description" minOccurs="0"/> <element ref="gml:name" minOccurs="0"

maxOccurs="unbounded"/> </sequence> <attribute ref="gml:id" use="optional"/> </complexType>

• 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

Page 15: 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

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

Page 16: 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

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)

<gml:location> <gml:Point gml:id="punkt0815" srsName="epsg:4326"> <gml:coordinates>5.5623,33.2323</gml:coordinates> </gml:Point></gml:location>

<gml:location xlink:href="http://meine.webseite.de/locations/punkt0815" />

Page 17: 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

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)

Page 18: 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

T. H. Kolbe: Geography Markup Language – Teil 1 18

XML-Kodierung von GML-Features (II)

Definition von _Feature in der Schema-Datei feature.xsd:

<element name="_Feature" type="gml:AbstractFeatureType" abstract="true" substitutionGroup= "gml:_GML" />

<complexType name="AbstractFeatureType" abstract="true"> <complexContent> <extension base="gml:AbstractGMLType"> <sequence> <element ref="gml:boundedBy" minOccurs="0"/> <element ref="gml:location" minOccurs="0"/> <!-- additional properties must be specified in an application schema --> </sequence> <attribute name="fid" type="string"/> . . . </attribute> </extension> </complexContent></complexType>

GML-Objekt _Feature erbtvon _GML Eigenschaften• description• name• idund definiert die Eig.• boundedBy• location

Rückwärtskompatibilität zu GML2: ID-Attribut fid

Page 19: 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

T. H. Kolbe: Geography Markup Language – Teil 1 19

Feature-Eigenschaft boundedBy

<element name="boundedBy" type="gml:BoundingShapeType"/><complexType name="BoundingShapeType"> <sequence> <group ref="gml:boundingShape"/> </sequence></complexType>

<group name="boundingShape"> <choice> <element ref="gml:Envelope"/> <element ref="gml:Null"/> </choice></group>

• mit der gml:boundedBy-Property kann für jedes Feature ein umgebendes Rechteck (Bounding Box) bzw. Volumen angegeben werden

Envelope ist ein GML-Geometrieobjekt

Page 20: 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

T. H. Kolbe: Geography Markup Language – Teil 1 20

Feature-Eigenschaft location

<element name="location" type="gml:LocationPropertyType" substitutionGroup="gml:_property"/><complexType name="LocationPropertyType"> <sequence > <group ref="gml:locator" minOccurs="0"/> </sequence> <attributeGroup ref="gml:AssociationAttributeGroup"/></complexType>

<group name="locator"> <choice> <element ref="gml:_Geometry"/> <element ref="gml:LocationString"/> <element ref="gml:LocationKeyWord"/> </choice> </group>

• mit der gml:location-Property kann für jedes Feature die Lagegeometrie oder ein Ortsname angegeben werden

Page 21: 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

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.)

Page 22: 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

T. H. Kolbe: Geography Markup Language – Teil 1 22

Beispiel zur XML-Kodierung

<element name=“Haus" type=“Bsp:HausTyp“ substitutionGroup="gml:_Feature"/>

<complexType name=“HausTyp"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence> <element name=“Nummer" type=“positiveInteger"/> <element name=“Besitzer" type=“string“/> <element name=“Strasse" type=“string "/> <element ref=“gml:extentOf"/> </sequence> </extension> </complexContent></complexType>

<Haus> <Nummer>134</Nummer> <Besitzer>Jupp Zupp</Besitzer> <Strasse>Meckenheimer Allee</Strasse> <gml:extentOf> <gml:Polygon> ... </gml:Polygon> </gml:extentOf> </Haus>

surfaceProperty, die als Kindelement ein

Polygon besitzt

Page 23: 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

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

<element name="featureMember" type="gml:FeaturePropertyType"/><element name="featureProperty" type="gml:FeaturePropertyType"/><complexType name="FeaturePropertyType"> <sequence> <element ref="gml:_Feature" minOccurs="0"/> </sequence> <attributeGroup ref="gml:AssociationAttributeGroup"/></complexType>

Page 24: 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

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

Page 25: 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

T. H. Kolbe: Geography Markup Language – Teil 1 25

XML Schema von FeatureCollection

<complexType name="AbstractFeatureCollectionType" abstract="true"> <complexContent> <extension base="gml:BoundedFeatureType"> <sequence> <element ref="gml:featureMember" minOccurs="0" maxOccurs="unbounded"/> <element ref="gml:featureMembers" minOccurs="0"/> </sequence> </extension> </complexContent></complexType><element name="FeatureCollection" type="gml:FeatureCollectionType" substitutionGroup="gml:_Feature"/><complexType name="FeatureCollectionType"> <complexContent> <extension base="gml:AbstractFeatureCollectionType"/> </complexContent></complexType>

Page 26: 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

T. H. Kolbe: Geography Markup Language – Teil 1 26

Eine konkrete FeatureCollection

• Ableitung vom Typ gml:AbstractFeatureCollectionType• Ersatz für das abstrakte Element <gml:_Feature>• einzelne Features werden durch <featureMember> in die

FeatureCollection eingebunden:

<Stadtmodell gml:id=“sm1456"> <gml:featureMember> <Haus gml:id=“H567">....</Haus> </gml:featureMember> <gml:featureMember> <Strasse gml:id=“Str812">....</Strasse> </gml:featureMember>

</Stadtmodell>

• Mitglieder müssen nicht die selbe Klasse haben

Page 27: 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

T. H. Kolbe: Geography Markup Language – Teil 1 27

Beispiel für konkrete FeatureCollection<element name=“Stadtmodell" type=“Bsp:StadtmodellTyp" substitutionGroup="gml:_Feature"/><element name=“Haus" type="Bsp:HausTyp" substitutionGroup="gml:_Feature"/><element name=“Strasse" type="Bsp:StrassenTyp" substitutionGroup="gml:_Feature"/>

<complexType name="StadtmodellTyp"> <complexContent> <extension base="gml:AbstractFeatureCollectionType"> <sequence>...</sequence> </extension> </complexContent></complexType>

<complexType name="HausTyp"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence>....</sequence> </extension> </complexContent></complexType>

<complexType name="StrassenTyp"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence>.....</sequence> </extension> </complexContent></complexType>

Page 28: 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

T. H. Kolbe: Geography Markup Language – Teil 1 28

Modellierung der Geometrie

Page 29: 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

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+srsName0..1

_GeometricAggregate

Page 30: 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

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 !

Page 31: 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

T. H. Kolbe: Geography Markup Language – Teil 1 31

Hierarchie der Geometrietypen_Geometry

+gid [0..1]: String_CoordinateReferenceSystem

srsName

0..1

_GeometricPrimitive GeometricComplex _GeometricAggregate

Point _Surface_Curve _Solid

0D 1D 2D 3D

Page 32: 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

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:

<Polygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">

Page 33: 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

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.

<Point srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <coordinates> 49.11,24.12 </coordinates></Point>

<element name="coordinates" type="gml:CoordinatesType"/>

<complexType name="CoordinatesType"> <simpleContent> <extension base="string"> <attribute name="decimal" type="string" use="default" value="."/> <attribute name="cs" type="string" use="default" value=","/> <attribute name="ts" type="string" use="default" value="&#x20;"/> </extension> </simpleContent></complexType>

Trennung Vor-/ Nachkommastelle (.)

coordinate separator (,)

tuple separator ( )

Page 34: 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

T. H. Kolbe: Geography Markup Language – Teil 1 34

Repräsentation von Koordinaten (II)2. Pos Element: Liste von Koordinaten (n-dimensional)

<Point srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <pos dimension="2">5.0 40.0</pos></Point>

<element name="pos" type="gml:DirectPositionType" />

<complexType name="DirectPositionType"> <simpleContent> <extension base="gml:doubleList"> <attribute name="srsName" type="anyURI" use="optional"/> <attribute name="dimension" type="positiveInteger" use="optional"/> </extension> </simplecontent></complexType>

Page 35: 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

T. H. Kolbe: Geography Markup Language – Teil 1 35

Envelope Element (I)

Das Envelope Element dient zur Modellierung räumlicherAusdehnung. Es besteht aus zwei Koordinatentupeln, die diediagonal gegenüber liegenden Eckpunkte beschreiben.

<element name="Envelope" type="gml:EnvelopeType"/>

<complexType name="EnvelopeType"> <complexContent> <extension base="gml:AbstractGeometryType"> <sequence> <choice> <element ref="gml:coord" minOccurs="2" maxOccurs="2"/> <element ref="gml:pos" minOccurs="2" maxOccurs="2"/> <element ref="gml:coordinates"/> </choice> </sequence> </extension> </complexContent></complexType>

Page 36: 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

T. H. Kolbe: Geography Markup Language – Teil 1 36

Envelope Element (II)

Beispiel:

0.0,0.0

30.0,100.0

<Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <coordinates> 0.0,0.0 30.0,100.0 </coordinates></Envelope>

Das Envelope Element dient zur Modellierung räumlicherAusdehnung. Es besteht aus zwei Koordinatentupeln, die diediagonal gegenüber liegenden Eckpunkte beschreiben. Typische Verwendung: Angabe einer Bounding Box

Page 37: 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

T. H. Kolbe: Geography Markup Language – Teil 1 37

Point Geometry Element

Ein Point Element besteht aus einem Koordinatentupel.

<Point srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <pos>56.1 13.1</pos></Point>

Beispiel:

<element name="Point" type="gml:PointType" substitutionGroup="gml:_Geometry"/>

<complexType name="PointType"> <complexContent> <extension base="gml:AbstractGeometryType"> <sequence> <choice> <element ref="gml:pos"/> <element ref="gml:coordinates"/> <element ref="gml:coord"/> </choice> </sequence> </extension> </complexContent></complexType>

Page 38: 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

T. H. Kolbe: Geography Markup Language – Teil 1 38

LineString Geometry ElementLineString: Folge von Punkten, durch gerade Liniensegmente verbunden

<element name="LineString" type="gml:LineStringType" substitutionGroup="gml:_Curve"/><complexType name="LineStringType"> <complexContent> <extension base="gml:AbstractCurveType"> <sequence> <choice> <choice minOccurs="2" maxOccurs="unbounded"> <element ref="gml:pos" /> <element ref="gml:coord" /> <element ref="gml:pointRep" /> </choice> <element ref="gml:coordinates"/> </choice> </sequence> </extension> </complexContent></complexType><LineString srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">

<coordinates>100.0,100.0 230.0,80.0 350.0,130.0 </coordinates></LineString> Beispiel

Page 39: 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

T. H. Kolbe: Geography Markup Language – Teil 1 39

Polygon Geometry Element

exterior

interior

exterior

_Surface

Polygon

_Ring

LinearRing+position [4..n]: Position

+interior0..n

+exterior0..1

Page 40: 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

T. H. Kolbe: Geography Markup Language – Teil 1 40

Polygon Geometry Element - Beispiel<Polygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <exterior> <LinearRing gml:id="Außen1"> <coordinates> 0.0,0.0 100.0,0.0 100.0,100.0 0.0,100.0 0.0,0.0 </coordinates> </LinearRing> </exterior> <interior> <LinearRing gml:id="Innen1"> <coordinates> 60.0,60.0 60.0,90.0 90.0,90.0 90.0,60.0 60.0,60.0 </coordinates> </LinearRing> </interior></Polygon>

Page 41: 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

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ß

Page 42: 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

T. H. Kolbe: Geography Markup Language – Teil 1 42

Beispiel: Ein einfaches 2D-Stadtmodell

Gemarkung EuskirchenFlur 14Flurstück 5Eigentümer Leo Land

Gemarkung EuskirchenFlur 14Flurstück 7Eigentümer Stadt Euskirchen

Meckenheimer Allee

Page 43: 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

T. H. Kolbe: Geography Markup Language – Teil 1 43

UML-Diagramm für das 2D-Stadtmodell

Stadtmodell

Flurstück

strname:string

Strasse

*

*

featureMember

GeometryProperty

AbstractFeatureCollection AbstractFeature AbstractGeometryfeatureMember

*geometryProperty

*

Polygon

LineString curveProperty

surfaceProperty 1

1

Page 44: 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

T. H. Kolbe: Geography Markup Language – Teil 1 44

2D-Stadtmodell Anwendungsschema (1)

<?xml version="1.0" encoding="UTF-8"?><schema targetNamespace="http://www.beispiel.net/beispiel" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:bsp="http://www.beispiel.net/beispiel"> <import namespace="http://www.opengis.net/gml" schemaLocation="feature.xsd"/> ...</schema>

Kopf der Schema-Datei1. Schema-Element mit Angabe des Namensraums, für den das

Schema definiert wird2. 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)

Page 45: 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

T. H. Kolbe: Geography Markup Language – Teil 1 45

2D-Stadtmodell Anwendungsschema (2)

...<element name="Stadtmodell" type="bsp:StadtmodellType" substitutionGroup="gml:_Feature"/>

<complexType name="StadtmodellType"> <complexContent> <extension base="gml:AbstractFeatureCollectionType"/> </complexContent></complexType>...

Deklaration des Wurzelements• Erstes <element> 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

Page 46: 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

T. H. Kolbe: Geography Markup Language – Teil 1 46

2D-Stadtmodell Anwendungsschema (3)

<element name="Flurstueck" type="bsp:FlurstueckType" substitutionGroup="gml:_Feature"/><complexType name="FlurstueckType"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence> <element name="Gemarkung" type="string"/> <element name="Flur" type="integer"/> <element name="Eigentuemer" type="string"/> <element ref="gml:surfaceProperty"/> </sequence> </extension> </complexContent></complexType>

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 AbstractFeatureTypeAttribute werden durch Kindelemente mit einfachen Daten-typen realisiert

Repräsentation der Ausdehnung hier über vordefinierte GML-Geometrie-Eigenschaft

Page 47: 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

T. H. Kolbe: Geography Markup Language – Teil 1 47

2D-Stadtmodell Anwendungsschema (4)

<element name="Strasse" type="bsp:StrasseType" substitutionGroup="gml:_Feature"/><complexType name="StrasseType"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence> <element name="strname" type="string"/> <element ref="gml:curveProperty"/> </sequence> </extension> </complexContent></complexType>

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

Page 48: 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

T. H. Kolbe: Geography Markup Language – Teil 1 48

2D-Stadtmodell Anwendungsschema

<?xml version="1.0" encoding="UTF-8"?><schema targetNamespace="http://www.beispiel.net/beispiel" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:bsp="http://www.beispiel.net/beispiel"> <import namespace="http://www.opengis.net/gml" schemaLocation="feature.xsd"/>

<element name="Stadtmodell" type="bsp:StadtmodellType" substitutionGroup="gml:_FeatureCollection"/> <complexType name="StadtmodellType"> <complexContent> <extension base="gml:AbstractFeatureCollectionType"/> </complexContent> </complexType>

<element name="Flurstueck" type="bsp:FlurstueckType" substitutionGroup="gml:_Feature"/> <complexType name="FlurstueckType"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence> <element name="Gemarkung" type="string"/> <element name="Flur" type="integer"/> <element name="Eigentuemer" type="string"/> <element ref="gml:surfaceProperty"/> </sequence> </extension> </complexContent> </complexType>

<element name="Strasse" type="bsp:StrasseType" substitutionGroup="gml:_Feature"/> <complexType name="StrasseType"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence> <element name="strname" type="string"/> <element ref="gml:curveProperty"/> </sequence> </extension> </complexContent> </complexType></schema>

Stadtmodell

Flurstück

StrasseLineString

Polygon

Page 49: 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

T. H. Kolbe: Geography Markup Language – Teil 1 49

GML-Instanzdokument – Beispiel

Gemarkung EuskirchenFlur 14Flurstück 5Eigentümer Leo Land

Meckenheimer Allee

Page 50: 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

T. H. Kolbe: Geography Markup Language – Teil 1 50

<?xml version="1.0" encoding="ISO-8859-1"?><Stadtmodell xmlns="http://www.beispiel.net/beispiel" xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink">

<gml:name>Kataster der Stadt XY</gml:name> <gml:boundedBy> . . . </gml:boundedBy>

<gml:featureMember> . . . </gml:featureMember>

</Stadtmodell>

2D-Stadtmodell Instanzdokument (1)

nächste Folie

Page 51: 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

T. H. Kolbe: Geography Markup Language – Teil 1 51

2D-Stadtmodell Instanzdokument (2)BoundedBy: Die in boundedBy definierte Envelope umschließt alle Geodaten dieser Datei.

<gml:boundedBy> <gml:Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coordinates> 9500.0,4300.0 9650.7,4353.6</gml:coordinates> </gml:Envelope> </gml:boundedBy>

Page 52: 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

T. H. Kolbe: Geography Markup Language – Teil 1 52

<?xml version="1.0" encoding="ISO-8859-1"?><Stadtmodell xmlns="http://www.beispiel.net/beispiel" xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink"> <gml:name>Kataster der Stadt XY</gml:name> <gml:boundedBy> <gml:Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coordinates> 9500.0,4300.0 9650.7,4353.6</gml:coordinates> </gml:Envelope> </gml:boundedBy>

<gml:featureMember> <Flurstueck> ... </Flurstueck> </gml:featureMember>

<gml:featureMember> <Strasse> ... </Strasse> </gml:featureMember>

</Stadtmodell>

2D-Stadtmodell Instanzdokument (3)

nächste Folie

Page 53: 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

T. H. Kolbe: Geography Markup Language – Teil 1 53

<gml:featureMember> <Flurstueck> <gml:name>Flst. 5</gml:name> <Gemarkung>Euskirchen</Gemarkung> <Flur>14</Flur> <Eigentuemer>Leo Land</Eigentuemer> <gml:surfaceProperty> <gml:Polygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> . . . </gml:Polygon> </gml:surfaceProperty >

</Flurstueck></gml:featureMember>

2D-Stadtmodell Instanzdokument (4)

nächste Folie

Page 54: 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

T. H. Kolbe: Geography Markup Language – Teil 1 54

2D-Stadtmodell Instanzdokument (5)

<gml:surfaceProperty> <gml:Polygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:exterior> <gml:Ring> <gml:curveMember> <gml:LineString> <gml:coordinates> 9500.0,4300.0 9566.8,4306.2 9572.2,4325.5 9568.8,4341.0 9513.7,4343.6 9500.0,4300.0 </gml:coordinates> </gml:LineString> </gml:curveMember> </gml:Ring> </gml:exterior> </gml:Polygon></gml:surfaceProperty>

Page 55: 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

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

<?xml version="1.0" encoding =“ISO-8859-1“?><Stadtmodell xmlns="http://www.vorlesung.net/beispiel" xmlns:gml="http://www.opengis.net/gml“>

<gml:name>Kataster</gml:name> <gml:boundedBy> <gml:Box srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coordinates> 9500.0,4300.0 9650.7,4353.6</gml:coordinates> </gml:Box> <gml:boundedBy>

<gml:featureMember> <Flurstueck> ... </Flurstueck> </gml:featureMember>

<gml:featureMember> <Strasse> ... </Strasse> </gml:featureMember>

</Stadtmodell>

2D-Stadtmodell Instanzdokument (6)

nächste Folie

Page 56: 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

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

2D-Stadtmodell Instanzdokument (7)

<Strasse> <strname>Meckenheimer Allee</strname> <gml:curveProperty> <gml:LineString srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coordinates> 9510.0,4333.0 9536.4,4320.1 9555.5,4310.7 </gml:coordinates> </gml:LineString> </gml:curveProperty ></Strasse>

Page 57: 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

T. H. Kolbe: Geography Markup Language – Teil 1 57

<?xml version="1.0" encoding="ISO-8859-1"?><Stadtmodell xmlns="http://www.beispiel.net/beispiel" xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<gml:name>Kataster der Stadt XY</gml:name> <gml:boundedBy> <gml:Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coordinates> 9500.0,4300.0 9650.7,4353.6</gml:coordinates> </gml:Envelope> </gml:boundedBy>

<gml:featureMember> <Flurstueck> <gml:name>Flst. 5</gml:name> <Gemarkung>Euskirchen</Gemarkung> <Flur>14</Flur> <Eigentuemer>Leo Land</Eigentuemer> <gml:surfaceProperty> <gml:Polygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:exterior> <gml:Ring> <gml:curveMember> <gml:LineString> <gml:coordinates>9500.0,4300.0 9566.8,4306.2 9572.2,4325.5 9568.8,4341.0 9513.7,4343.6 9500.0,4300.0 </gml:coordinates> </gml:LineString> </gml:curveMember> </gml:Ring> </gml:exterior> </gml:Polygon> </gml:surfaceProperty > </Flurstueck> </gml:featureMember> <gml:featureMember> <Strasse> <strname>Meckenheimer Allee</strname> <gml:curveProperty> <gml:LineString srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coordinates> 9510.0,4333.0 9536.4,4320.1 9555.5,4310.7 </gml:coordinates> </gml:LineString> </gml:curveProperty > </Strasse> </gml:featureMember></Stadtmodell>

Nicht den Kopf verlieren

Gemarkung EuskirchenFlur 14Flurstück 5Eigentümer Leo Land