[sdw] modeling units on properties instead of results [SOSA/SSN] (#1267)

mathib has just created a new issue for https://github.com/w3c/sdw:

== modeling units on properties instead of results [SOSA/SSN] ==
Hi all,

This is a question concerning the linking of units to measured properties in [SOSA/SSN](https://www.w3.org/TR/vocab-ssn/). 

The SOSA/SSN specification (section 7.3) is relatively open to which approach can be used to add units, e.g. via URIs (QUDT and OM) or by appending strings representing units inside RDF literals (CDT/UCUM). In all the examples given for each of the approaches, units are linked per observation result, e.g. example 12 with QUDT:

```
<observation/1087>  rdf:type sosa:Observation ;
  rdfs:label "observation #1087"@en ;
  sosa:hasFeatureOfInterest  <tree/124> ;
  sosa:observedProperty  <tree/124#height> ; # note there's a typo in example 12: the slash should be a hash
  sosa:madeBySensor <rangefinder/30> ;
  sosa:hasResult [ 
    qudt-1-1:unit qudt-unit-1-1:Meter ; 
    qudt-1-1:numericalValue "15.3"^^xsd:double ] .
...
<tree/124#height>  rdf:type    sosa:ObservableProperty , ssn:Property ;
  rdfs:label "the height of tree #124"@en ;
  ssn:isPropertyOf <tree/124> .
```

When dealing with large datasets (e.g. 1000 sensor measurements from one sensor, always measuring something with a fixed unit), this might result in some kind of redundancy and I wondered if it's also allowed to relate units information directly to a specific `sosa:ObservableProperty` / `ssn:Property` instance or subclass. In this case, it's probably only possible using QUDT or OM (there's no RDF literal with a measured value already known on the conceptual level, so CDT/UCUM is not possible). When applied to the same example 12, this would look like this:


```
<observation/1087>  rdf:type sosa:Observation ;
  rdfs:label "observation #1087"@en ;
  sosa:hasFeatureOfInterest  <tree/124> ;
  sosa:observedProperty  <tree/124#heightInMeter> ;
  sosa:madeBySensor <rangefinder/30> ;
  sosa:hasResult [ qudt-1-1:numericalValue "15.3"^^xsd:double ] . # or even shorter: sosa:hasSimpleResult "15.3"^^xsd:double
...
<tree/124#heightInMeter>  rdf:type    sosa:ObservableProperty , ssn:Property ;
  rdfs:label "the height of tree #124 in meter"@en ;
  qudt-1-1:unit qudt-unit-1-1:Meter ;
  ssn:isPropertyOf <tree/124> .
```

From the side of QUDT 1.1, this seems OK I think as there is no `rdfs:domain` defined



Please view or discuss this issue at https://github.com/w3c/sdw/issues/1267 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 9 June 2021 16:09:13 UTC