dev.sensorthings.observationBatch

sensorthings.dev

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "batchEntry": {
      "properties": {
        "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": [
        "t",
        "result"
      ],
      "type": "object"
    },
    "main": {
      "description": "A batch of observations for a single Datastream, covering a contiguous time window. Trades individual addressability for reduced commit overhead.",
      "key": "any",
      "record": {
        "properties": {
          "datastream": {
            "format": "at-uri",
            "type": "string"
          },
          "observations": {
            "description": "Array of observations in chronological order",
            "items": {
              "ref": "#batchEntry",
              "type": "ref"
            },
            "maxLength": 1440,
            "type": "array"
          },
          "windowEnd": {
            "format": "datetime",
            "type": "string"
          },
          "windowStart": {
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "datastream",
          "windowStart",
          "windowEnd",
          "observations"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "dev.sensorthings.observationBatch",
  "lexicon": 1,
  "revision": 1
}

Validate Record

Validate a record against dev.sensorthings.observationBatch

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:gqcmwsromoknyigx2afqcvqk
CID
bafyreibfajmipmluohecwmpzfixs6p47gqdhvzbqi4sbtn3spfhvwxfvtu
Indexed At
2026-07-26 20:10 UTC
AT-URI
at://did:plc:gqcmwsromoknyigx2afqcvqk/com.atproto.lexicon.schema/dev.sensorthings.observationBatch

Version History (2 versions)

Referenced Schemas (5)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • 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.observat…

  • A single act of observation. The result type is determined by the $type discriminator on the result object.

  • A composite observation bundling multiple co-produced results from a single act of sensing. Each entry carries its own ObservedProperty, unit, and scale metadata. Use this instead of separate Observations when the resul…

Lexicon Garden

@