370 likes | 380 Views
CSML aims to be explicit about the semantics of information classes, offering potential for advanced processing workflows and reducing representation errors. Learn about the benefits of geospatial standards, interoperability, and compliance with SDI infrastructures like EU INSPIRE Directive. Discover how CSML and ISO standards shape the future of geographic information modeling.
E N D
NERC DataGrid and CSML NDG Team
CSML: Context • NERC DataGrid: the integration problem • multiple organisations, formats, storage mechanisms (file, relational) • only commonality is data semantics
CSML – benefits of explicit semantics • Aim is to be as explicit as possible about semantics of information classes • Offer significant potential for advanced processing workflows • Reduce representation errors (e.g. omitting key attributes) • ‘Conventions’ approach is fragile
CSML – benefits of geospatial standards • Interoperability!! • Expanded user-base • Enhanced ROI • Compliance to emerging SDI infrastructures
e.g. SDI – EU INSPIRE • Directive of EU, passed EP this month • 10-year+ program, €1bn • Based on standards
CSML CDM ??? O&M INSPIRE GEOSS WIS The potential
Emerging ISO standards TC211 – around 40 standards for geographic information Cover activity spectrum: discovery access use …and described by metadata. …in a defined logical structure… …delivered through services… A geospatial dataset… …consists of features and related objects… Background: ‘feature types’ ISO 19101 Domain Reference Model
Background: ‘feature types’ • Geographic ‘features’ • “abstraction of real world phenomena” [ISO 19101] • Type or instance • Encapsulate important semantics in universe of discourse • Application schema • Defines semantic content and logical structure of datasets • ISO standards provide toolkit: • spatial/temporal referencing • geometry (1-, 2-, 3-D) • topology • dictionaries (phenomena, units, etc.) • GML – canonical encoding [from ISO 19109 “Geographic information – Rules for Application Schema”]
<gml:definitionMember> <om:Phenomenon gml:id="taxon"> <gml:description>The taxon name</gml:description> <gml:name codeSpace="http://www.vliz.be">taxon</gml:name> </om:Phenomenon> </gml:definitionMember> </NDGPhenomenonDefinitions> <!--===================================================================--> <gml:FeatureCollection> <!-- ============================================================== --> <gml:featureMember> <NDGPointFeature gml:id="ICES_100"> <NDGPointDomain> <domainReference> <NDGPosition srsName="urn:EPSG:geographicCRS:4979" axisLabels="Lat Long" uomLabels="degree degree"> <location>55.25 6.5</location> </NDGPosition> </domainReference> </NDGPointDomain> <gml:rangeSet> <gml:DataBlock> <gml:rangeParameters> <gml:CompositeValue> <gml:valueComponents> <gml:measure uom="#tn"/> <gml:measure uom="#amount"/> <gml:measure uom="#gsm"/> </gml:valueComponents> </gml:CompositeValue> </gml:rangeParameters> <gml:tupleList> 'ANTHOZOA',63.1,missing 'Scoloplos armiger',66.1,missing 'Spio filicornis',10,missing 'Spiophanes bombyx',60.3,missing 'Capitellidae',131.8,missing 'Pholoe',10,missing 'Owenia fusiformis',23.4,missing 'Hypereteone lactea',6.8,missing 'Anaitides groenlandica',13.2,missing 'Anaitides mucosa',6.8,missing Feature types Application schema ISO 19109 ISO 19103 ISO 19118 ISO 19110 Universe of discourse Standards-based modelling • The standards-based approach • “Conceptual modelling is the process of creating an abstract description of some portion of the real world and/or a set of related concepts.” (ISO 19101)
abstract generic highly specialised feature types spectrum <measurement type=“Radiosonde” measurand=“temperature”/> <temperatureProfile/> <Sonde parameter=“temperature”/> Governance in standards-based modelling • The importance of governance • Information community defined by shared semantics • Need community process to manage those semantics (definitions, models, vocabularies, taxonomies, etc.) • e.g. CF conventions for netCDF files • Role of Feature Type Catalogues [ISO 19110] and registers [ISO 19135] • Governance as driver for granularity • Remit / interest determines appropriate granularity • e.g. IOC, IHO, WMO
CSML ambition • The CSML ‘niche’ • set of base feature types for specialising or using as-is
<?xml version="1.0" encoding="UTF-8"?> <schema targetNamespace="http://ndg.nerc.ac.uk/csml" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:csml="http://ndg.nerc.ac.uk/csml" xmlns:om="http://www.opengis.net/om" xmlns:gml="http://www.opengis.net/gml" elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.1"> <annotation> <documentation>CSML application schema</documentation> </annotation> <!--====================================================================== --> <import namespace="http://www.opengis.net/gml" schemaLocation="GML-3.1.0/base/gml.xsd"/> <import namespace="http://www.opengis.net/om" schemaLocation="phenomenon.xsd"/> <!--====================================================================== --> <!--===== Root element for CSML dataset =====--> <!--====================================================================== --> <complexType name="DatasetType"> <complexContent> <extension base="gml:AbstractGMLType"> <sequence> <element ref="csml:UnitDefinitions" minOccurs="0" maxOccurs="unbounded"/> <element ref="csml:ReferenceSystemDefinitions" minOccurs="0" maxOccurs="unbounded"/> <element ref="csml:PhenomenonDefinitions" minOccurs="0"/> <element ref="csml:_ArrayDescriptor" minOccurs="0" maxOccurs="unbounded"/> <element ref="gml:FeatureCollection" minOccurs="0" maxOccurs="unbounded"/> </sequence> </extension> </complexContent> </complexType> <element name="Dataset" type="csml:DatasetType"/> <!--====================================================================== --> <!--===== Dictionary/definition elements =====--> <!--====================================================================== --> <complexType name="ReferenceSystemDefinitionsType"> <complexContent> <extension base="gml:DictionaryType"/> </complexContent> </complexType> <element name="ReferenceSystemDefinitions" type="csml:ReferenceSystemDefinitionsType"/> <complexType name="ReferenceSystemDefinitionsPropertyType"> <sequence> <element ref="csml:ReferenceSystemDefinitions" minOccurs="0"/> </sequence> <attributeGroup ref="gml:AssociationAttributeGroup"/> </complexType> British Oceanographic Data Centre British Atmospheric Data Centre ‘Governance Principle’ ISO standards Tooling Conceptual model Schemas What is CSML? Climate Science Modelling Language
CSML Version Two • CSML v2 • More explicit/expanded feature types: • Swath • ProfileSeries{Radar, Section, ProfileSeries} • Lost ‘composite domain pattern’ • GML 3.2 ( ISO 19136) • removed ‘storage descriptors’ from core CSML schema • ‘affordance’ (i.e. FT behaviour) • O&M
CSML and O&M • OGC ‘Observations and Measurements’ CSML An Observation is an Event whose result is an estimate of the value of some Property of the Feature-of-interest, obtained using a specified Procedure
CSML AbstractFeature • Provides common model for all CSML feature types • Supports OGC Observations and Measurements model • Each CSML feature: • has a type (with operations and required attributes), the ‘affordance’ concept • represents some physical ‘parameter’ (Phenomenon) • has a ‘value’ property which is a coverage (with domain and range) – the domain is often a subclass of ReferenceableGrid • may have additional attributes providing ‘reference’ spatio-temporal location parameters
CSML ReferenceableGrid • Implementation of ISO 19123 CV_ReferenceableGrid, missing from GML • Subject of OGC GML Change Request (doc 06-160) • Analagous to CF – grid locations specified for each axis of CRS • Efficiency allowed when CRS axis aligned with grid axis • Supports both spatial and temporal (and compound) CRS
CSML instances – semantic wrapper to persisted file-based data • xlink recommended in GML for linking to external content, but no best practice established • CSML wants to use this for linking to storage desriptor for coverage domain/range • ‘simple xlink’ properties: • role: indicates a property of remote resource • arcrole: describes meaning of remote resource <someGMLElement xlink:arcrole="hasRemoteContentEmbeddedAt#localXpath" xlink:href="storageDescriptor#portion" xlink:role="storageSchemaIdentifier" xlink:show="embed" xlink:actuate="onRequest | onLoad"/>
CSML instances – xlink example <csml:gridOrdinate> <csml:GridOrdinateDescription> <csml:coordAxisLabel>Geodetic longitude</csml:coordAxisLabel> <csml:coordAxisValues> <csml:SpatialOrTemporalPositionList> <csml:coordinateList srsName=“WGS84”>13.5 24.9 32.4 37.7 41.5 46.8 54.4 65.7 </csml:coordinateList> </csml:SpatialOrTemporalPositionList> </csml:coordAxisValues> <csml:gridAxesSpanned>x</csml:gridAxesSpanned > <csml:sequenceRule axisOrder="+1">Linear</csml:sequenceRule> </csml:GridOrdinateDescription> </csml:gridOrdinate> <csml:coordAxisValues xlink:arcrole=“http://ndg.nerc.ac.uk/xlinkUsage/insert#SpatialOrTemporalPositionList/coordinateList” xlink:href=“file://myfile.nc#lon” xlink:role=“http://ndg.nerc.ac.uk/fileFormat/netcdf” xlink:show=“embed”> <csml:SpatialOrTemporalPositionList> <csml:coordinateList srsName=“WGS84”/> </csml:SpatialOrTemporalPositionList> </csml:coordAxisValues> <csml:coordAxisValues xlink:arcrole=“http://ndg.nerc.ac.uk/xlinkUsage/insert#SpatialOrTemporalPositionList/coordinateList” xlink:href="CSMLStorageDescriptorExample.xml#coapec_u_2" xlink:role= "http://ndg.nerc.ac.uk/fileFormat/csmlStorageDescriptor" xlink:show=“embed”> <csml:SpatialOrTemporalPositionList> <csml:coordinateList srsName=“WGS84”/> </csml:SpatialOrTemporalPositionList> </csml:coordAxisValues>