institut für kartographie und geoinformation, uni bonn lehrstuhl für geoinformation, prof. dr....

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

Upload: sara-schmitt

Post on 06-Apr-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

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