Print This Post

GIS Development: gmlSDK

February 2008

Geography Markup Language (GML) has emerged in the past several years as a primary means for the exchange, sharing and aggregation of geographic information.  This is true increasingly for vector based
data and we can anticipate will also be true for imaging data in the
near future. 

GML application schemas exist for most of the traditional GIS data formats such as S57, VPF, DAFIF, Tiger/Line. In addition, some GML application
schemas have become standards in their own right such as cityGML, AIXM, XMML, and GeoSciML.

With the increased understanding of spatial information infrastructures as a means of sharing geospatial information in real time or near real time, we anticipate increased use of GML forincremental updates to geospatial databases, achieved in most cases through Web Feature Service (WFS) interfaces.

This increased use of GML demands better tools for creating and editing GML, and for reading GML into in memory objects for data manipulation and analysis. Since XML Schema on which GML is based is not truly object orientedand makes use of constructs like choice groups and substitutions, working with GML (or even XML) may be foreign to some developers. This is made all the more complex, by the fact that GML is also a schema definition language,so that while there are many concrete object types defined in GML itself, users define entire new sets of objects in GML application schemas. For these reasons, GML may present a steep learning curve for the averagedeveloper. For these reasons Galdos developed the gmlSDK, a comprehensive and portable class library written in C++ for the creation of in-memory objects from GML and for writing GML from in memory representations ofgeographic objects.

To illustrate the use of the gmlSDK we consider a few simple tasks and how to use the library to accomplish them. We start with traversing a GML object.For more details, please review the entire article.

Download the PDF file:  GIS Development – gmlSDK February 2008.pdf

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>