Skip to content

Relationships needed

In SAREF, there is currently no way to observe relationships that hold between features of interest.

For example, the fact that at a current point in time, item A "is being processed by" production line B. Or pedestrian A "is in the immediate environment of" vehicle B. Or animal A "is located in" parcel B.

I suggest we deal with relationships in a parallel way as we deal with properties:

  • a class saref:Relationship (parallel to saref:Property, with instances organised in a taxonomy)
  • a class saref:RelationshipOccurrence (parallel to saref:PropertyValue, that links to the related individual using ex. saref:relatesTo )
  • support object properties saref:hasRelationship, saref:hasRelationshipOccurrence, saref:isOccurrenceOfRelationship.

As an example, in SAREF4AUTO:

s4auto:VehicleEnvironment a saref:Relationship ;
  rdfs:comment "Relationship between a vehicle and some automotive entity in the immediate environment of the vehicle"@en .

<observation> a saref:Observation ;
  saref:observes <car1> ;
  saref:observes s4auto:VehicleEnvironment ;
  saref:hasTimestamp "2024-07-12T10:00:00Z"^^xsd:dateTime ;
  saref:hasResult [ 
    a saref:RelationshipOccurrence ;
    saref:isOccurrenceOfRelationship s4auto:VehicleEnvironment ;
    saref:relatesTo <pedestrianB> ] .
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information