30
AN ORGANISATION FOR A NATIONAL EARTH SCIENCE INFRASTRUCTURE PROGRAM Information modelling – tools Simon Cox

AN ORGANISATION FOR A NATIONAL EARTH SCIENCE INFRASTRUCTURE PROGRAM Information modelling – tools Simon Cox

Embed Size (px)

Citation preview

AN ORGANISATION FOR A NATIONAL EARTH SCIENCE INFRASTRUCTURE PROGRAM

Information modelling – tools

Simon Cox

2

Overview

• A little more UML– Governance concerns, packaging and namespaces

• Hollow World interface• Usage guidelines• A few unavoidable details

UML structure diagrams

Class diagrams• Show information objects, their properties and

relationships

}Class attributes

}Class constraints

Not shown – class operations

Additional parent not shown

Specialization

Association

Class stereotype

Attribute stereotype

Association-end role name

Class

pkg GeoSciML package dependencies

«Application Schema»GeoSciML-Core

«Application Schema»CGI_Utilities

«Application Schema»PhysicalProperties

«Application Schema»Borehole

«Application Schema»LaboratoryAnalysis-Specimen

«Application Schema»GeologicTimescale

«Application Schema»TemporalReferenceSystem

ISO 19108:2006 Temporal Schema

(from ISO 19108 Temporal schema)

ISO DIS 19156:2010 Observ ations and Measurements

(from ISO 19156 Observations and Measurements)

SensorML v 1.0

(from Sensor Web Enablement 1.0)

ISO 19107:2003 Spatial Schema

(from ISO 19107 Spatial Schema)

ISO 19115:2006 Metadata (Corrigendum)

(from ISO 19115-All Metadata)

ISO 19103:2005 Schema Language

(from ISO 19103 Conceptual Schema Language)

«Application Schema»EarthMaterial

Need to update to SWE v2 when available

«import»

«import»

«import»

«import»

«import»

«import» «import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

«import»

Name:Package:Version:Author:

GeoSciML package dependenciesGeoSciML3.0.0CGI Interoperability Working Group

Package diagrams

Dependencies & maintenance arrangements

6

Packaging is important

• Unit of governance• UML Package = XML Namespace

– If stereotyped «applicationSchema»

Object diagrams

• … can get busy very fast

“Accidents in Legoland”

Mostly useful in the analysis phase

Summary of UML structure diagrams

• Package – ownership (governance arrangements) – dependencies

• Class – the data model

• Objects – examples in action

HollowWorld

Hollow World template

• A template for designing application schemas in UML

• Contains key standards components– ISO 19100 Harmonized Model– OGC SWE Model– ISO 19136 stereotypes and tagged values– INSPIRE themes

Hollow World UI

Access to standard/utility componentsAccess to standard stereotypes

ISO Harmonized Model

• Key packages used for Application Schema design:– 19103 – primitive types – 19107 – geometry – 19108 – temporal – 19111 – coords – 19115 – metadata – 19123 – coverages– 19136 – GML – 19156 – O&M

• (go to EA live to explore)

Standard components: OGC Sensor Web

• Key packages used for Application Schema design:– SensorML– Observations & Measurements– SWE Common– SOS, SPS ...

• (go to EA live to explore)

Elements from external standards

• Standard components are loaded from remote SVNs• They are locked against modification by unauthorized

users (i.e. mere application-schema designers!)– i.e. the tool enforces the governance arrangements

• Package your domain model separately

High level usage guidelines

Use of UML

• Informative - sketch or illustrate ideas– Ambler (Agile methodologies …) uses it mostly this way

vs. • Formal & complete

– In order to feed a CASE tool

• For automatic implementation, the model must be complete– Everything required for implementation must be in either

• The model• The rule for converting from model to implementation

– UML == ‘graphical programming language’• Every comma counts, just like real programming

Be aware of the workflow

• Raw observations– E.g. temperature field, flow-rate history, density distribution, colour distribution

(image)– i.e. evidence

• Interpolated/modelled properties– Geophysics, MetOcean– Results of simulations and process models,

conditioned by observations– i.e. predictions, simulations, inversions

• ‘Real-world’ features– E.g. weather system, ore-body, forest, reef– i.e. result of interpretation

• Often useful to segregate these viewpoints into different packages

Be consistent about the abstraction level

• Conceptual - Domain semantics– Terminology as used by practitioners in the discipline

• not an abstraction from data management – ‘Ore-body’, not ‘Table’ or ‘Polygon’ or ‘URI’

• Don’t show identifier, key/keyref in the class model – these are implicit in the relationships

• Implementation – Shows implementation artefacts like ‘string’, ‘id’, ‘index’

19

Document as you go

More information

• For more detail:– https://www.seegrid.csiro.au/twiki/bin/view/AppSchemas/UmlOutline – https://www.seegrid.csiro.au/twiki/bin/view/AppSchemas/UmlGmlStereotypesAndTaggedVal

ues

– https://www.seegrid.csiro.au/twiki/bin/view/AppSchemas/UmlGmlTestModels

UML extensibility points

UML extensions

• Stereotypes– Extend the meta-model: – To create an additional class-of- [classes, associations, attributes]

UML Stereotypes

«FeatureType» standard properties & behaviour

class Context Diagram : BoreholeDetails

«DataType»BoreholeDetails

+ coreCustodian: CI_ResponsibleParty+ coredInterval: GM_Envelope [1..*]+ dateOfDril l ing: TM_CalDate+ dril ler: CI_ResponsibleParty+ dril l ingMethod: BoreholeDril l ingMethodCode+ inclinationType: BoreholeInclinationCode+ nominalDiameter: Quantity+ operator: CI_ResponsibleParty+ startPoint: BoreholeStartPointCode

«CodeList»BoreholeStartPointCode

+ from pre-existing hole+ natural ground surface+ open pit floor or wall+ underground

«CodeList»BoreholeInclinationCode

+ horizontal+ inclined down+ inclined up+ vertical

SF_SamplingCurve

«FeatureType»Borehole

TM_TemporalPosition

Temporal Reference System::TM_CalDate

+ calDate: Sequence<Integer>+ calendarEraName: CharacterString

«datatype»Citation and responsible party information::

CI_ResponsibleParty

+ contactInfo: CI_Contact [0..1]+ individualName: CharacterString [0..1]+ organisationName: CharacterString [0..1]+ positionName: CharacterString [0..1]+ role: CI_RoleCode

«CodeList»BoreholeDrillingMethodCode

+ air core+ auger+ cable tool+ diamond core+ direct push+ hand auger+ hydraulic rotary+ RAB+ RC+ unknown+ vibratory

Coordinate geometry::GM_Env elope

{root}

+ lowerCorner: DirectPosition+ upperCorner: DirectPosition

AbstractDataComponent

simpleTypes::Quantity

+ constraint: AllowedValues [0..1]+ quality: Quality [0..*]+ uom: UomIdentifier [0..1]+ value: double [0..1]

+indexData

1

Name:Package:Version:Author:

Context Diagram : BoreholeDetails«Application Schema» Borehole3.0.0CGI Interoperabil ity Working Group

Class stereotypes

• «FeatureType»– Domain class,

instances have identity• «Type» or none

– Has identity, but not a feature; e.g. geometry, topology, temporal object, definition

• «DataType»– Just a data structure,

no external identity, always inline

• «Union»– Ad-hoc choice

• «Enumeration»– Closed enumeration

• «Codelist»– Extensible enumeration

Package stereotypes

• «Application Schema»– independently governed

package, separate XML namespace

• «Leaf» – Convenience package, no sub-

packages, separate XSD document

UML extensions

• Stereotypes• Tagged values

– Embed information for specific implementation platforms – Doesn’t relate to the conceptual level

UML Tagged values

Tagged values for GML encoding

• Package– xsdDocument– xmlns– targetNamespace

• Class– noPropertyType– byValuePropertyType– asDictionary («codeList» only)– ownedBy (proposed)

• Attribute and association end– sequenceNumber– inlineOrByReference– estimatedProperty (proposed)

https://www.seegrid.csiro.au/twiki/bin/view/AppSchemas/UmlGmlStereotypesAndTaggedValues

Acknowledgements

•SISS Project Sponsors:

•AuScope, ANDS and the ARCS Organisations are supported by the Australian Government through the National Collaborative Research Infrastructure Strategy Program and/or the Education Investment

Fund (EIF) Super Science Initiative

•Workshop assistance provided by:

AN ORGANISATION FOR A NATIONAL EARTH SCIENCE INFRASTRUCTURE PROGRAM

AuScope 2007-2011