Tuesday, February 24, 2009

Using XML To Describe GIS Data Models

ESRI has been the main creator of widely distributed GIS data models. See this page for examples.

An ESRI data model is usually distributed as some type of poster, but other documentation is sometimes included. The data model is usually tuned for ESRI GIS software, although it is possible to extract some of the basic database design from the model.

I'd like to work on some of my own GIS data models some day. A data model for flood control infrastrucutre, survey control, the Public Land Survey System, and for Open Street Map are some that come to mind. I'm not very good at producing posters, but I was thinking there might be a better way to share data models.

What if we had an XML file format that could be used to document and share a data model? That would be a lot more useful than a poster. You could write a little desktop application that could be used to browse and modify the different parts of a model. You could cut and paste parts of a model from on model to another. You could even write a tool that autmatically creates a graphical representation of the model in something like SVG, or make a tool that generates a relational database from the information in the model.

I took a crude stab at an XML file format that describes a data model for Open Street Map:


This is something I would like to explore more in the future. Of course, the XML file is kind of ugly. Ir would need to be accompanied by a cool JAva API and desktop app to be really useful. :]

For now, I need to finish my Feature Photo Manager.

The Sunburned Surveyor