2B9TObservatory

Observation schema field desk

Local record instrument

Check shape.
Demand sources.
Field
WORKBENCH
Cohort
0 attributable records
Schema
v2 · strict keys
Runtime
local tab only

Schema v2 / local inspection

Evidence starts with a record that can be checked.

Read the exact observation shape, then test a pasted JSON object without sending it anywhere. Passing this validator proves structure only. It does not prove that a server was contacted, that a returned value is true, or that a control claim belongs to anyone.

LOCAL CALIBRATION BENCHhttps://2b9t.org/schemas/observation/v2

Inspect an observation record

Paste one JSON object. This page checks it in your browser against the documented v2 shape; it does not send, retain, publish, or endorse the record.

SCHEMA / V2

Required field rail

  1. 01schemaId
  2. 02recordId
  3. 03publicationState
  4. 04subject
  5. 05observedAt
  6. 06observation
  7. 07sources
  8. 08ownershipAssertion
  9. 09lastmod
Extra fields
Rejected at their exact path
Sources
At least one attributable source
Edition
The one protocol family spoken
Control claims
Evidence-source reference required
Published records
Dated observation required
Read the complete machine contract
{
  "schemaId": "https://2b9t.org/schemas/observation/v2",
  "schemaVersion": 2,
  "inputMaxLength": 131072,
  "recordIdPattern": "^obs-[a-z0-9]+(?:-[a-z0-9]+)*-v[1-9][0-9]*$",
  "publicationStates": [
    "example",
    "draft",
    "published"
  ],
  "required": [
    "schemaId",
    "recordId",
    "publicationState",
    "subject",
    "observedAt",
    "observation",
    "sources",
    "ownershipAssertion",
    "lastmod"
  ],
  "additionalProperties": false,
  "fields": {
    "subject": {
      "required": [
        "endpoint",
        "edition"
      ],
      "editions": [
        "minecraft-java",
        "minecraft-bedrock"
      ],
      "editionRule": "edition names the status-protocol family the observation spoke; crossplay is never a record value",
      "additionalProperties": false
    },
    "observation": {
      "required": [
        "reachability",
        "returnedVersion",
        "protocol",
        "note"
      ],
      "additionalProperties": false
    },
    "sources": {
      "minItems": 1,
      "itemRequired": [
        "sourceId",
        "kind",
        "title",
        "url",
        "accessedAt"
      ],
      "itemAdditionalProperties": false,
      "kinds": [
        "direct-probe",
        "server-response",
        "owner-evidence",
        "third-party",
        "documentation"
      ]
    },
    "ownershipAssertion": {
      "nullable": true,
      "required": [
        "statement",
        "evidenceSourceId",
        "assertedAt",
        "expiresAt"
      ],
      "evidenceRule": "evidenceSourceId must reference a source whose kind is owner-evidence",
      "expiryRule": "expiresAt must be later than the UTC validation date",
      "additionalProperties": false
    }
  }
}
DOCUMENTATION EXAMPLE — NOT AN OBSERVATION

Unavailable specimen

The reserved endpoint example.invalid:25565 was not contacted. Its example state and “no endpoint request” note keep this sample out of the published cohort.

{
  "schemaId": "https://2b9t.org/schemas/observation/v2",
  "recordId": "obs-example-unavailable-v2",
  "publicationState": "example",
  "subject": {
    "endpoint": "example.invalid:25565",
    "edition": "minecraft-java"
  },
  "observedAt": null,
  "observation": {
    "reachability": "unavailable",
    "returnedVersion": null,
    "protocol": null,
    "note": "Example record only; no endpoint request was made."
  },
  "sources": [
    {
      "sourceId": "src-observation-method-v2",
      "kind": "documentation",
      "title": "2b9t observation schema and method",
      "url": "https://2b9t.org/methodology/",
      "accessedAt": "2026-08-11"
    }
  ],
  "ownershipAssertion": null,
  "lastmod": "2026-08-11"
}
PUBLISHED COHORT0 attributable records

Empty by construction. A schema-valid example is documentation, not evidence; validation never publishes a pasted record.

COHORT / PUBLISHEDAttributable records only

Current release

0 attributable records.No live feed is connected · no observation has been published in either edition · examples are excluded
direct observationserver responseevidence-backed claim

Record cross-section

Three boundaries stay visible

Each layer answers a different question. Combining them into one unlabeled “server fact” would erase where the claim came from.

SCHEMA V2 · FIELD BOUNDARIESNO PUBLISHED SPECIMEN
01

Direct observation

A dated result from a documented method. Without an observation time and traceable source, it cannot publish as measured fact.

02

Server response

Version, protocol, and similar endpoint-returned fields stay labeled as a response from that endpoint — in the one Java or Bedrock edition the probe spoke — not as a census.

03

Control assertion

A narrow claim must reference dated evidence in the same record. It never becomes a quality signal, publisher relation, or grouping label.

Read the validation method, the publication requirements, and the evidence boundary for control claims.