Ontology for self-describing networks S-TEN D2.1

Cover page
Table of contents
1 Introduction
2 Terminology
3 Physical things

4 Temporal part and time
5 Observation and measurement
6 Information
7 Physical quantity, property and scale
8 What is possible

A SensorML
B Weather station example
C PML
D Computer interpretable listing
Index

B Weather station example

B.1 Basic components

This section considers an example weather station, derived from the SensorML, which measures wind chill. Measuring wind chill is an sten:activity, which can be decomposed into component activities as shown in Figure 7.

Wind chill measurement activities

Figure 7: Wind chill measurement activities

Items of information pass between the component activities. Each sten:activity is performed by a sten:device.

A wind chill measuring sten:device can be decomposed into component devices. The component devieces do not map one-to-one on to the component activities. The component devices are shown in Figure 8.

Wind chill measurement devices

Figure 8: Wind chill measurement devices

The information recorded about activities, devices and information is intended to answer the questions:

What was the source of the wind chill information, i.e. what device produced it?
What were the component items of information that were used to derive the wind chill information, and what devices produced them?

The information about the activities, devices and information involved in a single measurement is shown in section A single measurement,

B.2 A single measurement

B.2.1 Objects involved in a single measurement

The basis of the approach to recording information about a measurement activity is as follows:

  1. a sten:result_record is produced by an sten:observing_activity;
  2. an sten:observing_activity is performed by a sten:observation_device.

Using this approach, the objects involved in a measurement are as follows:

the activities:

object identifier object definition
the wind chill measurement activity
AM_WC-T_L123-T456 The activity that produces and transmits the information that the wind chill at location L123 at time 2007-02-05T18:50 is -25 degrees Celsius. This activity is performed by weather_station WS_123.
the component wind chill activities
AM_AT_L123-T456 The activity that measures the ambient temperature at location L123 at time 2007-02-05T18:50 (T456). This activity is performed by WS_123-AT.
AM_WS_L123-T456 The activity that measures the wind speed at location L123 at time 2007-02-05T18:50. This activity is performed by WS_123-WS.
AP_WC_L123-T456 The activity that calculates the wind chill at location L123 at time 2007-02-05T18:50 from the wind speed and temperature. This activity is performed by WS_123-P.
AM_T_L123-T456 The activity that measures the time at location 1234 at time 2007-02-05T18:50. This activity is performed by WS_123-C.
AP_WC-T_L123-T456 The activity that combines the wind chill and time records at location L123 at time 2007-02-05T18:50 and transmits them. This activity is performed by WS_123-P.

the information items:

object identifier object definition
the wind chill information
I_WC-T_L123-T456 The information that the wind chill at location L123 at time 2007-02-05T18:50 (T456) is -25 degrees Celsius. This information is produced and transmitted by activities AM_WC-T_L123-T456 and AP_WC-T_L123-T456.
the component wind chill items of information
I_AT_L123-T456 The information that the ambient temperature is -5 degrees Celsius. This information is produced by activity AM_AT_L123-T456 and used by activity AP_WC_L123-T456.
I_WS_L123-T456 The information that the wind speed is 30 metres per second. This information is produced by activity AM_WS_L123-T456 and used by activity AP_WC_L123-T456.
I_WC_L123-T456 The information that the wind chill is -25 degrees Celsius. This information is produced by activity AP_WC_L123-T456 and used by activity AP_WC-T_L123-T456.
I_T_L123-T456 The information that the time is 2007-02-05T18:50. This information is produced by activity AM_T_L123-T456 and used by activity AP_WC-T_L123-T456.

the devices:

object identifier object definition
the weather station (a wind chill measuring device)
WS_123 The weather station WS_123. This performs the activity AM_WC-T_L123-T456.
the weather station components
WS_123_AT The ambient temperature instrument within WS_123. This performs the activity AM_AT_L123-T456.
WS_123_WS The wind speed instrument within WS_123. This performs the activity AM_WS_L123-T456.
WS_123_C The clock within WS_123. This performs the activity AM_T_L123-T456.
WS_123-P The processor and transmitter within WS_123. This performs the activities AP_WC_L123-T456 and AP_WC-T_L123-T456.

The representation of this information as OWL, serialised as N3, is given in the following clauses.

B.2.2 The wind chill measurement activity

:AM_WC-T_L123_T456 a                        sten:observing_activity ;
                   a                        sten:information_processing_activity ;
                   a                        sten:transmitting_activity ;
                   sten:observed_by_device  :WS_123 ;
                   sten:during              [ sten:has_nominal_value
                                               [ sten:utc_iso8601 "2007-02-05T18:50" ] ] ;
                   sten:gives_result_record :I_WC-T_L123_T456 ;
                   sten:has_partition       [ owl:oneOf
                                               ( :AM_AT_L123_T456
                                                 :AM_WS_L123_T456
                                                 :AP_WC_L123_T456
                                                 :AM_T_L123_T456
                                                 :AP_WC-T_L123_T456
                                               )
                                            ] .

The sten:physical_thing and the sten:physical_property can also be recorded as follows:

:AM_WC-T_L123_T456 sten:observes
                           [ a               weather:ambient_air_at_location ;
                             sten:at :L123 ] ;
                   sten:observes_physical_property
                           weather:has_wind_chill_temperature .

The sten:result_graph can also be recorded directly, rather than referenced, as follows:

:AM_WC-T_L123_T456 sten:gives_result_graph
                         { [ sten:temporal_part_of
                             [ a               weather:ambient_air_at_location ;
                               sten:at :L123 ] ;
                             sten:at_time    [ sten:utc_iso8601 "2007-02-05T18:50" ]
                           ]
                             weather:has_wind_chill_temperature
                               [ bipm:celsius [ basics:decimal "-25.0" ] ]
                         } .

B.2.3 The component wind chill activities

:AM_AT_L123_T456   a                         sten:observing_activity ;
                   sten:observed_by_device   :WS_123_AT ;
                   sten:gives_result_record  :I_AT_L123_T456 .

:AM_WS_L123_T456   a                         sten:observing_activity ;
                   sten:observed_by_device   :WS_123_AT ;
                   sten:gives_result_record  :I_WS_L123_T456 .

:AP_WC_L123_T456   a                          sten:information_processing_activity ;
                   sten:performed_by         :WS_123_P ;
                   sten:has_set_of_input_records
                                             [ owl:oneOf
                                               (:I_AT_L123_T456
                                                :I_WS_L123_T456
                                               ) ;
                                             ] ;
                   sten:has_output_record    :I_WC_L123_T456 .

:AM_T_L123_T456    a                         sten:observing_activity ;
                   sten:observed_by_device   :WS_123_C ;
                   sten:gives_result_record  :I_T_L123_T456 .

:AP_WC-T_L123_T456 a                         sten:information_processing_activity ;
                   a                         sten:transmitting_activity ;
                   sten:performed_by         :WS_123_P ;
                   sten:has_set_of_input_records
                                             [ owl:oneOf
                                               ( :I_WC_L123_T456
                                                 :I_T_L123_T456
                                               )
                                             ] ;
                   sten:has_output_record    :I_WC-T_L123_T456 .

B.2.4 The wind chill information

:I_WC-T_L123_T456
                         { [ sten:temporal_part_of
                             [ a               weather:ambient_air_at_location ;
                               sten:at :L123 ] ;
                             sten:at_time    [ sten:utc_iso8601 "2007-02-05T18:50" ]
                           ]
                             weather:has_wind_chill_temperature
                               [ bipm:celsius [ basics:decimal "-25.0" ] ]
                         }
                   a  weather:wind_chill_at_location_at_time_record .

The wind chill temperature of -25 degrees Celsius is possessed by the anonymous object that is the temporal part of the ambient air at L123 at 2007-02-05T18:50. The ambient air at L123 is the anonymous object that is of type ambient_air_at_location and that has the location L123.

The provenance of the information can be recorded as follow:

:I_WC-T_L123_T456  sten:result_record_given_by  :AM_WC-T_L123_T456 .

B.2.5 The component wind chill items of information

A classification of the instances of sten:result_record is as follows:

:I_AT_L123_T456    a                  weather:ambient_temperature_record .

:I_WS_L123_T456    a                  weather:wind_speed_record .

:I_WC_L123_T456    a                  weather:wind_chill_record .

:I_T_L123_T456     a                  sten:time_record .

The content can be recorded as follows:

:I_AT_L123_T456
    { [ sten:temporal_part_of [ a weather:ambient_air_at_location ] ]
            weather:has_temperature [ bipm:celsius [ basics:decimal "-5.0" ] ]
    } .

:I_WS_L123_T456
    { [ sten:temporal_part_of [ a weather:ambient_air_at_location ] ]
            weather:has_wind_speed [ sten:m/s [ basics:decimal "30.0" ] ]
    } .

:I_WC_L123_T456
    { [ sten:temporal_part_of [ a weather:ambient_air_at_location ] ]
            weather:has_wind_chill [ bipm:celsius [ basics:decimal "-25.0" ] ]
    } .

:I_T_L123_T456
    { [ sten:temporal_part_of [ a sten:classical_object ] ]
            sten:at_time [ sten:utc_iso8601 "2007-02-05T18:50" ]
    } .

B.2.6 The weather station

The weather station and its parts are recorded as follows:

:WS_123           a                sten:observing_device ;
                  a                sten:information_processor .
                  a                sten:transmitter .
                  a                weather:wind_chill_at_location_at_time_recorder ;
                  sten:has_part    :WS_1234_AT ;
                  sten:has_part    :WS_1234_WS ;
                  sten:has_part    :WS_1234_C ;
                  sten:has_part    :WS_1234_P .

The has_partition relationship is not used here because it is not asserted that there are no other parts.

NOTE This statement has been made without using temporal parts. It is valid only if WS_123 and its parts are all instances of sten:facility which are commissioned and decommissioned at the same time. An equivalent statement refering to instances of sten:physical_asset with serial numbers would use temporal parts, because a part with a serial number is manufactured before becoming part of the whole.

B.2.7 The weather station components

The classification of the components is as follows:

:WS_123_AT        a                sten:observing_device ;
                  a                weather:ambient_temperature_recorder .

:WS_123_AT        a                sten:observing_device ;
                  a                weather:wind_speed_recorder .

:WS_123_C         a                sten:observing_device ;
                  a                sten:clock .

:WS_123_P         a                sten:device ;
                  a                sten:information_processor .
                  a                sten:transmitter .

The connectivity of the components is not stated here. The actual flow of information in a past activity is recorded for The component wind chill activities. However, the design of the weather station is concerned with how information can flow in the future. This is discussed in What the weather station can do.

B.2.8 Measurement location

The wind chill measurement is made at "location L123". This can be:

B.3 What the weather station can do

B.3.1 Devices and class of activity

The information recorded in A single measurement is concerned with sten:observing_activity, the sten:observation_device that performs it, and the information that is obtained.

It is also necessary to know:

What types of sten:observing_activity can be performed by an sten:observation_device, and what types of information can be obtained?
What are the components of an sten:observation_device, what do they do, and how does information flow between them?

NOTE 1 The idea of "can" is tricky, because a device may never be actually do what it can. The S-TEN approach considers the set of all possible future worlds. What a device can do is what the device does in one of these worlds. This is discussed in more detail in Meaning of "can".

The classes associated with WS_123 are as follows:

the classes of information:

object identifier object definition
the class of wind chill information
C_I_WC-T_L123 The class of all information records of the wind chill at a time at location L123.
the component classes of wind chill information
C_I_AT_L123 The class of all information records of ambient temperature at location L123.
C_I_WS_L123 The class of all information records of wind speed at location L123.
C_I_WC_L123 A class of all information records of wind chill at location L123.
C_I_T_L123 The class of all information records of time at location L123.

the classes of activity:

object identifier object definition
the class of wind chill measurement activity
C_AM_WC-T_L123 The class of all observation activities that produce and transmit information of class C_I_WC-T_L123.
the component classes of wind chill measurement activity
C_AM_AT_L123 The class of all observation activities that produce information of class C_I_AT_L123 and send it to an activity of class C_AP_WC_L123.
C_AM_WS_L123 The class of all observation activities that produce information of class C_I_WS_L123 and send it to an activity of class C_AP_WC_L123.
C_AP_WC_L123 The class of all processing activities that produce information of class C_I_WC_L123 on the basis of information received from activities of class C_AM_AT_L123 and C_AM_WS_L123, and send it to an activity of class C_AP_WC-T_L123.
C_AM_T_L123 The class of all observation activities that produce information of class C_I_T_L123 and send it to an activity of class C_AP_WC-T_L123.
C_AP_WC-T_L123 The class of all processing activities that produce information of class C_I_WC-T_L123 on the basis of information received from activities of class C_AP_WC_L123 and C_AM_T_L123, and transmit.

The class C_AM_WC-T_L123 defines what WS_123 can do.

NOTE 2 If WS_123 has a finite service life, then the class should also have a period of time as a criterion.

Similarly:

The representation of this information as OWL, serialised as N3, is given in the following clauses.

B.3.2 The class of wind chill information

:C_I_WC-T_L123  owl:equivalentClass
                  [ owl:intersectionOf
                     (  weather:wind_chill_at_location_at_time_record
                        [ owl:onProperty sten:result_record_about ;
                          [ owl:onProperty sten:temporal_part_of ;
                            owl:hasValue
                              [ a weather:ambient_air_at_location ;
                                sten:at :L123
                              ]
                           ]
                        ]
                     )
                  ] .

B.3.3 The component classes of wind chill information

:C_I_AT_L123  owl:equivalentClass
                  [ owl:intersectionOf
                     (  weather:ambient_temperature_record
                        [ owl:onProperty sten:result_record_about ;
                          [ owl:onProperty sten:temporal_part_of ;
                            owl:hasValue
                              [ a weather:ambient_air_at_location ;
                                sten:at :L123
                              ]
                           ]
                        ]
                     )
                  ] .

:C_I_WS_L123  owl:equivalentClass
                  [ owl:intersectionOf
                     (  weather:wind_speed_record
                        [ owl:onProperty sten:result_record_about ;
                          [ owl:onProperty sten:temporal_part_of ;
                            owl:hasValue
                              [ a weather:ambient_air_at_location ;
                                sten:at :L123
                              ]
                           ]
                        ]
                     )
                  ] .

:C_I_WC_L123  owl:equivalentClass
                  [ owl:intersectionOf
                     (  weather:wind_chill_record
                        [ owl:onProperty sten:result_record_about ;
                          [ owl:onProperty sten:temporal_part_of ;
                            owl:hasValue
                              [ a weather:ambient_air_at_location ;
                                sten:at :L123
                              ]
                           ]
                        ]
                     )
                  ] .

:C_I_WC_L123  owl:equivalentClass
                  [ owl:intersectionOf
                     (  sten:time_record
                        [ owl:onProperty sten:result_record_about ;
                          [ owl:onProperty sten:temporal_part_of ;
                            owl:hasValue
                              [ a weather:ambient_air_at_location ;
                                sten:at :L123
                              ]
                           ]
                        ]
                     )
                  ] .

B.3.4 The class of wind chill measurement activity

:C_AM_WC-T_L123  owl:equivalentClass
                  [owl:intersectionOf
                     (  sten:observing_activity
                        sten:transmitting_activity
                        [ owl:onProperty    sten:gives_result_record ;
                          owl:allValuesFrom :C_I_WC-T_L123
                        ]
                     )
                  ] .

Each member of the class of activity :C_AM_WC-T_1234 can be partitioned into a set which consists of a member of each of:

To represent this formally, it is necessary to define a set which consists of all selections of one from each of a set of sets. It is not clear that you can do this using the OWL vocabulary. Hence a new owl:ObjectProperty sten:selection_from is proposed as follows:

:C_AM_WC-T_1234 rdfs:subClassOf
             [ owl:onProperty sten:has_partition
               owl:allValuesFrom
                [ owl:onProperty  sten:selection_from ;
                  owl:someValuesFrom
                   [ owl:oneOf
                      [ owl:oneOf
                         ( C_AM_AT_1234
                           C_WS_1234
                           C_AP_WC_1234
                           C_AM_T_1234
                           C_AP_WC-T_1234
                         )
                      ]
                   ]
                ]
             ] .

B.3.5 The component classes of wind chill measurement activity

:C_AM_AT_L123   owl:equivalentClass
                  [ owl:intersectionOf
                     ( sten:observing_activity
                        [ owl:onProperty    sten:gives_result_record ;
                          owl:allValuesFrom
                           [ owl:intersectionOf
                              ( :C_I_AT_L123
                                [ owl:onProperty     sten:input_to ;
                                  owl:someValuesFrom :C_AP_WC_L123
                                ]
                              )
                           ]
                        ]
                     )
                  ] .

:C_AM_WS_L123   owl:equivalentClass
                  [ owl:intersectionOf
                     ( sten:observing_activity
                        [ owl:onProperty    sten:gives_result_record ;
                          owl:allValuesFrom
                           [ owl:intersectionOf
                              ( :C_I_WS_L123
                                [ owl:onProperty     sten:input_to ;
                                  owl:someValuesFrom :C_AP_WC_L123
                                ]
                              )
                           ]
                        ]
                     )
                  ] .

:C_AP_WC_L123   owl:equivalentClass
                  [owl:intersectionOf
                     (  sten:information_processing_activity
                        [ owl:onProperty sten:has_input_set
                          owl:allValuesFrom
                           [ owl:onProperty maths:has_number_of_members
                             owl:hasValue [ basics:decimal "2" ]
                           ]
                        ]
                        [ owl:onProperty     sten:has_input ;
                          owl:someValuesFrom :C_I_AT_L123
                        ]
                        [ owl:onProperty     sten:has_input ;
                          owl:someValuesFrom :C_I_WS_L123
                        ]
                        [ owl:onProperty     sten:has_output ;
                          owl:allValuesFrom  :C_I_WC_L123
                        ]
                     )
                  ] .

:C_AM_T_L123   owl:equivalentClass
                  [ owl:intersectionOf
                     ( sten:observing_activity
                        [ owl:onProperty    sten:gives_result_record ;
                          owl:allValuesFrom
                           [ owl:intersectionOf
                              ( :C_I_T_L123
                                [ owl:onProperty     sten:input_to ;
                                  owl:someValuesFrom :C_AP_WC-T_L123
                                ]
                              )
                           ]
                        ]
                     )
                  ] .

:C_AP_WC-T_L123   owl:equivalentClass
                  [owl:intersectionOf
                     (  sten:information_processing_activity
                     (  sten:transmitting_activity
                        [ owl:onProperty sten:has_input_set
                          owl:allValuesFrom
                           [ owl:onProperty maths:has_number_of_members
                             owl:hasValue [ basics:decimal "2" ]
                           ]
                        ]
                        [ owl:onProperty     sten:has_input ;
                          owl:someValuesFrom :C_I_WC_L123
                        ]
                        [ owl:onProperty     sten:has_input ;
                          owl:someValuesFrom :C_I_T_L123
                        ]
                        [ owl:onProperty     sten:has_output ;
                          owl:allValuesFrom  :C_I_WC-T_L123
                        ]
                     )
                  ] .

B.3.6 The device and what it can do

The capability of weather station WS_123 is defined by reference to the activities as follow:

:WS_123     sten:can_do_plan_within  :C_AM_WC-T_L123 .

:WS_123_AT  sten:can_do_plan_within  :C_AM_AT_L123 .

:WS_123_WS  sten:can_do_plan_within  :C_AM_WS_L123 .

:WS_123_C   sten:can_do_plan_within  :C_AM_T_L123 .

:WS_123_P   sten:can_do_plan_within  :C_AP_WC_L123 ;
            sten:can_do_plan_within  :C_AP_WC-T_L123 .

B.4 Class of device

It is possible to go from statements about what an individual device can do, to statements about what a class of device can do.

WS_123 is of class C_WS_ABC. We can state that all members of class C_WS_ABC can perform an activity of class C_AM_WC-T_L123, as follows:

:C_WS_ABC   a  [ owl:onProperty     sten:can_do ;
                 owl:someValuesFrom [ owl:oneOf ( :C_AM_WC-T_L123 ) ]
               ]  .

The specification of how members of class C_WS_ABC are decomposed into components of different classes is design information about an assembly. The recording of this design information is within the scope of S-TEN deliverables D3.1 and D3.2.



© S-TEN Association e.V. — Public deliverable of the S-TEN project