Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • SpecifiedPlainRecord
  • SpecifiedTimeStampedRecord, etc.

DerivedRecord and StatisticsRecord

  • This is a record type that does not deliver the original data but something that is calculated from it.
  • These are  needed only if the  "derived" signal is not already listed in the VSS signal database.  In other words, it is perfectly possible to use VSS to define some derived or statistical value already.  A normal request for that VSS signal would then deliver the value in a normal record, and there is no need to define in the value-measurement protocols how this  value is calculated since it is declared in the VSS description or simply decided by the system that delivers it.   
    Here is one example of this already listed in VSS today:   Vehicle.AverageSpeed.   It has the description "Average speed for the current trip".  You could imagine defining another signal named Vehicle.Speed.MonthlyAverage, for example and just fetch it as a normal Record.
  • But as a complement to predefined "hard coded" statistical signals inside VSS ,  a DerivedRecord type such as statistical record is useful since it can have modifiable parameters, such as over which time period is the measurement done.
  • Subtypes of DerivedRecord are StatisticsRecord and maybe some others (e.g. mathematical function / curve matching?)
  • Further Subtypes of StatisticsRecord:  Average, Median, Max, Min, Histogram, and so on.  


...

TimeStamp

NOTE:  The exact format of all of these may differ when these concepts are translated to different protocols or languages.
As a starting point however, let's propose to use ISO 8601 standard format, with fractional seconds (e.g. microseconds) and always UTC (Zulu) time zone, if a TimeStamp is given in text format.  For other purposes such as binary formats, more efficient encodings should be considered. 

...

  • Continuous delivery of data points according to a predefined agreement
  • Not only a different container type.  It deals more with the delivery method (constant stream compared to atomic message)
  • Does not have a fixed start/end time
  • Delivers a stream of Records (or Snapshots)
  • + could also deliver side-band information (e.g. Job information)
  • Is analogous to the delivery of a Subscription for protocols that support subscriptions.


DerivedRecord and StatisticalRecord

...

...



...

Examples, in JSON


(Plain) Record:

...


"timeperiod" {
"start" : "2020-01-10T02:00:00Z",
"end" : "2020-01-11T01:59:59Z"
},
"values" : {
{
    "signal" : "vehicle.body.cabin.temperature",
     "value" : "22",
     "ts" : "2020-01-10T02:59:43.491751"
},
{
    "signal" : "vehicle.drivetrain.engine.rpm.average",
      "value" : "3200",
     "ts" : "2020-01-10T02:59:44.100403"
}
}

todo: Examples of Derived/Statistics Records