Open oldskeptic opened 3 months ago
The SSN-System module and the examples could be improved in many ways. When working on that back in 2017, I faced two challenges:
Now that properties apply generically to many features of interest, and the notion of sensor is generalized, I think we could makes things more homogeneous:
MeasurementRange
: ssn-system:MinimumMeasurement a sosa:Property;
rdfs:label "Minimum Measurement"@en ;
skos:definition "The minimum of the set of values that the Sensor can return as the Result of an Observation under the defined Conditions."@en ;
skos:broader ssn-system:SystemProperty ;
rdfs:isDefinedBy ssn-system: .
ssn-system:MaximumMeasurement a sosa:Property;
rdfs:label "Maximum Measurement"@en ;
skos:definition "The maximum of the set of values that the Sensor can return as the Result of an Observation under the defined Conditions."@en ;
skos:broader ssn-system:SystemProperty ;
rdfs:isDefinedBy ssn-system: .
I would be happy with reusing hasResult or creating hasPropertyValue. We don't have to solve the range problem as much as just document a property for the value.
We should define Sensitivity etc. as instances of sosa:Property instead of sub-classes .
I prefer subClass; otherwise it becomes unwieldy if someone decides to instantiate the Sensitivity of multiple physical receivers.
I would be happy with ... creating hasPropertyValue ...
Hmm. FeatureOfInterest
is essentially a way of tagging features/entities from domain models with a role in the context of Actuations/Observations/Samplings - see discussion in https://github.com/w3c/sdw-sosa-ssn/issues/19
Otherwise, I would be very wary of building a meta-language for domain-models inside SSN, which I think is what you are talking about with Feature-Property relationships outside the context of Observations and Actuations.
Also see #108
In #quantity-values-and-unit-of-measures we state "It is not in the scope of this specification to recommend any particular way of expressing results as quantity values." which is fine. To actually link the measurement, however it is recorded, to an observation we use hasSimpleResult / hasResult. There is no analogous mechanism for ssn-system:Condition, ssn:Property, ssn-system:Sensitivity, etc...
The DHT22 Description example makes use of schema.org. Unlike in an Observation, there is no ontological relationship in Sosa that indicates where the value of a Property resides, irrespective of it is expressed.
Can we fix this?