Skip to content

Inconsistent semantics of Property and hasProperty

See also the slideset on the sharepoint

The property saref:hasProperty relates a feature of interest to a property:

###  https://saref.etsi.org/core/hasProperty
saref:hasProperty rdf:type owl:ObjectProperty ;
                  owl:inverseOf saref:isPropertyOf ;
                  rdfs:comment "A relationship between a feature of interest and a property of that feature"@en ;
                  rdfs:domain saref:FeatureOfInterest ;
                  rdfs:range saref:Property ;
                  rdfs:label "has property"@en .

There are 17 subproperties of hasProperty throughout the extensions: s4agri (1), s4auto (6), s4lift (9). Additionally, there are two properties in saref core and one in s4ehaw that have as their domain a subclass of saref:Property. See below for a list.

All these properties expect an actual value of that property. Take a few examples:

  • s4auto:hasLength: "A relation to express the length of an entity, e.g., a vehicle"
  • s4lift:hasVoltage: "A relationship defining the voltage of a feature of interest."

In issue #6 (closed) we saw that several extensions model Properties as individuals. This is inconsistent with the above examples, since it would result in the following incorrect graph pattern:

ex:Platoon_1 a s4auto:Platoon ;
   s4auto:hasLength s4auto:PlatoonLength . 
   # Incorrect example, s4auto:PlatoonLength not actually in saref4auto. 
   # The s4auto:hasLength property cannot have the length of 
   # the entity as it should have according to its comment.

The s4auto examples instead indicate:

:Platoon1 rdf:type owl:NamedIndividual, s4auto:Platoon ;
  saref:hasProperty :Platoon1Length .
  
:Platoon1Size rdf:type owl:NamedIndividual, s4auto:Length ;
  saref:relatesToMeasurement :Measurement_1.

Concluding, the semantics of saref:hasProperty and its subproperties that expect to relate a FoI to a measurement of that property are inconsistent with the several extensions that model Property individuals.

Relevant material and considerations: The SOSA considerations are also again relevant here to consider: https://www.w3.org/TR/vocab-ssn/#SSNProperty-instances

The Ontology is of Measurement is also relevant as input: https://github.com/HajoRijgersberg/OM

The inconsistency seems to exist because some extensions take a Property/Quantity-centric approach, whereas other extensions take a Measurement-centric approach. The Ontology of Measurement takes the former approach, while SOSA takes the latter. We give both options, so both are used among the extensions, leading to inconsistencies.

===

Result: The expected result is that we have clarity on an approach regarding intended usage of saref:Property and saref:hasProperty.

==== 1 saref:hasPrice 2 s4agri:generates 3 s4auto:hasHeight 4 s4auto:hasLength 5 s4auto:hasMovement 6 s4auto:hasShape 7 s4auto:hasSize 8 s4auto:hasWidth 9 s4lift:hasVoltage 10 s4lift:hasCoverage 11 s4lift:hasCarTemperature 12 s4lift:hasEngineRoomTemperature 13 s4lift:hasShaftTemperature 14 s4lift:hasElectricPowerConsumption 15 s4lift:hasChannelBitErrorRate 16 s4lift:hasReceivedSignalStrengthIndicator 17 s4lift:hasTimeOfLastPeriodicTest72hAttempt 18 s4lift:hasTimeOfConfirmationOfLastPeriodicTest72hAttempt 19 saref:hasTime