GML encoding of NADM C1 Connecting geosciences to international standards Eric Boisvert (GSC) Bruce R. Johnson (USGS) Boyan Brodaric (GSC) Simon Cox (CSIRO)
What is GML ? Geography Markup Language XML encoding of ISO standard for representation of geographic features Building blocks, providing… Feature model Points, lines, polygons (geometries) Projection definitions Dictionary structures Topology, Time, and more..
What is GML? GML by itself has little use Need to define a GML application Extend the provided building blocks and assign domain (community) specific meaning. gml:_GML gml:_Feature gml:_GML gml:_Geometry gml:_PropertyValue Street
Why GML ? International standard (Open GIS Consortium) Opens the possibility to connect with other communities WFS (Web Feature Service) Can be used with GML enabled tools
Why GML ? GML client NADM-GML XMML-GML NADM-GML USGS WFS GSC Etc. WFS internet USGS schema GSC schema other schema internet
GML is XML Uses XML to define the building blocks Defined with standard XML Schema XML Schema is then used to extend GML Constraints and restrictions defined the same way in all XML Schemas GML document must validate against an XML Schema (GML Schema + domain specific Schema)
GML is not any XML GML has rules (conceptual model) Features must derive from core GML features GML also has syntax rules Class->property->Class->property Mandatory ids Provides ‘design patterns’
Example Handbury Road North Asphalt Mandatory ID Features have 0 or more geometries RoadSegment -name: string -numberOfLane: int -surfaceType: string gml:_GML gml:_Geometry 0..* +centerLineOf properties
Example Handbury Road North 2 Asphalt … options
Encoding NADM C1 in GML Start from conceptual model Create a GML friendly implementation model in UML Turn association classes into ‘bridge’ classes Define which elements can contain which other elements Define properties and name them
{Must be part of current CM} _CompoundMaterial -consolidationDegree: string MineralOrganicMaterialVoid InorganicFluid Rock UnconsolidatedMaterial Glass EMConstituent -proportion: double -emcRole: string GeologicRelation emFabric 0..* emConstituentMaterial 1..* +emConstituentProperty 1 _GeologicFeature _EarthMaterial -metamorphicGrade: string -color: string 0..* +emcRelation Conceptual GML Friendly Fabric -pervasiveness: string
_GeologicFeature _EarthMaterial -metamorphicGrade: string -color: string 0..* _CompoundMaterial -consolidationDegree: string emFabric Fabric -pervasiveness: string Rock _GeologicEvent Genesis 0..1+emGenesis 0..* EMConstituent -proportion: double -emcRole: string +emConstituentProperty 1..* 1 +emConstituentMaterial
International effort GML encoding is done within an international effort to improve interoperability of geoscience First meeting in Edinburgh (Nov. 2003) Next meeting Florence (August 2004) Testbed planned
Conclusion Most difficult part is to define a design pattern : how to resolve problem consistently Excellent review process for the conceptual model : raised several issues Questions ?