GPML - GPlates MarkUp Language
"We invest the extra time and effort now, so that the users don't have to." JC, 2005
GPML will allow the integration of the GPlates Data Model into the GML schemas. This means that other GML-aware software will be able to interpret GPlates data files without special modifications.
Current GPML Structure
A Brief Introduction to GPML
GPlates Markup Language
The GPlates Markup Language is a move away from inscrutable binary formats and well known plain text formats – usually less well known than they should be, with little documentation and no room for future expansion. GPML uses XML Schema, which includes documentation about the format of each document in a machine readable form, allows for future expansion or encapsulation of data from other namespaces.
GPML uses GML as it's lingua franca. This opens the way for interoperability with other GML-aware applications. It also extends the basic GML structures in a number of important ways. GPML adds geological features relevant to plate tectonics, support for time-dependent features, rotation of features through geological time, and the ability to express features in their paleo-coordinates (for the benefit of applications unable to do plate reconstructions themselves).
The components of GPML
Generally, when we say GPML, we mean the final XML documents that describe geological features. However, development on GPML is split into several areas: the GPlates Geological Information Model (GPGIM), the XML serialisation of it into GPML, and the C++ serialisation of it into the object model of the GPlates program.
Design of new features and structure happens in the GPGIM.
GPML itself can be seen as the XML Schema derivation of the GPGIM, and is used for the on-disk representation of the model.
Internally, GPlates uses a C++ object model to manage geological features, and this too is derived from the GPGIM.
This separation ensures an implementation-neutral description of the geological features we are interested in – our document structure is not dependent on the implementation semantics of any one program, and it is an open format which other applications can use.
Current status and Future plans for GPML (March 2007)
GPML 1.5 is now in the release-candidate stage. The GPGIM 1.5 is officially frozen, the GPML schema files are complete and example instance documents have been written that validate against the XML Schema file. It is currently undergoing final testing; the only changes to GPML 1.5 before it starts being used by GPlates will be bugfixes.
GPML is an ongoing project. For as long as geoscientists keep wanting new functionality and new features to include in their models, GPML will continue to evolve and advance forwards. The 1.5 release is the first step of a major structural change; the incremental releases after will be able to progress with additional enhancements and new features.
All new features are currently scheduled for the GPGIM version 1.6. This includes topological plate boundaries (deforming plates), a prerequisite for which is a locus geometry system for describing lines and polygons in relation to the intersections etc of other features' geometry. Future features include measured and inferred paleomagnetic poles, more complex hotspot annotation support, and segmented isochrons and ridge features.