xmml – a standards-conformant xml language for geology features simon cox csiro exploration &...
TRANSCRIPT
XMML – a standards-conformant XML language for geology features
Simon Cox
CSIRO Exploration & Mininghttp://www.em.csiro.au
20/04/23 2
Outline
Information communities
Information models and GML
XMML
Information Communities
Meaningful discourse requires shared information models
20/04/23 4
“Feature Model”
“Features” is a useful meta-model for geospatial data Feature == item of interest in the real world,
or a digital representation of one geospatial context
with “identity” a description of which you might want to transport
Feature-type – fixes the set of properties
ISO/TC 211 – Geographic Information ISO 19109 – Rules for Application Schema ISO 19110 – Feature Cataloguing Methodology
20/04/23 5
Feature Types
Borehole collar location shape collar diameter length operator logs …
Fault Surface trace Dip Displacement Age …
Ore-body Commodity Deposit type Host formation Shell (3-D outline) Resource estimate …
20/04/23 6
Community language
… based on the Feature model requires catalogue of feature-types
fault, rock-unit natural phenomena
borehole, gravity measurement artefacts of exploration activity
mineral occurrence intersection of geology & economics
descriptors, classifications (vocabularies, etc) lithologies, commodities, stratigraphic units, …
Formalised description of this language structure of feature types defined in XML Schema constraints on values of properties defined in
schema external dictionaries
“GML Application Language”
20/04/23 7
GML 3
Open GIS Consortium
XML implementation of ISO Feature model
Provides a set of components for building Application Languages
Geometry/topologytemporalcoordinate reference systems (ISO 19107, 19108, 19111)
Coverages & grids (ISO 19123), Observations, Dynamic features, Definitions, Units of measure, essential basic datatypes
v3.1 imminent
N.B. You can’t use GML directly it must be packaged in an Application Language
Feature Model and GML
… and the relationship with UML and table models
20/04/23 9
Feature model in UML
Basic feature model
to be extended for specific applications
class name = feature-type e.g. borehole
attribute & association names = properties of this feature-type
Strong typing consequence of defining feature-type by “set of
properties”
20/04/23 10
Information transport
Serialised form
Based on Geography Markup Language
element name == feature-type
sub-elements == properties of this feature-type
<xmml:Borehole gml:id="R456"> <gml:description>Exploration hole</gml:description> <gml:name>north_r_679</gml:name> <xmml:collarLocation> <gml:Point srsName="urn:ga:localGrid68" gml:id="c679"> <gml:pos> ... </gml:pos> </gml:Point> </xmml:collarLocation> <xmml:collarDiameter uom="m">0.15<xmml:collarDiameter> <xmml:shape xlink:href="http://my.big.org/borehole_surveys/s679"/> <xmml:logs> <xmml:IntervalLog> <gml:name>Lithology log</gml:name> … <xmml:categoryList property="#lith" codeSpace="#unitcodes“> CANIS FH PL2 PL3 AQ AQL T1 T2 C1 C2 GCWS </xmml:categoryList> ... </xmml:IntervalLog> </xmml:logs></xmml:Borehole>
20/04/23 11
<gml:Feature gml:id="R456"> <gml:description>Exploration borehole</gml:description> <gml:name>north_r_679</gml:name> <gml:location> <gml:Point srsName="urn:ga:localGrid68" gml:id="c679"> <gml:pos> ... </gml:pos> </gml:Point> </gml:location></gml:Feature>
<xmml:Borehole gml:id="R456"> <gml:description>Exploration borehole</gml:description> <gml:name>north_r_679</gml:name> <xmml:collarLocation> <gml:Point srsName="urn:ga:localGrid68" gml:id="c679"> <gml:pos> ... </gml:pos> </gml:Point> </xmml:collarLocation> <xmml:collarDiameter uom="m">0.15<xmml:collarDiameter> <xmml:shape xlink:href="http://my.big.org/borehole_surveys/s679"/></xmml:Borehole>
UML <-> GML
20/04/23 12
UML profile required for GML
UML Classes == GML Features/Objects things with identity
UML Associations/attributes == GML properties name indicates relationship between object and value
Associations must be labelled rolename == property name
rolename must be unique for a class content model for property is fixed
20/04/23 13
Table <-> GML
There is no unique table <-> xml mapping
Similar problem in Object-Relational mapping
20/04/23 14
Mapping XML <-> table
id description name collarDiameter
mm
collarLocation shape logs
R456 Exploration hole north_r_679 150 #c679 #s679 ?
<xmml:Borehole gml:id="R456"> <gml:description>Exploration hole</gml:description> <gml:name>north_r_679</gml:name> <xmml:collarLocation> <gml:Point srsName="urn:ga:localGrid68" gml:id="c679"> <gml:pos> ... </gml:pos> </gml:Point> </xmml:collarLocation> <xmml:collarDiameter uom="m">0.15<xmml:collarDiameter> <xmml:shape xlink:href="http://my.big.org/borehole_surveys/s679"/></xmml:Borehole>
code label diam
in
wellHead survey data comment updateBy updateDate access
R456
north_r_679
6 #c679 #s679 ? Exploration
hole
RobidaF 2003-10-08 open
20/04/23 15
Mapping XML <-> table
id description name
R456 Exploration hole north_r_679
feature property value scale
R456 collarDiameter 150 mm
R456 collarLocation #c679
R456 shape #s679
<xmml:Borehole gml:id="R456"> <gml:description>Exploration hole</gml:description> <gml:name>north_r_679</gml:name> <xmml:collarLocation> <gml:Point srsName="urn:ga:localGrid68" gml:id="c679"> <gml:pos> ... </gml:pos> </gml:Point> </xmml:collarLocation> <xmml:collarDiameter uom="m">0.15<xmml:collarDiameter> <xmml:shape xlink:href="http://my.big.org/borehole_surveys/s679"/></xmml:Borehole>
Yes - schema mapping is required to generate GML that accords to the community model
eXploration & Mining Markup Language
A GML Application Language
20/04/23 17
XMML Feature Catalogue
Borehole
Observation (OGC SensorWeb)
Gravity measurement (GA)
Geochemistry/Assay result (ADX)
Geological material (NORTON)
Geological timescale (IUGS)
Mineral occurrence (GA, GSC)
Procedure, Project, Station, Specimen, Tenement, Instrument (GGIPAC, etc)
Point, Curve, Surface, Solid with properties, some structural geology elements (Fractal, pmd*CRC)
Time-series (ASEG)
Mine components?
Finite element model (FLAC, FastFlo)
Simulation/model state (pmd*CRC)
[General “coverage”, including tensor fields, directly from GML]
20/04/23 18
XMML Borehole model
20/04/23 19
XMML Assay Report
20/04/23 20
XMML Mineral Occurence
20/04/23 21
Design method
Iterate between XML instances, XML Schema, UML model, harmonising with current state of suite of schemas
Adapt existing standard e.g. GGIPAC, ASEG
Private model from dominant data provider e.g. Geoscience Australia
Sponsor requirements e.g. Fractal Technologies, CSIRO/pmd*CRC, BGS,
Snowdens/WMC/Newmont
Consultation with stakeholders TWiki
20/04/23 22
20/04/23 23
Project schedule
Commenced at CSIRO 2000 Sponsors joined progressively MERIWA funded phase concluded June 2003
Follow-ups through GGIPAC, pmd*CRC, AcQuire, AusIndustry ADX (assay data exchange) to be widely deployed in mining industry - 2004 XMML for Australian surveys and mines depts as part of ASDI – 2004 WFS Pilot planned for 2004
AusIndustry, Minerals Council of Australia CSIRO, SCO, GA, PirSA
Harmonisation meeting Edinburgh 2003-11-19/21 BGS, GSC, USGS, GA, BRGM, BGM XMML vs NADM/NORTON vs ESRI “domain model”
Maintenance Schema repository?
CSIRO is not stable enough Maintenance agency
OGC – requires volunteers IUGS??
ISO 19135
20/04/23 24
Alternatives
See also ESML, GeoSciML, …
20/04/23 25
Take-home
ISO “Feature Model” is a useful basis for a community language
UML <-> XML mapping straightforward but requires use of a simple UML profile
table <-> XML mapping not unique
Community language will require community agreement and governance …
20/04/23 26
Questions?
http://xmml.arrc.csiro.au
20/04/23 27