Model driven standards development
By Peter Parslow, UK & Dr. Knut Jetlund, Norway
Many software professionals are familiar with model driven architecture. Model driven data design has been popular for geospatial data for many years, enabling conversations at an appropriate level with both domain experts and implementation people whilst improving consistency between what is designed and what is delivered.
In ISO/TC 211 and Open Geospatial Consortium, we are leading a drive for ‘model driven standards development’, where as much as possible of the open standard document is created from a data model. As an open standard, this data model is necessarily independent of implementation: a conceptual model. Both organisations have been successfully using UML Class Diagrams for many years to do this; ISO/TC 211 detail the approach in ISO 19103 Geographic information — Conceptual schema language and ISO 19109 Geographic information — Rules for application schema. Some other ISO committees, such as ISO/TC 204 Intelligent transport systems, use these standards, as do bodies like the IHO, DGIWG and European Commission geospatial team.
Having agreed the UML model, we generate not only the diagrams that appear in the standard, but also any tabular feature concept dictionary (data dictionary). As both organisations move from word processor based document creation to online tools, we are ensuring that we can load the processed UML export into the tools. In ISO, this is the ISO Online Standards Development tool, where ISO/TC 211 is one of the leading committees adopting it. OGC are starting to use Metanorma, which uses the same FontoXML standards markup grammar.
In addition to creating parts of the document, we create several other files which can be used to help implement the standards: the UML model, XML schemas (where relevant), web ontology (OWL) representations. See Resources.
Why do we do this?
We don’t do this to make our lives easier – the benefit is that we can be more sure that the implementation artefacts match the contents of the standard. In other words, if you download and use our model or schema, or reference our web ontology definitions, you can be much more certain that your implementation conforms to the standard.
We believe this is a step towards “machine readable” standards, a goal of the ISO/IEC SMART project (ISO - IEC/ISO SMART).
For example, my own organisation (Ordnance Survey) has derived implementation models from the standard models, and generated DDL (for Oracle databases), ESRI database definitions, and CSV headers from our models.
How much further can we go?
At present, ISO/TC 211 and OGC UML models are available as Enterprise Architect and XMI files. OMG’s XMI is the open standard for UML model exchange (ISO 19509 Information technology — XML Metadata Interchange (XMI)); sadly different implementations of it do not (yet) interoperate well. Perhaps, when that issue is resolved open standard format models will be more reliable useful.
As we move beyond XML for implementation, we’ll be generating JSON schemas. We are just starting to publish our web ontology fragments in line with W3C good practice.
Standards are made up of requirements, recommendations, and permissions (together known as “provisions”). These are usually grouped into requirements / conformance classes. By ensuring that each provision is uniquely identifiable, it becomes possible to test conformance. This is the core of the “modular specification” and another element of ISO SMART. Perhaps one day, ISO conformance classes and provisions will be accessible online alongside the document; ISO SMART has been experimenting with technology for this.
We have been looking at managing the provisions themselves in the model. If the provisions themselves can be expressed in a machine-readable way, it should become possible to generate test “harnesses” from the model. Annotating the UML classes with Object Constraint Language (OCL) goes a little way towards this.
References for further information
Information Exchange between GIS and Geospatial ITS Databases Based on a Generic Model, ISPRS Int. J. Geo-Inf. 2019, 8(3), 141; https://doi.org/10.3390/ijgi8030141
Adapted Rules for UML Modelling of Geospatial Information for Model-Driven Implementation as OWL Ontologies, ISPRS Int. J. Geo-Inf. 2019, 8(9), 365; https://doi.org/10.3390/ijgi8090365
IFC Schemas in ISO/TC 211 Compliant UML for Improved Interoperability between BIM and GIS, 2020. ISPRS Int. J. Geo-Inf. 2020, 9(4), 278; https://doi.org/10.3390/ijgi9040278
ISPRS-Annals - A STRUCTURE OF UML PROFILES FOR MODELLING OF GEOSPATIAL INFORMATION IN GIS, ITS AND BIM, Jetlund, K.: A STRUCTURE OF UML PROFILES FOR MODELLING OF GEOSPATIAL INFORMATION IN GIS, ITS AND BIM, ISPRS Ann. Photogramm. Remote Sens. Spatial Inf. Sci., VI-4/W1-2020, 101–108, https://doi.org/10.5194/isprs-annals-VI-4-W1-2020-101-2020, 2020.
ISO/TC 211 Resources: https://committee.iso.org/sites/tc211/home/re.html