|
|
The ic-data:Datapoint is an atomic piece of information about a certain observable quantity in nature that can contain a numerical value and a corresponding unit of measure. An ic-data:TimeSeries is related to the ic-data:Datapoint class via the ic-data:hasDatapoint (0..N) property and is defined as an ordered sequence of data-points of a quantity that is observed at spaced (not necessarily equally spaced) time intervals.
|
|
|
The `ic-data:Datapoint` is an atomic piece of information about a certain observable quantity in nature that can contain a numerical value and a corresponding unit of measure. An `ic-data:TimeSeries` is related to the `ic-data:Datapoint` class via the `ic-data:hasDatapoint` (0..N) property and is defined as an ordered sequence of data-points of a quantity that is observed at spaced (not necessarily equally spaced) time intervals.
|
|
|
|
|
|

|
|
|
|
|
|
The ic-data:Datapoint is defined as a subclass of saref:Measurement and, as such, inherits the saref:hasValue and saref:hasTimestamp properties. Therefore, if the combination of a value and timestamp is sufficient to represent a datapoint, then the SAREF concepts for measurement can be directly reused. However, we noticed that often, especially when representing timeseries of datapoints in a forecast (see Forecast module in Section 4.3), a number of additional properties are needed. Therefore we extended SAREF by assigning to the ic-data:Datapoint and the ic-data:TimeSeries the following properties:
|
|
|
The `ic-data:Datapoint` is defined as a subclass of `saref:Measurement` and, as such, inherits the `saref:hasValue` and `saref:hasTimestamp` properties. Therefore, if the combination of a value and timestamp is sufficient to represent a datapoint, then the SAREF concepts for measurement can be directly reused. However, we noticed that often, especially when representing timeseries of datapoints in a forecast (see Forecast module in Section 4.3), a number of additional properties are needed. Therefore we extended SAREF by assigning to the `ic-data:Datapoint` and the `ic-data:TimeSeries` the following properties:
|
|
|
|
|
|
***Temporal properties:***
|
|
|
- ic-data:hasCreationTime, which defines the instant in which a data point or timeseries (or forecast, see Section 4.3) has been created in terms of a time:Instant from the Time ontology. Note that the creation time is not the same as the time at which the quantity is in effect, which is expressed by the ic-data:hasEffectivePeriod property. For example, if a temperature is forecasted today at 12:30 (creation time of the forecast) for the following day between 14:45 and 15:45 (time when the temperature is expected to be in effect), the then creation time is 12:30 of today.
|
|
|
- ic-data:hasEffectivePeriod, which connects to the time:Interval (with a beginning and an end) in which the quantity of a data point was, is, or will be in effect. In the example above, the effective period of the forecasted temperature begins tomorrow at 14:45 and ends at 15:45.
|
|
|
- ic-data:hasTemporalResolution, which defines the distance, as a time:TemporalDuration, between two data points measured at different times. This makes sense if the measured data points in a time-series are equidistant in time. For example, the temporal resolution of the forecasted temperature in the example mentioned above is 1 hour, i.e., the difference between the end time (15:45) and start time (14:45) of the effective period of each data point in a time-series.
|
|
|
- ic-data:hasUpdateRate, which defines the rate at which a data point or time-series (or forecast, see Section 4.3) is being updated. If the time-series gets regularly updated, then the time between two updates can be recorded here.
|
|
|
- `ic-data:hasCreationTime`, which defines the instant in which a data point or timeseries (or forecast, see Section 4.3) has been created in terms of a `time:Instant` from the Time ontology. Note that the creation time is not the same as the time at which the quantity is in effect, which is expressed by the `ic-data:hasEffectivePeriod` property. For example, if a temperature is forecasted today at 12:30 (creation time of the forecast) for the following day between 14:45 and 15:45 (time when the temperature is expected to be in effect), the then creation time is 12:30 of today.
|
|
|
- `ic-data:hasEffectivePeriod`, which connects to the `time:Interval` (with a beginning and an end) in which the quantity of a data point was, is, or will be in effect. In the example above, the effective period of the forecasted temperature begins tomorrow at 14:45 and ends at 15:45.
|
|
|
- `ic-data:hasTemporalResolution`, which defines the distance, as a `time:TemporalDuration`, between two data points measured at different times. This makes sense if the measured data points in a time-series are equidistant in time. For example, the temporal resolution of the forecasted temperature in the example mentioned above is 1 hour, i.e., the difference between the end time (15:45) and start time (14:45) of the effective period of each data point in a time-series.
|
|
|
- `ic-data:hasUpdateRate`, which defines the rate at which a data point or time-series (or forecast, see Section 4.3) is being updated. If the time-series gets regularly updated, then the time between two updates can be recorded here.
|
|
|
|
|
|
***Measurement properties:***
|
|
|
- ic-data:containsQuantity, which defines a direct connection to the OM ontology.In this way, a datapoint contains an om:Quantity, which has a value (om:hasValue property) that is a om:Measure, which in turn has a numerical value (om:hasNumericalValue property) and has a unit (om:hasUnit property) that is an om:Unit.
|
|
|
- `ic-data:containsQuantity`, which defines a direct connection to the OM ontology. In this way, a datapoint contains an `om:Quantity`, which has a value (`om:hasValue` property) that is a `om:Measure`, which in turn has a numerical value (`om:hasNumericalValue` property) and has a unit (`om:hasUnit` property) that is an `om:Unit`.
|
|
|
|
|
|
***Usage properties:***
|
|
|
- ic-data:hasUsage, which gives some additional information about the usage of a data-point, i.e., to define for which purpose the data-point or time-series is used, for example as an upper limit, lower limit or a baseline (i.e., expected value), a maximum versus minimum value, or a consumption versus a production value.
|
|
|
- `ic-data:hasUsage`, which gives some additional information about the usage of a data-point, i.e., to define for which purpose the data-point or time-series is used, for example as an upper limit, lower limit or a baseline (i.e., expected value), a maximum versus minimum value, or a consumption versus a production value.
|
|
|
|
|
|
***Provenance properties:***
|
|
|
- ic-data:producedBy, which defines the origin (or provenance) at which the datapoint or timeseries are produced. This origin is defined as an agent that can be a person, an organization or a software component.
|
|
|
- `ic-data:producedB`y, which defines the origin (or provenance) at which the datapoint or timeseries are produced. This origin is defined as an agent that can be a person, an organization or a software component.
|
|
|
|
|
|
***Topological properties:***
|
|
|
- ic-tplg:hasTopologicalAssociation, which connects a datapoint with a topological location (ic-tplg:TopologicalLocation). For further details, see the Topology module in Section 4.9.
|
|
|
- `ic-tplg:hasTopologicalAssociation`, which connects a datapoint with a topological location (`ic-tplg:TopologicalLocation`). For further details, see the Topology module in Section 4.9.
|
|
|
|
|
|
Finally, Figure 5 shows the concept of message (ic-data:Message class) which has a creation time, an effective period, a provenance relation to indicate where the message is coming from (ic-data:producedBy relation) and an optional text field (ic-data:hasTextValue relation) where the content of the message can be specified, as the ic-data:Message is used in some use cases by the InterConnect pilots to display recommendations to the users.
|
|
|
Finally, Figure 5 shows the concept of message (`ic-data:Message` class) which has a creation time, an effective period, a provenance relation to indicate where the message is coming from (`ic-data:producedBy` relation) and an optional text field (`ic-data:hasTextValue` relation) where the content of the message can be specified, as the `ic-data:Message` is used in some use cases by the InterConnect pilots to display recommendations to the users.
|
|
|
|
|
|
|
|
|
|
... | ... | |