opengeospatial / sensorthings

The official web site of the OGC SensorThings API standard specification.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Time Instant, Interval, Object modeling

hylkevds opened this issue · comments

In STAv1.1 we have:

  • TM_Instant (2018-01-01T02:00:00Z)
  • TM_Interval (2018-01-01T02:00:00Z/2018-01-01T03:00:00Z)
  • TM_Object
    • Either an Instant or an Interval

OData only defines TM_Instant (EDM_DateTimeOffset), not intervals.

The proposal is to model TM_Object as a complex property with a start (mandatory) and an end (optional).

Disadvantage is that even if the Observation phenomenonTime is an instant, you'll still see an object with a "start" property.

A second point is the names we use for times. Currently the proposal has:

  • Datastream/phenomenonTime
  • Datastream/resultTime
  • Observation/phenomenonTime
  • Observation/resultTime
  • Observation/validTime
  • Deployment/deploymentTime
  • HistoricalLocation/time
  • PreparationStep/time
  • Sampling/samplingTime

This is rather inconsistent, since sometime just time is used, while sometimes the name is spelled out completely (deploymentTime, samplingTime). For the Datastream and Observation it is obvious a shorter name can not be used, since there are multiple times, but Deployment, HistoricalLocation, PreparationStep and Sampling all only have one time.

We could either

  1. Use time for these four times
  2. Use the full name for these four, but what name to use?
    • historicalLocationTime and preparationStepTime are very ugly.
    • HistoricalLocation/arrivalTime? That would be semantically clearer.
    • PreparationStep/executionTime?

There is a preference for the short versions.
Also samplingLocation -> location