Introduction to GML Geography Markup Language as a

  • Slides: 85
Download presentation
Introduction to GML (Geography Markup Language) as a tool to exchange geographic data David

Introduction to GML (Geography Markup Language) as a tool to exchange geographic data David Sol, Professor - Researcher, UDLA Antonio Razo, Research Assistant, UDLA Tel: +52 (222)-229 20 29 Fax: +52 (222)-229 21 38 Email: sol@mail. udlap. mx, anrazo@mail. udlap. mx

Geo-Information Technologies Lab Center for Research in Information and Automation Technologies CENTIA – UDLA-P

Geo-Information Technologies Lab Center for Research in Information and Automation Technologies CENTIA – UDLA-P http: //www. udlap. mx/~gisudla@mail. udlap. mx +52 (222) 2 -29 -20 -29

Instructors David Ricardo Sol Martinez is director of the Computer Systems Engineering Department at

Instructors David Ricardo Sol Martinez is director of the Computer Systems Engineering Department at Universidad de las Americas Puebla (UDLA-P), Mexico. He holds a Ph. D. degree in Information Science from the Universite de Savoie in France, and a B. Eng. degree in Computer Systems Engineering from UDLA-P. Since 1998, he works as a Professor of the Computer Systems Engineering Department at UDLA-P. He also heads the Laboratory of Geo-Information Technologies from the Center for Research in Information and Automation Technologies (CENTIA) at his university. His main research interests lie in the areas of Geographic Databases. He has worked in several projects supported by the National Council of Science and Technology (CONACYT) of Mexico and has directed several Master and Bachelor theses. Antonio Felipe Razo Rodriguez works as a research assistant at the Laboratory of Geo. Information Technologies from the CENTIA at UDLA-P. He holds MSc. degree in Computer Science and a B. Eng. degree in Computer Systems Engineering from UDLAP. His subjects of research involves the use of XML, 3 D and Open. Gis specifications for Geographic Databases.

References l World Wide Web Consortium (XML, SVG, XSLT) www. w 3. org l

References l World Wide Web Consortium (XML, SVG, XSLT) www. w 3. org l Open. Gis Consortium (GML) www. opengis. org l European Petroleum Survey Group EPSG (SRS) www. ihsenergy. com/epsg. html l Web 3 D Consortium (VRML, Geo. VRML) www. vrml. org

Overview l l GML Introduction GML in action GML in detail GML future

Overview l l GML Introduction GML in action GML in detail GML future

Geography Markup Language Introduction

Geography Markup Language Introduction

Introduction l . . . for the first time spatial information have a truly

Introduction l . . . for the first time spatial information have a truly public encoding standard, GML. . . it will revolutionize the treatment of spatial information Ron Lake, Galdos Systems, Inc.

GML topics include l l l map making data transformations spatial queries geographic analysis

GML topics include l l l map making data transformations spatial queries geographic analysis GML-based spatial databases GML applications for mobile computing systems, web feature services. . .

What is GML ? l GML or Geography Markup Language is an XML based

What is GML ? l GML or Geography Markup Language is an XML based encoding standard for geographic information

Definition l The Geography Markup Language (GML) is an XML encoding for the transport

Definition l The Geography Markup Language (GML) is an XML encoding for the transport and storage of geographic information, including both the geometry and properties of geographic features

GML is a Recommendation l l l Open. GIS® Consortium Recommendation Paper OGC Document

GML is a Recommendation l l l Open. GIS® Consortium Recommendation Paper OGC Document Number: 00 -029 Date: 12 -May-2000

GML specification l . . . this specification defines the mechanisms and syntax that

GML specification l . . . this specification defines the mechanisms and syntax that GML uses to encode geographic information in XML. . .

GML specification l . . . GML will make a significant impact on the

GML specification l . . . GML will make a significant impact on the ability of organizations to share geographic information with one another, and to enable linked geographic datasets. . .

GML specification l . . . the initial release of this specification is concerned

GML specification l . . . the initial release of this specification is concerned with the XML encoding of what the Open. GIS® Consortium (OCG) calls ‘Simple Features’. . .

What is Open. GIS ? l l l www. opengis. org International Consortium over

What is Open. GIS ? l l l www. opengis. org International Consortium over 220 members Universities, Government Agencies, Companies MIT, Harvard, NASA, FEMA, ESRI, Map. Info, Oracle, Galdos Systems Inc

Geographic data l l geographic data vs. graphic interpretation When we talk about geographic

Geographic data l l geographic data vs. graphic interpretation When we talk about geographic data we are trying to capture information about the properties and geometry of the objects which populate the world

GML is XML l Just as XML is now helping the Web to clearly

GML is XML l Just as XML is now helping the Web to clearly separate content from presentation, GML will do the same in the world of geography

Graphic interpretation l l When we talk about graphic interpretations of that data we

Graphic interpretation l l When we talk about graphic interpretations of that data we are talking about a map or other form of visualization. How we symbolize data on a map, colors or line weights A GML document is not a Map !

GML and Maps l To make a map from GML we need to style

GML and Maps l To make a map from GML we need to style the GML elements into a form that can be interpreted for graphical display in a web browser ( or any other device )

GML and Maps l l Potential graphical display formats include W 3 C Scalable

GML and Maps l l Potential graphical display formats include W 3 C Scalable Vector Graphics (SVG), the Microsoft Vector Markup Language (VML), and the X 3 D Image formats as well; png, gif, jpeg, pdf

GML is Text l l l GML represents geographic information in the form of

GML is Text l l l GML represents geographic information in the form of text Text is easy to create, read (inspect), modify, transport and to store human and machine readable

GML l l l Encodes Feature Geometry and Properties Based on the Abstract Model

GML l l l Encodes Feature Geometry and Properties Based on the Abstract Model of Geography developed by the OGC that describes the world in terms of geographic entities called features. Essentially a feature is nothing more than a list of properties and geometries

Properties l Properties have name type value description

Properties l Properties have name type value description

Geometry l Geometries are composed of basic geometry building blocks such as points lines

Geometry l Geometries are composed of basic geometry building blocks such as points lines curves surfaces and polygons

For example l l To model a school Properties l Name – text Description

For example l l To model a school Properties l Name – text Description - text Id - number Level - text Geometry location. Of Point

GML Geometry l For simplicity, the initial GML specification is restricted to 2 D

GML Geometry l For simplicity, the initial GML specification is restricted to 2 D geometry, however, extensions will appear shortly which will handle 2 1/2 and 3 D geometry, as well as topological relationships between features.

GML Geometry l l GML encoding already allows for quite complex features. The geometry

GML Geometry l l GML encoding already allows for quite complex features. The geometry of a geographic feature can also be composed of many geometry elements. A simple feature such as a radio transmission tower may have a point property (its location), and an area (multi-polygon) property which is its coverage zone

Spatial Reference Systems l l An essential component of a geographic system is a

Spatial Reference Systems l l An essential component of a geographic system is a means of referencing the geographic features to the earth's surface or to some structure related to the earth's surface GML incorporates earth based spatial reference system which is extensible and which incorporates the main projection and geocentric reference frames in use today by the European Petroleum Survey Group (EPSG)

Why encode a spatial reference system ? l l l Client validation of a

Why encode a spatial reference system ? l l l Client validation of a server specified Spatial Reference System A Coordinate Transformation Service can compare the SRS description with its own specifications to see if the SRS is consistent with the selected transformation To control automated coordinate transformation by supplying input and output reference system names and argument values

GML Feature Collections l l The XML 1. 0 Recommendation from the W 3

GML Feature Collections l l The XML 1. 0 Recommendation from the W 3 C is based on the notion of a document The current version of GML is based on XML 1. 0 and uses a Feature. Collection as the basis of its document

GML Feature Collections l l A Feature. Collection is a collection of GML Features

GML Feature Collections l l A Feature. Collection is a collection of GML Features together with a bounding Box element (which bounds the set of Features) A Feature. Collection can also contain other Feature. Collections, provided that the bounding Box of the bounding Feature. Collection bounds the bounding Box of all of the contained Feature. Collections

GML - More than a Data Transport l l GML is an effective means

GML - More than a Data Transport l l GML is an effective means for transporting geographic information from one place to another But it will also become an important means of storing geographic information for building complex and distributed geographic data sets

Objectives of GML l If it is implemented as a Standard Format data could

Objectives of GML l If it is implemented as a Standard Format data could be developed on the local scale and readily integrated to the regional and the global scale l If it is implemented for Specific Applications data developed for one purpose could be readily integrated with data developed for another

Overview l l GML Introduction GML in action GML in detail GML future

Overview l l GML Introduction GML in action GML in detail GML future

Geography Markup Language GML in action

Geography Markup Language GML in action

Our experience Geo-Information Technologies Laboratory http: //www. udlap. mx/~gisudla l l Working with Open.

Our experience Geo-Information Technologies Laboratory http: //www. udlap. mx/~gisudla l l Working with Open. Gis standards for 4 years Working with GML for 2 years

Presentations l l l “Standard 2 D and 3 D geo-spatial data formats” Encuentro

Presentations l l l “Standard 2 D and 3 D geo-spatial data formats” Encuentro Nacional de Computación 2001 “GISELA: A web-based interface using XML and open standards” Vancouver GML Dev Days July 22 nd-26 th, 2002 “GML: Compartición de Datos Geográficos” Conferencia Latinoamericana de usuarios de ESRI y ERDAS 2002

Current Proyects l GISELA X 3 -X 2 A web-based interface using XML and

Current Proyects l GISELA X 3 -X 2 A web-based interface using XML and open standards, HTML-SVG-X 3 D l Geometa. X Metadata geographic standards using XML l Pocket. GIS XML-based mobile information system

GISELA X 3 -X 2 Geo database GML DBF SHP XSLT HTML VRML X

GISELA X 3 -X 2 Geo database GML DBF SHP XSLT HTML VRML X 3 D SVG XSLT

Geometa. X

Geometa. X

Pocket. GIS PDA Server

Pocket. GIS PDA Server

Sources l l Digital Cartography Arc. View Spatial Analyst 3 D Analyst

Sources l l Digital Cartography Arc. View Spatial Analyst 3 D Analyst

Generating GML l Avenue Script Export. GML. ave 'Fecha: 10 de Diciembre de 2001

Generating GML l Avenue Script Export. GML. ave 'Fecha: 10 de Diciembre de 2001 'Modificado: 15 de Agosto de 2002 'Autor: Laboratorio de Tecnologías de Geoinformación (XALTAL) ' CENTIA - Universidad de las Americas-Puebla ' Ing. Antonio Razo Rodriguez 'Nombre: Export. GML. ave 'Version: 0. 73 'Exporta los puntos de puntos, polilineas y poligonos en 2 D y 3 D 'ademas copia sus atributos descriptivos a un archivo con la extensión. xml 'de acuerdo a la especificacion del Geography Markup Language v 1. 0 'del Open. Gis Consortium (www. opengis. org) '- Actualizado para exportar multipoligonos y poligonos con huecos '- Actualizado para exportar bounding box con los elementos seleccionados 18/07/02 '- Actualizado para exportar Multi. Point (falta Multi. Point. Z ) 15/08/02 '- Actualizado para exportar Multi. Line. String (falta Multi. Line. String. Z ) 15/08/02 '- Corregido error de Multi. Line. String 29/08/02

Generating GML l Java program Shapefile binary format to GML Shapefile Technical Description [http:

Generating GML l Java program Shapefile binary format to GML Shapefile Technical Description [http: //www. esri. com/library/whitepapers/pdfs/ shapefile. pdf] • Shape File Header Record Contents Record Header Record Contents • 0 Null Shape • 1 Point • 3 Polyline • 5 Polygon • 8 Multi. Point

Database l l GMLReader to Open. GIS SQL Shapefile. Reader to Open. GIS SQL

Database l l GMLReader to Open. GIS SQL Shapefile. Reader to Open. GIS SQL Input GML Features Layers Client Output Geo database Server GML Features Layers Client

Functionality HTML GML XSLT SVG X 3 D

Functionality HTML GML XSLT SVG X 3 D

XSL Stylesheets l l l GML 2 SVG GML 2 VRML 2 D GML

XSL Stylesheets l l l GML 2 SVG GML 2 VRML 2 D GML 2 VRML 3 D

Overview l l GML Introduction GML in action GML in detail GML future

Overview l l GML Introduction GML in action GML in detail GML future

Geography Markup Language GML in detail

Geography Markup Language GML in detail

GML l l GML is based on XML stands for e. Xtensible Markup Language

GML l l GML is based on XML stands for e. Xtensible Markup Language l World Wide Web Consortium www. w 3. org l Internet Standard

GML is based on XML l l XML is a language for expressing data

GML is based on XML l l XML is a language for expressing data description languages XML is not a programming language. There are no mechanisms in XML to express behaviour or to perform computations

XML Version 1. 0 l XML 1. 0 provides a means of describing (marking

XML Version 1. 0 l XML 1. 0 provides a means of describing (marking up) data using user defined tags. Each segment of an XML document is bounded by starting and end tags. This looks as follows: <Feature>. . more XML descriptions. . . . </Feature>

Validating XML l l The valid tag names are determined by the Document Type

Validating XML l l The valid tag names are determined by the Document Type Definition. Which tags can appear enclosed within an opening and closing tag pair is also determined by the DTD

XML Attributes l l XML tags can also have attributes associated with them. These

XML Attributes l l XML tags can also have attributes associated with them. These are also constrained by the DTD in name and in some cases in terms of the values that the attributes can assume

Parsing XML l l XML is typically read by an XML parser. All XML

Parsing XML l l XML is typically read by an XML parser. All XML parsers check that the data is well formed so that data corruption (e. g. missing closing tag) cannot pass undetected Many XML parsers are also validating, meaning that they check that the document conforms to the associated DTD

XML advantages l Using XML is it is comparatively easy to generate and validate

XML advantages l Using XML is it is comparatively easy to generate and validate complex hierarchical data structures. Such structures are common in geographic applications.

Transforming XML l l l XSLT (the T stands for Transformation), is focused on

Transforming XML l l l XSLT (the T stands for Transformation), is focused on the transformation of XML XSL (XSLT) provides a clean declarative means for expressing these transformations. XSLT is as essential to GML as XML itself XSL is a fairly simple language. It provides a powerful syntax for expressing pattern matching and replacement. It is declarative

Transforming XML l l XPath and XQL you can specify some very powerful queries

Transforming XML l l XPath and XQL you can specify some very powerful queries on an XML document XSLT incorporates the ability to call functions in another programming language such as VBScript or Java through the use of Extension Functions

Visualizing XML l l SVG, VML and X 3 D - Vector Graphics for

Visualizing XML l l SVG, VML and X 3 D - Vector Graphics for the Web Several XML based specifications for describing vector graphic elements have been developed, including Scalable Vector Graphics (SVG), Microsoft's Vector Markup Language (VML), and X 3 D, the XML incarnation of the syntax and behaviour of VRML (Virtual Reality Markup Language)

Visualizing XML l l l Each has a means of describing geometry. The graphical

Visualizing XML l l l Each has a means of describing geometry. The graphical specifications, however, are focused on appearance and hence include properties and elements for colors, line weights and transparency to name but a few aspects To view an SVG, VML or X 3 D data file, it is necessary to have a suitable graphical data viewer

Visualizing GML l l To draw a map from GML data you need to

Visualizing GML l l To draw a map from GML data you need to transform the GML into one of the graphical vector data formats such as SVG, VML or VRML This means to associate a graphical "style" (e. g. symbol, colour, texture) with each type of GML feature or feature instance

GML l GML v 1. 0 Specification http: //www. opengis. net/gml/00 -029/GML. html l

GML l GML v 1. 0 Specification http: //www. opengis. net/gml/00 -029/GML. html l Tutorial XML http: //www. w 3 schools. com l References GML http: //www. gmlcentral. com

Overview l l GML Introduction GML in action GML in detail GML future

Overview l l GML Introduction GML in action GML in detail GML future

Geography Markup Language GML future

Geography Markup Language GML future

Why GML ? l l l Why introduce GML at all ? There already

Why GML ? l l l Why introduce GML at all ? There already encoding standards for geographic information including COGIF, MDIFF, SAIF, DLG, SDTS to name only a few What is so different about GML ? In some ways nothing. GML is a simple text based encoding of geographic features.

Why GML ? l l GML is based on a common model of geography

Why GML ? l l GML is based on a common model of geography (OGC Abstract Specification) which has been developed and agreed to by the vast majority of all GIS vendors in the world More importantly, however, GML is based on XML

Why XML ? l l There are several reasons why XML is important. To

Why XML ? l l There are several reasons why XML is important. To begin with XML provides a method to verify data integrity. Secondly, any XML document can be read and edited using a simple text editor. Thirdly, since there an increasing number of XML languages, it will be more and more easy to integrate GML data with non spatial data. Even in the case of non-XML non-spatial data this is the case.

Why XML ? l l Most important, XML is easy to transform Using XSLT

Why XML ? l l Most important, XML is easy to transform Using XSLT or almost any other programming language (VB, VBScript, Java, C++, Javascript) we can readily transform XML from one form to another

So with GML we have l l l A single mechanism can thus be

So with GML we have l l l A single mechanism can thus be employed for a host of transformations from data visualization to coordinate transforms, spatial queries, and geospatial generalization GML rests securely on a widely adopted public standard, that of XML This ensures that GML data can be viewed, edited and transformed by a wide variety of commercial and free ware tools. For the first time we can truly talk about open geographic information

Future of GML l l The current version of GML is based on linear

Future of GML l l The current version of GML is based on linear geometry and provides no notions of topology. Over the next several months, new versions of GML will be introduced adding topology, non-linear feature geometries, 2 1/2 and 3 D geometry, support for OGC Coverages, XSLT spatial query extension functions, XLink/XPointer support, and an XML Schema implementation

Glossary l GML SVG X 3 D OGC XML XSLT SRS EPSG

Glossary l GML SVG X 3 D OGC XML XSLT SRS EPSG

OGC Web. Services

OGC Web. Services

OGC Web Services l l l Employs existing standards/recommendations where possible (i. e. SOAP,

OGC Web Services l l l Employs existing standards/recommendations where possible (i. e. SOAP, WSDL, eb. XML regrep, ISO TC 211). Started with Web Map Service (WMS) Web Feature Service (WFS) about to be public. Web Coverage Service, Web Registry Service are under development (OWS tesbeds) Many other services being considered

Tightly Coupled Data Services Public standard interface “provided” by the client Input message contains

Tightly Coupled Data Services Public standard interface “provided” by the client Input message contains the data or reference to the data Processing Service Client “free” Input message does not specify where the data is located Client “coupled” Data Access Service operates upon specific datasets

Registering data access services In ISO 19119 (aka OGC Topic 12), a service offer

Registering data access services In ISO 19119 (aka OGC Topic 12), a service offer is associated with a dataset description when a service instance operates on a specific geographic dataset. Service offer (e. g. WFS) Dataset description

Web Map Service Request specifies: (area of the world, scale, data layers, styling parameters,

Web Map Service Request specifies: (area of the world, scale, data layers, styling parameters, transparency, map projection) Client Web Map Service Response is a graphic – a GIF/JPEG/PNG file which is a map – i. e. a particular visualization of some geographic data. It is NOT the data.

Web Feature Service Request specifies: region of interest, feature type names/properties (OGC Filter Expression),

Web Feature Service Request specifies: region of interest, feature type names/properties (OGC Filter Expression), return format Client Web Feature Service Response is a set of geographic features. All WFS implementations must be able to return GML, but may also support vendor-specific formats as well.

Web Feature Service Capability profile is an XML document that includes: • Description of

Web Feature Service Capability profile is an XML document that includes: • Description of abstract interfaces (WSDL ref) • Description of implementation instance (WSDL ref) • Quality of Service parameters • Known feature types • Supported query languages

Web Feature Service Client can request the schema or content model of a feature

Web Feature Service Client can request the schema or content model of a feature or set of features Client Web Feature Service Response includes components from GML Application Schema(s) A GML application schema describes the feature type names and their properties in accordance with GML 2. 1

WFS: typical interactions Client Web Feature Service 1. Client sends get. Capabilities and processes

WFS: typical interactions Client Web Feature Service 1. Client sends get. Capabilities and processes capabilities document. 2. Client sends a describe. Feature. Type request to get Feature Schema. 3. Client receives the GML Application Schema and constructs scripts, data structures etc. for data processing. 4. Client sends get. Feature request and receives a Feature Collection. 5. Client processes the received Feature Collection

Web Coverage Service Spatial. Temporal Domain f Range or Values of a Coverage A

Web Coverage Service Spatial. Temporal Domain f Range or Values of a Coverage A coverage incorporates a mapping from a spatial-temporal domain (e. g. some part of the surface of the earth) to some value set. The value set can be a list (e. g. soil types), a range of fixed point numbers (e. g. reflectivity), or some complex vector space (e. g. multispectral scanner)

Web Coverage Service Spatial. Temporal Domain A coverage is a feature! f Range or

Web Coverage Service Spatial. Temporal Domain A coverage is a feature! f Range or Values of a Coverages include: • remotely sensed images • aerial photographs • soil distributions • digital elevation models

OGC Services Architecture GML Validation Report Browser Client Registry Services Data Access Services Transformation

OGC Services Architecture GML Validation Report Browser Client Registry Services Data Access Services Transformation Services Processing services

OWS service taxonomy (based on categories from 19119) OWS-1000 Human Interaction 1100 Portrayal OWS-2000

OWS service taxonomy (based on categories from 19119) OWS-1000 Human Interaction 1100 Portrayal OWS-2000 Information Management 2100 Feature access 2200 Coverage access 2300 Map access § Six top-level service categories required for 19119 compliance, but remainder is unconstrained a service has semantics and a defined interface; both aspects are important to service users (e. g. search by category and/or interface) §