dev.sensorthings.observationFrame

The new or changed readings from one collector tick, for many Datastreams in the same repo. Created once and never updated. After the correction horizon has passed, the readings are sealed into dev.sensorthings.observationBatch day records and the frame is deleted. Apply frames in record key order: a later entry for the same datastream and phenomenonTime replaces an earlier one. The record key is the tick time to the millisecond and a three-digit shard number, for example 20260925T100700000Z-000.

Details · record, key any
Kindrecord
Record keyany
Authoritysensorthings.dev
Indexed
cid bafyreifisputmwndlh3v6pn3jy33lhl5oopsm5xwiaowgexgityonwinmm

Checks

Valid
  • unlimited-string defs.frameEntry.properties.qNo maxLength, maxGraphemes or format limits this string.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "frameEntry": {
      "properties": {
        "datastream": {
          "description": "Record key of a dev.sensorthings.datastream record in the same repo",
          "format": "record-key",
          "type": "string"
        },
        "q": {
          "knownValues": [
            "dev.sensorthings.quality#good",
            "dev.sensorthings.quality#suspect",
            "dev.sensorthings.quality#missing"
          ],
          "type": "string"
        },
        "result": {
          "description": "Observation result, same union as dev.sensorthings.observation",
          "refs": [
            "dev.sensorthings.observation#numericResult",
            "dev.sensorthings.observation#categoryResult",
            "dev.sensorthings.observation#booleanResult",
            "dev.sensorthings.observation#arrayResult",
            "dev.sensorthings.observation#geoPointResult"
          ],
          "type": "union"
        },
        "t": {
          "description": "phenomenonTime",
          "format": "datetime",
          "type": "string"
        }
      },
      "required": [
        "datastream",
        "t",
        "result"
      ],
      "type": "object"
    },
    "main": {
      "description": "The new or changed readings from one collector tick, for many Datastreams in the same repo. Created once and never updated. After the correction horizon has passed, the readings are sealed into dev.sensorthings.observationBatch day records and the frame is deleted. Apply frames in record key order: a later entry for the same datastream and phenomenonTime replaces an earlier one. The record key is the tick time to the millisecond and a three-digit shard number, for example 20260925T100700000Z-000.",
      "key": "any",
      "record": {
        "properties": {
          "observations": {
            "items": {
              "ref": "#frameEntry",
              "type": "ref"
            },
            "maxLength": 10000,
            "type": "array"
          },
          "tickTime": {
            "description": "Time of the collector tick that wrote this frame",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "tickTime",
          "observations"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "dev.sensorthings.observationFrame",
  "lexicon": 1,
  "revision": 1
}