=Paper= {{Paper |id=None |storemode=property |title=An explicit OWL representation of ISO/OGC Observations and Measurements |pdfUrl=https://ceur-ws.org/Vol-1063/paper1.pdf |volume=Vol-1063 |dblpUrl=https://dblp.org/rec/conf/semweb/Cox13 }} ==An explicit OWL representation of ISO/OGC Observations and Measurements== https://ceur-ws.org/Vol-1063/paper1.pdf
        An explicit OWL representation of ISO/OGC
             Observations and Measurements

                                    Simon J. D. Cox

                                 CSIRO Land and Water
                                        PO Box 56
                               Highett, Vic. 3190 Australia
                               simon.cox@csiro.au




      Abstract. We have developed OWL ontologies for the ISO/OGC model for
      Observations, and for other standard geographic information schemas (geome-
      try, time, metadata) upon which it depends. Translation from the original UML
      to OWL follows the ISO 19150-2 rules. The ontologies have been prepared
      standalone, to respect the ‘upper ontology’ implied by the ISO UML profile and
      ISO General Feature Model, and thus avoid introducing external bias. Mapping
      to other ontologies, such as the SSN ontology, can be done subsequently in
      RDFS and OWL axioms, and maintained as linksets separate from the structure
      model. A key issue is whether the OWL representation should exactly repro-
      duce the frame-based UML model from the standard, or be an open-world
      OWL representation of some underlying model. This affects property scoping
      and object property restrictions. The latter choice requires more interpretation
      during conversion. Two incompatible ontologies have been developed through
      following both approaches.

      Keywords: observation, ontology alignment, sensor, UML, OWL, OGC, ISO,
      Semantic Sensor Network


1     Introduction

An information model for observations and measurements (O&M), including features
used in sampling, was developed as part of the Open Geospatial Consortium’s
(OGC’s) Sensor Web Enablement Initiative (SWE) [1, 2, 3]. Following OGC’s stand-
ard practice, the model is formalized in UML. Subsequently, O&M was further de-
veloped in version 2.0 as an ISO standard [4]. A GML-conformant XML Schema is
also available [5], based on the UMLXML Schema transformation rules described
in ISO 19136 [6]. SensorML provides a complementary model and schema for de-
scribing observation production systems [7].
   An early ontological analysis of O&M was provided by Probst [8, 9]. However,
this was compromised by misinterpretation of some key elements of the model, prob-
ably triggered by reliance on draft versions of the OGC documents.
   The W3C incubator project on Semantic Sensor Networks developed the SSN on-
tology for sensors and observations [10, 11, 12]. The SSN project reviewed a large
number of existing or provisional sensor and observation ontologies, several of which
had been inspired by O&M, or at least had taken elements from it. The SSN ontology
itself is aligned with DOLCE Ultralite (DUL) [13], requiring the classes derived from
O&M and SensorML to be placed into the DUL hierarchy. The resulting ontology
adjusts both terminology and relationships relative to the original SWE UML models.
   One of the recommendations from the Report on the work of the SSN Incubator
[11] is to ‘Foster the adoption of the SSN Ontology in the OGC community’. OGC
has subsequently dipped its toe in the water of ontologies through its publication of
the GeoSPARQL standard [14]. While GeoSPARQL focuses on spatial query exten-
sions to SPARQL, by necessity it includes a lightweight ontology for some elements
of the ISO/OGC General Feature Model. It is not linked to any existing ontology.
Adoption of the SSN ontology in the OGC community is thus immediately challenged
by the mismatch between its DUL-basis and the OGC work with its UML and Gen-
eral Feature Model basis.
   OGC has a close relationship with ISO Technical Committee 211 (ISO/TC 211),
and uses various ISO standards as its ‘Abstract Specification’, many of which have
used UML for formalization. Project 19150-2 in ISO/TC 211 is currently developing
rules for use of OWL for designing geographic applications, and will provide an
OWL version of its models in support of this.
   In this paper we describe OWL ontologies for observations which are based direct-
ly on the UML model, using transformation rules defined in ISO 19150-2 [15]. This
provides an OWL view of the O&M model unbiased by alignment with any external
ontology, and supports development of a more explicit bridge between the SWE and
SSN worlds.


2      UML-OWL transformation rules

Project 19150-2 in ISO/TC 211 is developing rules for transforming the UML models
comprising the Harmonized Model into OWL ontologies, as well as rules for develop-
ing Application Schemas directly in OWL. This will be published as an ISO Standard,
and is currently in Committee Draft (CD) status [15].
   The so-called ‘Harmonized Model’ is a set of standard models for geometry, tem-
poral, metadata, spatial fields, coordinate systems, etc, which may be used in the de-
velopment of geographic ‘Application Schemas’, i.e. domain- and application-specific
information models. O&M 2.0 is part of the Harmonized Model as it depends on the
standard components and is published through the Harmonized Model code reposito-
ry. The Harmonized Model is formalized using a UML profile described in ISO
19103 and ISO 19109. This profile uses UML as a “conceptual” modeling language,
where the classes are generally intended to represent phenomena in the real world,
and not merely the documents describing them, though it appears that the distinction
was not clear when the TC 211 activities commenced, and the Harmonized Model is
uneven in this respect. This approach may be contrasted with initiatives that provide a
UML profile for graphical representation of RDF and OWL ontologies (e.g. OMG’s
ODM [16]). Note that Berardi et al. [17] analysed UML and determined that it corre-
sponds to a description logic in its own right.
   The ISO 19150-2 rules define the mappings and some URI patterns. As expected,
UML package  OWL ontology (and RDF namespace); UML class  OWL class
with specialization modeled as sub-classing; UML attribute and association-role 
RDF Property.
   A key limitation of UML is a lack of expressivity regarding relationships between
properties, which are not normally first class resources in UML models, so no use is
made of property specialization, which is a powerful RDFS capability. The ISO
19150-2 rules also leave open some questions regarding the scoping of properties.
Different conventions apply in UML and OWL: UML is a frame-based system, in
which properties are strictly scoped to classes, while in RDF and OWL properties are
first class entities, and are effectively scoped only to the RDF namespace (i.e. the URI
stem). Nevertheless, two mechanisms are available to bind RDF and OWL properties
to a class:

─ by specifying the RDFS domain of a property;
─ by using an OWL restriction class with cardinality constraints.

In the RDF/OWL world, it is conventional to either specify the RDFS domain of a
property as a more general class, or not specify a domain at all. This supports maxi-
mum reusability of properties in new contexts. So in converting the Harmonized
Model from UML to OWL there is an important choice to be made:

1. is the UML formalization of the Harmonized Model canonical? This requires us to
   strictly replicate the frame-based assumptions in the OWL representation; or
2. is the UML merely a view of some underlying model? In this case the limitations
   of the UML meta-model with its closed-world assumption are incidental, and it is
   valid to generate an OWL representation that follows open-world RDF and OWL
   assumptions.

An ontology developed under the former interpretation is primarily concerned with
the classes. In UML each property is scoped to a class, and this determines the rule
for the domain of the RDF property, and also provides a simple naming rule.
   Under the latter interpretation an OWL representation of the Harmonized Model
will provide both classes and properties for re-use in Application Schemas. Naming
properties in this case is straightforward if UML attribute names and association role
names are unique within a package, but requires workarounds where there are multi-
ple properties on different UML classes with the same name, especially if their range
is also different. An interpretation step is also required when choosing the best class
to specify as the property domain – more or less general classes are consistent with
the UML. The resulting ontology may be more familiar to users accustomed to the
usual OWL assumptions and style, but will show some bias in relation to the original
UML artefacts.
   In this study we have prepared two ontologies, one following each set of assump-
tions. These are available online at the ontology URIs. In the following section we
provide some specific details for each version.


3      Upper ontology

Re-use of elements from well-known RDF vocabularies is common when developing
ontologies. In some cases this is not merely a matter of convenience, but involves a
commitment to an existing system or Upper Ontology, such as DOLCE. The ad-
vantage of this approach is inheritance of a rigorous logical framework, and easy
harmonization with other ontologies that use the same basis. However, there are risks
from the potential introduction of cognitive bias inherent in the upper ontology, which
may be in conflict with the subject material.
   As its name suggests, the ISO Harmonized Model is a self-consistent set of models
covering aspects of geographic information, which are maintained as a group. There
are multiple dependencies between elements of the harmonized model.
   Core packages that serve as dependencies in many applications include:

─ ISO 19101, 19109, 19123 [18, 19, 20] – establish the ‘General Feature Model’
  (GFM), a meta-model for object-oriented application schemas, and the model for
  spatial fields or ‘coverages’
─ ISO 19103 [21] – provides primitive and base types, such as numbers, character-
  strings, measures, names and records
─ ISO 19107, 19108, 19111 [22, 23, 24] – provide spatial and temporal classes, and
  coordinate reference systems
─ ISO 19115 [25] – provides a detailed model for ‘metadata’, focused on dataset
  provenance, quality, access and discovery information

A key feature of the GFM is the disjoint nature of features and properties, which is
consistent with the RDFS/OWL meta-model for classes and properties. Features and
geometry/temporal classes are implicitly disjoint, following from the appearance of
spatial/temporal classes as property ranges. The GFM and these other base packages
provide what is effectively an upper-ontology for geographic application schemas.
This role for the GFM is explicit in ISO 19150-2, where the rules of developing ap-
plication schemas in OWL are all framed in terms of elements characterized using the
GFM. Note that, in parallel with the preparation of ISO 19150-2, ISO 19109 is under
revision (current status ‘Draft International Standard’ [26]), with support for OWL
implementation as one of the motivations.
   The GFM is not a comprehensive upper ontology in the manner of DOLCE. But it
is nevertheless the standard framework within the geographic information community
represented by the membership of OGC and ISO/TC 211. Given the existence of an
upper-ontology indigenous to this community, and the fact that the models that define
this ‘upper ontology’ appear as explicit dependencies in O&M, our strategy in devel-
oping OWL representations of O&M is to ground them in this framework, and avoid
the premature introduction of a different cognitive bias from external frameworks.
Alignment with independent upper ontologies may then be done later as a separate
exercise.


4              Ontology implementation details

4.1            Base ontology

A set of OWL classes corresponding to UML class stereotypes in ISO 19103/19109
are defined:
─ FeatureType – the set of real-world features
─ DataType	
   – classes that do not support use by-reference. Individuals should be
  implemented as blank-nodes.
─ Union – for classes that are explicit unions of otherwise disjoint classes
─ CodeList – for extensible sets of terms.
For example (Turtle notation [27]):

h2o:FeatureType	
  
	
  	
  a	
  	
  	
  owl:Class	
  ;	
  
	
  	
  rdfs:label	
  "Feature	
  Type	
  stereotype"^^xsd:string	
  ;	
  
	
  	
  h2o:isStereotype	
  "true"^^xsd:boolean	
  .	
  
	
  
h2o:CodeList	
  
	
  	
  a	
  	
  	
  owl:Class	
  ;	
  
	
  	
  rdfs:label	
  "Code	
  list	
  stereotype"^^xsd:string	
  ;	
  
	
  	
  rdfs:subClassOf	
  skos:Concept	
  ;	
  
	
  	
  h2o:isStereotype	
  "true"^^xsd:boolean	
  .	
  

The rule is that an OWL class corresponding to a stereotyped UML class is imple-
mented as a sub-class of the corresponding stereotype class. Note that the ISO 19103
stereotype Enumeration is handled differently, since OWL does not allow derivation
of datatypes through sub-classing.
   Datatype definitions from ISO 19103 are defined using OWL2 mechanisms. For
example

basic:CharacterString	
  
	
  	
  a	
  	
  	
  rdfs:Datatype	
  ;	
  
	
  	
  rdfs:label	
  "Character	
  string"^^xsd:string	
  ;	
  
	
  	
  owl:equivalentClass	
  xsd:string	
  .	
  
	
  
basic:Number	
  
	
  	
  a	
  	
  	
  rdfs:Datatype	
  ;	
  
	
  	
  rdfs:label	
  "Number"^^xsd:string	
  ;	
  
	
  	
  owl:equivalentClass	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  rdfs:Datatype	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  owl:unionOf	
  (xsd:double	
  xsd:float	
  xsd:decimal)	
  ]	
  .	
  
	
  
basic:Measure	
  
	
  	
  a	
  	
  	
  owl:Class	
  ;	
  
	
  	
  rdfs:label	
  "Measure"@en	
  ,	
  "Mesure"@fr	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  owl:cardinality	
  "1"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  owl:onProperty	
  basic:value	
  ]	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  owl:cardinality	
  "1"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  owl:onProperty	
  basic:uom	
  	
  ].	
  


4.2            Dependencies

O&M has formal dependencies on classes from ISO 19107, 19108, 19109, 19115 and
19123, as well as transitive dependencies on a number of other standards. The GFM
from ISO 19109 is implemented primarily in two classes: gf:AnyFeature and
gf:PropertyType. AnyFeature is defined as follows:

gf:AnyFeature	
  
	
  	
  a	
  	
  	
  owl:Class	
  ;	
  
	
  	
  rdfs:label	
  "Geographic	
  feature"^^xsd:string	
  ;	
  
	
  	
  rdfs:subClassOf	
  h2o:FeatureType	
  ;	
  
	
  	
  h2o:isAbstract	
  "true"^^xsd:boolean	
  ;	
  
	
  	
  owl:disjointWith	
  gf:PropertyType	
  ,	
  tm:Object	
  ,	
  gm:Object	
  ;	
  
	
  	
  owl:equivalentClass	
  h2o:FeatureType	
  ;	
  
	
  	
  skos:notation	
  "GFI_Feature"^^h2o:ISOClassName	
  .	
  

The sub-class, equivalent class, and disjoint properties here provide the essential
characteristics of ‘feature’ in the OGC/ISO context, and the GFM ‘upper ontology’.
  The class hierarchy from the spatial schema defined in ISO 19107 follows the
UML. For example, the class of spatial points is defined:

gm:Point	
  	
  
	
  	
  a	
  	
  	
  owl:Class	
  ;	
  
	
  	
  rdfs:label	
  "Spatial	
  point"^^xsd:string	
  ;	
  
	
  	
  rdfs:subClassOf	
  gm:Primitive	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  owl:cardinality	
  "1"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  owl:onProperty	
  gm:position	
  ]	
  ;	
  
	
  	
  skos:notation	
  "GM_Point"^^h2o:ISOClassName	
  .	
  
In ISO 19107 the geometry and topology classes are specified primarily in terms of
the operations that software implementations must support. Hence, at this time there
has been no attempt to implement any more than the subsumption hierarchy in OWL.
   We have developed partial OWL implementations of the other packages in a simi-
lar vein, sufficient to support the dependencies of O&M. At this time full implementa-
tions of the class models are only provided for O&M [4] and metadata [25].


4.3           Rules for an ontology matching strict UML pattern

The ontologies for observations and sampling features that strictly match the UML
assumptions are denoted:

     http://def.seegrid.csiro.au/isotc211/u/iso19156/2011/observation	
  
     http://def.seegrid.csiro.au/isotc211/u/iso19156/2011/sampling	
  

The RDF namespaces for the elements in the ontologies append # to these names:

@prefix	
  om:	
  	
  .	
  
@prefix	
  sam:	
  	
  .	
  

These URIs match the pattern defined in ISO 19150-2, except that here the path
http://def.seegrid.csiro.au/isotc211/u/ (/u/ for UML) substitutes for the
domain http://def.isotc211.org/ so that we can actually publish the test ontologies.
   The following specific rules are applied to generate the strict OWL model:
a) class name includes the bi-alpha prefix from the UML model where it exists
b) e.g. om:OM_Observationproperty name includes the class name in order to dis-
     ambiguate it from properties with the same name on other classes
          e.g. om:OM_Observation.result
c) property domain is the class on which it is found in the UML model
d) property range is the target class or type from the UML model
e) property cardinality is specified in OWL restrictions providing both ends of the
     interval, except if the upper limit is ‘unbounded’, for which there is no explicit
     representation in OWL.
   Developing an OWL representation from the UML following this rule is predicta-
ble. For example, the following is the strict OWL representation of the UML model
for spatial sampling features shown in Fig 1.:

sam:SF_SpatialSamplingFeature	
  
	
  	
  a	
  	
  	
  owl:Class	
  ;	
  
	
  	
  rdfs:label	
  "Spatial	
  sampling	
  feature"@en	
  ;	
  
	
  	
  rdfs:subClassOf	
  h2o:FeatureType	
  ,	
  sam:SF_SamplingFeature	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  owl:cardinality	
  "1"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  owl:onProperty	
  sam:SF_SpatialSamplingFeature.shape	
  ]	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  owl:minCardinality	
  "0"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  owl:onProperty	
  sam:SF_SpatialSamplingFeature.positionalAccuracy	
  ]	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  owl:maxCardinality	
  "2"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  owl:onProperty	
  sam:SF_SpatialSamplingFeature.positionalAccuracy	
  ]	
  ;	
  
	
  	
  rdfs:subClassOf	
  
	
  	
  [	
  a	
  	
  	
  owl:Restriction	
  ;	
  
	
  	
  	
  	
  owl:minCardinality	
  "0"^^xsd:nonNegativeInteger	
  ;	
  
	
  	
  	
  	
  owl:onProperty	
  sam:SF_SpatialSamplingFeature.hostedProcedure	
  ]	
  ;	
  
	
  	
  skos:notation	
  "SF_SpatialSamplingFeature"^^h2o:ISOClassName	
  .	
  
	
  


                                                                               GFI_Feature
                                                                        «FeatureType»
                                                                      SF_SamplingFeature




                                                                      «FeatureType»
                                                                 SF_SpatialSamplingFeature

                                                     +   positionalAccuracy :DQ_PositionalAccuracy [0..2]




                                                           Platform                  Geometry

                               +hostedProcedure               0..*                  +shape

                                        «FeatureType»                                         «type»
                                         OM_Process                                          GM_Object




                      Fig. 1. UML class model for spatial sampling features from O&M [4]

However, the ontology resulting from these strict rules contains features that would be
considered unusual to users familiar with more conventionally designed ontologies.
Most immediately striking are the compound URIs for properties, which contain mul-
tiple punctuation elements. For example, the observation result property is defined

om:OM_Observation.result	
  
	
  	
  a	
  	
  	
  owl:ObjectProperty	
  ;	
  
	
  	
  rdfs:domain	
  om:OM_Observation	
  ;	
  
	
  	
  rdfs:label	
  "Result"@en	
  .	
  

The appearance of a very specific domain reduces the potential re-use of properties.
4.4         Rules for an open world ontology

The ontologies for observations and sampling features that follow the UML model
with relaxed assumptions are denoted:

       http://def.seegrid.csiro.au/isotc211/iso19156/2011/observation	
  
       http://def.seegrid.csiro.au/isotc211/iso19156/2011/sampling	
  

The following specific rules are applied to generate the OWL model:
a) class name omits the bi-alpha prefix from the UML model
         e.g. om:Observation
b) property name is scoped to the ontology
         e.g. om:result
c) property domain is one of gf:AnyFeature or owl:Thing, depending on whether
    or not it is a feature property property range is the target class or type from the
    UML model (no change)
d) property cardinality is specified in OWL restrictions, but relies on RDF defaults
    whenever possible.
Under this rule properties are more general and re-usable:

om:result	
  
	
  	
  a	
  	
  	
  owl:ObjectProperty	
  ;	
  
	
  	
  rdfs:domain	
  gf:AnyFeature	
  ;	
  
	
  	
  rdfs:label	
  "Result"@en	
  .	
  

However, the relaxed rule requires interpretation where properties with the same local
name are associated with more than one class in a package, but with differing target
classes or types. For example, the attribute name appears multiple times in the ISO
19115 Metadata model (which is an important dependency of O&M), with both the
type CharacterString and more specific types. This is resolved by defining one generic
property and two specific properties with qualified names as follows:

md:name	
  
	
  	
  a	
  	
  	
  owl:DatatypeProperty	
  ;	
  
	
  	
  rdfs:domain	
  owl:Thing	
  ;	
  
	
  	
  rdfs:label	
  "name"^^xsd:string	
  ;	
  
	
  	
  rdfs:range	
  basic:CharacterString	
  .	
  
	
  
md:ApplicationSchema.name	
  
	
  	
  a	
  	
  	
  owl:ObjectProperty	
  ;	
  
	
  	
  rdfs:domain	
  md:ApplicationSchemaInformation	
  ;	
  
	
  	
  rdfs:label	
  "Application	
  schema.name"^^xsd:string	
  ;	
  
	
  	
  rdfs:range	
  ci:Citation	
  .	
  
	
  
md:Medium.name	
  
	
  	
  a	
  	
  	
  owl:ObjectProperty	
  ;	
  
	
  	
  rdfs:domain	
  md:Medium	
  ;	
  
	
  	
  rdfs:label	
  "Medium.name"^^xsd:string	
  ;	
  
	
  	
  rdfs:range	
  md:MediumNameCode	
  .	
  

However, there are very few property name clashes in the ISO model, so in practice
this is a minor annoyance (which nevertheless prevents an automated conversion).
Much more significant in terms of the ontology is the choice of strict or lax property
domains, which effectively either prevents or enables reuse of properties outside the
context of the original class.


4.5         General Feature Model

Several considerations in the revision of ISO 19109 (publication scheduled for 2014)
have emerged from the development of ISO 19150-2. Key modifications to the meta-
model are (i) relaxation of the requirement that property types are bound to feature
types, (ii) addition of the requirement that property names are used consistently within
an application schema, not just a class. These changes mean that properties are scoped
to the UML package or OWL ontology (RDF namespace), which is more consistent
with the expectations of the semantic web community.


5           Comparison with SSN ontology

5.1         Expressivity

The expressivity of the O&M and SSN ontologies for describing simple observations
is compared in the listings below, which are based on an example from the OGC re-
pository    (http://schemas.opengis.net/om/2.0/examples/measurement2.xml).        The
‘open-world’ form of the O&M ontology is used in the examples, though in the in-
stance view this only affects the class and property names and the structure is other-
wise the same.

O&M ontology:

p1:obsTest1	
  
	
  	
  rdf:type	
  om:Measurement	
  ;	
  
	
  	
  rdfs:comment	
  "Observation	
  test	
  instance:	
  fruit	
  mass"^^xsd:string	
  ;	
  
	
  	
  rdfs:label	
  "Observation	
  test	
  1"^^xsd:string	
  ;	
  
	
  	
  om:featureOfInterest	
  
	
  	
  	
  	
  	
  ;	
  
	
  	
  om:observedProperty	
  	
  ;	
  
	
  	
  om:phenomenonTime	
  p1:ot1t	
  ;	
  
	
  	
  om:procedure	
  p1:Sscales1	
  ;	
  
	
  	
  om:result	
  
	
  	
  [	
  rdf:type	
  basic:Measure	
  ;	
  
	
  	
  	
  	
  basic:uom	
  	
  ;	
  
	
  	
  	
  	
  basic:value	
  "0.28"^^basic:Number	
  
	
  	
  ]	
  ;	
  
	
  	
  om:resultTime	
  p1:ot1t	
  ;	
  
	
  	
  om:parameter	
  
	
  	
  [	
  rdf:type	
  om:NamedValue	
  ;	
  
	
  	
  	
  	
  om:name	
  	
  ;	
  
	
  	
  	
  	
  om:value	
  
	
  	
  	
  	
  [	
  rdf:type	
  basic:Measure	
  ;	
  
	
  	
  	
  	
  	
  	
  basic:uom	
  	
  ;	
  
	
  	
  	
  	
  	
  	
  basic:value	
  "22.3"^^basic:Number	
  
	
  	
  	
  	
  ]	
  
	
  	
  ]	
  .	
  
	
  
p1:Sscales1	
  
	
  	
  rdf:type	
  om:Process	
  ;	
  
	
  	
  rdfs:label	
  "Salter	
  scales"^^xsd:string	
  .	
  
	
  
p1:ot1t	
  
	
  	
  rdf:type	
  tm:Instant	
  ;	
  
	
  	
  tm:dateTimePosition	
  "2005-­‐01-­‐11T16:22:25.00"^^xsd:dateTime	
  .	
  


SSN ontology:

p1:obsTest1	
  
	
  	
  rdf:type	
  ssn:Observation	
  ;	
  
	
  	
  rdfs:label	
  "Observation	
  test	
  1"^^xsd:string	
  ;	
  
	
  	
  rdfs:comment	
  "Observation	
  test	
  instance:	
  fruit	
  mass"^^xsd:string	
  ;	
  
	
  	
  ssn:featureOfInterest	
  
	
  	
  	
  	
  	
  ;	
  
	
  	
  ssn:observedProperty	
  	
  ;	
  
	
  	
  ssn:observationSamplingTime	
  	
  p1:ot1t	
  ;	
  
	
  	
  ssn:observedBy	
  p1:Sscales1	
  ;	
  
	
  	
  ssn:observationResult	
  
	
  	
  [	
  rdf:type	
  ssn:SensorOutput	
  ;	
  
	
  	
  	
  	
  ssn:hasValue	
  
	
  	
  	
  	
  [	
  rdf:type	
  DUL:Amount	
  ,	
  ssn:ObservationValue	
  ;	
  
	
  	
  	
  	
  	
  	
  DUL:hasDataValue	
  "0.28"^^xsd:float	
  ;	
  
	
  	
  	
  	
  	
  	
  DUL:isClassifiedBy	
  	
  ]	
  ;	
  
	
  	
  	
  	
  ssn:isProducedBy	
  p1:Sscales1	
  ]	
  ;	
  
	
  	
  ssn:observationResultTime	
  p1:ot1t	
  ;	
  
	
  	
  	
  	
  	
  	
  DUL:hasSetting	
  p1:tempObsTest1	
  .	
  
	
  
p1:tempObsTest1	
  
	
  	
  a	
  	
  	
  ssn:Observation	
  ;	
  
	
  	
  rdfs:comment	
  "Observation	
  of	
  temperature	
  context	
  for	
  measurement	
  of	
  fruit	
  
mass"^^xsd:string	
  ;	
  
	
  	
  rdfs:label	
  "Temperature	
  Observation	
  test	
  1"^^xsd:string	
  ;	
  
	
  	
  ssn:featureOfInterest	
  
	
  	
  	
  	
  	
  	
  p1:fruit37f	
  ;	
  
	
  	
  ssn:observationResult	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  ssn:SensorOutput	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  ssn:hasValue	
  
	
  	
  	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  DUL:Amount	
  ,	
  ssn:ObservationValue	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  DUL:hasDataValue	
  "22.3"^^xsd:float	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  DUL:isClassifiedBy	
  unit:DegreeCelsius	
  
	
  	
  	
  	
  	
  	
  	
  	
  ]	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  ssn:isProducedBy	
  p1:Thermometer1	
  
	
  	
  	
  	
  	
  	
  ]	
  ;	
  
	
  	
  ssn:observationResultTime	
  
	
  	
  	
  	
  	
  	
  p1:ot1t	
  ;	
  
	
  	
  ssn:observationSamplingTime	
  
	
  	
  	
  	
  	
  	
  p1:ot1t	
  ;	
  
	
  	
  ssn:observedBy	
  p1:Thermometer1	
  ;	
  
	
  	
  ssn:observedProperty	
  
	
  	
  	
  	
  	
  	
  	
  ;	
  
	
  	
  DUL:isSettingFor	
  p1:obsTest1	
  .	
  
	
  
p1:Sscales1	
  
	
  	
  rdf:type	
  ssn:SensingDevice	
  ;	
  
	
  	
  rdfs:label	
  "Salter	
  scales"^^xsd:string	
  .	
  
	
  
p1:Thermometer1	
  
	
  	
  a	
  	
  	
  ssn:SensingDevice	
  ;	
  
	
  	
  rdfs:label	
  "Alcohol	
  in	
  glass	
  thermometer"^^xsd:string	
  .	
  
	
  
p1:ot1t	
  
	
  	
  rdf:type	
  DUL:Amount	
  ;	
  
	
  	
  DUL:hasDataValue	
  "2005-­‐01-­‐11T16:22:25.00"^^xsd:dateTime	
  .	
  

Both capture the information in a similar way. However, the SSN ontology is more
flexible and less prescriptive, with multiple alternatives for capturing some infor-
mation. For example, here we use DUL:Amount for the result value, as this provides a
slot for recording a unit of measure in the instance. This may be contrasted with other
SSN applications that use a specific type with a locally defined property already
bound to a unit of measure value, thus moving the scale factor up a meta-level [28].
Note also that in the SSN example we captured the event-specific parameter (in this
case the environmental temperature at the time of the sensing event) as a second ob-
servation related to the primary observation using DUL:isSettingFor.	
   This corre-
sponds to using the O&M 2.0 ObservationContext association, rather than the
lightweight parameter property.
5.2             Sampling Features

O&M [2, 3, 4] includes an explicit model for cross-domain feature types used for
sampling. Individuals of these classes have a specific relationship to the domain fea-
ture(s) of ultimate interest. There are types for spatial sampling and for specimens
used for ex situ observations. These classes are not implemented in the SSN ontology,
but are provided in the O&M ontologies described here. The OWL implementation of
SF_SamplingFeature is listed in section 4.3 above, and an example of an individual
Specimen is given below (here using the ‘open-world’ form):


	
  
	
  	
  a	
  	
  	
  sam:Specimen	
  ;	
  
	
  	
  rdfs:comment	
  "A	
  specimen	
  encoded	
  using	
  the	
  RDF	
  representation	
  of	
  the	
  O&M	
  Sampling	
  
Feature	
  model"^^xsd:string	
  ;	
  
	
  	
  rdfs:label	
  "SIO	
  specimen	
  abc123"^^xsd:string	
  ;	
  
	
  	
  sam:currentLocation	
  	
  ;	
  
	
  	
  sam:materialClass	
  p1:rock	
  ;	
  
	
  	
  sam:preparationStep	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  sam:PreparationStep	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  sam:processOperator	
  p1:JohnDoe	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  sam:processingDetails	
  	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  sam:time	
  	
  ]	
  ;	
  
	
  	
  sam:sampledFeature	
  p1:midAtlanticRidge	
  ;	
  
	
  	
  sam:samplingFeatureComplex	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  sam:SamplingFeatureComplex	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  sam:relatedSamplingFeature	
  	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  sam:role	
  p1:parent	
  ]	
  ;	
  
	
  	
  sam:samplingLocation	
  
	
  	
  	
  	
  	
  	
  p1:loc123	
  ;	
  
	
  	
  sam:samplingMethod	
  	
  ;	
  
	
  	
  sam:samplingTime	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  tm:Instant	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  tm:dateTimePosition	
  "2013-­‐06-­‐12T09:25:00.00+11:00"^^xsd:dateTime	
  ]	
  ;	
  
	
  	
  sam:size	
  
	
  	
  	
  	
  	
  	
  [	
  a	
  	
  	
  basic:Weight	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  basic:uom	
  	
  ;	
  
	
  	
  	
  	
  	
  	
  	
  	
  basic:value	
  "0.46"^^basic:Number	
  ]	
  ;	
  
	
  	
  sam:specimenType	
  p1:splitCore	
  .	
  


5.3             SensorML

Conversely, we have not developed an OWL implementation of SensorML. This is
because (i) the only published version of SensorML is 1.0 [7], which is linked to ver-
sion 1.0 of O&M 1.0 [1], while the O&M ontology described here is based on version
2.0 [3, 4]; (ii) the UML model provided in SensorML 1.0 represents XML Schema
implementation details rather than a conceptual model, and furthermore is informative
not normative. SensorML 2.0 is approaching completion, at which time OWL ver-
sions may be developed following the same process described here.


5.4    Observed property
The observedProperty property is unusual as it relates to properties of the type or
class of the feature-of-interest. Thus its value should strictly be a classifier or type,
rather than an instance. While the semantics appear correct, this property crosses me-
ta-levels and is thus in conflict with both UML and OWL meta-models, and requires
workarounds in both representations.


5.5    Temporal properties

The SSN ontology is based on O&M 1.0 [1]. The treatment of time properties associ-
ated with observations was refined in O&M 2.0 [3, 4], and is reflected in the O&M
ontologies presented here. In particular, the property samplingTime from O&M 1.0
does not appear as an observation property in O&M 2.0, because the time of sampling
was judged to be better associated with sampling features. A new property phenome-
nonTime is used to indicate the time that the result applies to the feature of interest,
which may be different from a sampling time (e.g. in the cases of forecasts where the
phenomenonTime is in the future, or estimates of values of historical or geological
properties where the phenomenonTime is the past even if physical sampling was con-
temporary). This refinement clarifies the relationship of the temporal properties to the
respective classes: resultTime (which remains the same) is intrinsic to the act of ob-
servation, while phenomenonTime describes a relationship between the observation
result and the feature of interest (“it had this value at that time”). An additional prop-
erty validTime was also introduced to indicate the time period during which the data
provider recommends the result may be safely used.


5.6    Ontology alignment

Probably the most significant consequence of the alignment of the SSN ontology to
DUL is that Observation is classified as a subclass of DUL:Situation, which is a sub-
class of DUL:SocialObject, and thus disjoint to DUL:Event. The rationale for this is
sound: observations can reasonably be interpreted as essentially social artefacts.
However, under the clarification of the temporal properties in O&M 2.0, discussed
above, observations are essentially events. The inconsistency may therefore be be-
cause SSN was based on O&M 1.0. Nevertheless, in the SSN report [11] the authors
clearly felt some explanation was required, and suggested that an observation re-
source may strictly be seen as a record of a sensing event, though under that interpre-
tation Observation could have been made a subclass of DUL:InformationObject, ra-
ther than either of these sibling classes. The argument could also be compensating for
limitations in DOLCE: surely some social objects are also events?
6      Future work

The next phase of the project will be to develop mappings to the SSN ontology, and
other observation ontologies, and analysis the semantic implications. Since the princi-
pal resources in both O&M and SSN ontologies are OWL classes, the RDFS equiva-­‐
lentClass and OWL subClassOf relations should be used for mapping where possi-
ble. Other vocabularies, such as SKOS [29] mapping relations, and PROV-O [30]
relations provide richer sets of relations, but scoped to individuals rather than classes,
so care must be taken if DL-conformance is required, else OWL2 punning must be
used.
   Table 7.1 in the SSN report [11] provides mappings from SSN to O&M [3,4], Sen-
sorML [7] and VIM [31]. These are described using SKOS closeMatch, exactMatch
and narrowerMatch, and recorded in text within dc:source properties, using infor-
mal identifiers for concepts from O&M, SensorML and VIM. The ontologies present-
ed here provide URIs for all the concepts in O&M, so the mappings can now be done
formally. Mappings may be persisted in separate graphs or linksets [32] that will im-
port the O&M and SSN ontologies.


7      Summary & conclusions

We have developed OWL representations of the OGC observations and measure-
ments information model. The ontologies are literal conversions of the original UML
models, following UMLOWL conversion rules proposed for ISO 19150-2, and are
aligned only to the (meta-)models from the OGC/ISO suite on which O&M depends.
The O&M ontology is consistent with OWL-DL. It provides

1. an RDF encoding for sensor data. This could be used as an alternative transfer
   model for SWE services such as SOS, immediately compatible with semantic web
   technologies with their capacity for abstraction, categorization and reasoning
2. an OWL representation reflecting the original design of O&M models. This ena-
   bles analysis and description of the relationships between OGC SWE and SSN in a
   framework where both source and target of assertions are OWL classes and proper-
   ties.

The O&M ontologies are as expressive as the SSN ontology for describing observa-
tions. Two flavours of the O&M ontology have been prepared: one which replicates
the frame-based assumptions of UML using OWL2 mechanics; the other being a
more conventional ‘open-world’ ontology. The latter is probably preferable as it does
not inherit constraints from the UML meta-model that are incidental to the key se-
mantics, but it requires judgement and interpretation in a small number of places to
resolve clashes in property naming.
8      Acknowledgements

This work was undertaken through the Tools and Documentation project under the Water In-
formation Research and Development Alliance (WIRADA), and was initiated while the author
was affiliated with CSIRO Earth Science and Resource Engineering. Thanks to the following
for various pieces of guidance: Jean Brodeur, Dimitri Sarafinof, and other members of the ISO
19150-2 team; Clemens Portele of Interactive Instruments; Peter Fox and Stefan Zednik of RPI;
Michael Compton, Laurent Lefort, David Ratcliffe, Geoff Squire, Kerry Taylor and Jonathan
Yu from CSIRO.


9      References
 1. Cox, S.J.D.: Observations and Measurements – Part 1 – Observation schema, OGC Imple-
    mentation Standard 07-022r1, http://portal.opengeospatial.org/files/22466 (2007a)
 2. Cox, S.J.D.: Observations and Measurements – Part 2 – Sampling features, OGC Imple-
    mentation Standard 07-002r3, http://portal.opengeospatial.org/files/?artifact_id=22467,
    (2007b)
 3. Cox, S.J.D.: Observations and Measurements. OGC Abstract Specification Topic 20. OGC
    document 10-004r3 http://portal.opengeospatial.org/files/41579 (2010a)
 4. ISO 19156 Geographic Information – Observations and Measurements. Int. Org. Stand-
    ardization,                                                                       Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=32574
    (2011)
 5. Cox, S.J.D. Observations and Measurements – XML Implementation v2.0 OGC Imple-
    mentation Standard 10-025 http://portal.opengeospatial.org/files/41510 (2010b)
 6. ISO 19136 Geographic Information – Geography Markup Language. Int. Org. Standardi-
    zation,                                                                           Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=32554
    (2007)
 7. Botts, M.H.: OpenGIS Sensor Model Language (SensorML) OGC Implementation Stand-
    ard 07-000, http://portal.opengeospatial.org/files/21273 (2007)
 8. Probst, F.: Semantic Reference Systems for Observations and Measurements, Doctoral the-
    sis, Univ. Münster. http://ifgi.uni-muenster.de//~probsfl/publications/PROBST-Thesis-
    SemanticReferenceSystemsForObservationsAndMeasurements.pdf (2007)
 9. Probst, F.: Observations, measurements and semantic reference spaces. Applied Ontology,
    3, 63-89. http://dl.acm.org/citation.cfm?id=1412420 (2008)
10. W3C Semantic Sensor Network Incubator Group, Semantic Sensor Network Ontology.
    http://www.w3.org/2005/Incubator/ssn/ssnx/ssn
11. Lefort, L., Henson, C., Taylor, K. (eds) W3C Semantic Sensor Network Incubator Group.
    W3C Incubator Report http://www.w3.org/2005/Incubator/ssn/wiki/Incubator_Report
    (2011)
12. Compton, M., Barnaghi, P., Bermudez, L., García-Castro, R., Corcho, O., Cox, S.J.D.,
    Graybeal, J., Hauswirth, M., Henson, C., Herzog, A., Huang, V., Janowicz, K., Kelsey,
    W.D., Le Phuoc, D., Lefort, L., Leggieri, M., Neuhaus, H., Nikolov, A., Page, K., Passant,
    A., Sheth, A., Taylor, K.: The SSN ontology of the W3C semantic sensor network incuba-
    tor group. Web Semantics: Science, Services and Agents on the World Wide Web
    http://dx.doi.org/10.1016/j.websem.2012.05.003 (2012)
13. DOLCE-UltraLite, http://www.loa-cnr.it/ontologies/DUL.owl
14. Perry, M. Herring, J.: OGC GeoSPARQL – a geographic query language for RDF data.
    OGC Implementation Standard 11-052r4. https://portal.opengeospatial.org/files/47664
    (2012)
15. Brodeur, J. (ed) Geographic information - Ontology - Part 2: Rules for developing ontolo-
    gies in the Web Ontology Language (OWL). Committee Draft ISO 19150-2. ISO Tech-
    nical Committee 211 document N 3524. (2013)
16. OMG: Ontology Definition Metamodel v1.0. Object Management Group.
    http://www.omg.org/spec/ODM/1.0/ (2009)
17. Berardi, B., Calvanese, D., De Giacomo, G.: Reasoning on UML class diagrams. Artif. In-
    tell. 168(1-2): 70-118 (2005)
18. ISO 19101, Geographic information — Reference model. Int. Org. Standardization, Gene-
    va.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26002
    (2002)
19. ISO 19109, Geographic information — Rules for application schemas. Int. Org. Standard-
    ization,                                                                         Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=39891
    (2005)
20. ISO 19123 Geographic Information – Schema for coverage geometry and functions. Int.
    Org.                               Standardization,                              Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=40121
    (2005)
21. ISO/TS 19103, Geographic information — Conceptual schema language. Int. Org. Stand-
    ardization,                                                                      Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=37800
    (2005)
22. ISO 19107, Geographic information — Spatial schema. Int. Org. Standardization, Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26012
    (2003)
23. ISO 19108, Geographic information — Temporal schema. Int. Org. Standardization, Ge-
    neva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26013
    (2002)
24. ISO 19111 Geographic Information – Spatial referencing by coordinates. Int. Org. Stand-
    ardization,                                                                      Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=41126
    (2003)
25. ISO 19115 Geographic Information – Metadata. Int. Org. Standardization, Geneva.
    http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26020
    (2003)
26. Cox, S.J.D. (ed) Geographic information – Rules for application schema. Committee Draft
    ISO 19109 (revised). ISO Technical Committee 211 document N 3519. (2013)
27. Beckett, D., Berners-Lee, T.: Turtle – Terse RDF Triple Language. W3C Team Submis-
    sion. http://www.w3.org/TeamSubmission/turtle/ (2011)
28. SSN                       Smart                      Product                     example
    http://www.w3.org/2005/Incubator/ssn/wiki/SSN_Smart_product#Measurement_capabiliti
    es
29. Miles, A., Bechhofer, S.: SKOS Simple Knowledge Organization System Reference. W3C
    Recommendation. http://www.w3.org/TR/skos-reference/ (2009)
30. Lebo, T., Sahoo, S., McGuiness, D.: PROV-O: The PROV Ontology. W3C Recommenda-
    tion. http://www.w3.org/TR/prov-o/ (2013)
31. Joint committee for guides in metrology (Working Group 2), International Vocabulary of
    Metrology—Basic and General Concepts and Associated Terms, JCGM 200:2008, BIPM,
    http://www.bipm.org/utils/common/documents/jcgm/JCGM_200_2008.pdf (also known as
    ISO/IEC Guide 99:2007) (2008)
32. Alexander, K., Cyganiak, R., Hausenblas, M., Zhao, J.: Describing Linked Datasets with
    the VoID Vocabulary. W3C Interest Group Note. http://www.w3.org/TR/void/ (2011)