An official website of the Disclosure Foundation
RecordsObservablesOriginsClaimsScoringOnboardDocs

Records

The unit of record

Observables

Detection

Origins

Classification

Claims

Attribution

Scoring

Evaluation

Onboard

Bring your dataset

Docs

Implement the standard

GitHub

Open standards and tools for UAP research.

RecordsObservablesOriginsClaimsScoringOnboardDocsGitHubDonate

© 2026 Disclosure Foundation. All rights reserved.

The Standard · Part 1 of 5 — The unit of record

Records

Every UAP case becomes an Observation: one structured record with a shared vocabulary for when, where, what was seen, who saw it, and what evidence exists.

@disclosureos/recordsDocumentation

The anatomy of an Observation

A single UAP observation record — the core unit of the DisclosureOS lexicon. Its 30 top-level fields are read straight from the standard itself — 36 defined building blocks in all. Expand a field to see everything beneath it: every sub-field, the kind of value it takes, and any fixed list of allowed options.

Identity & Anchors

The required spine of every record: what it is, when and where it happened, and its lifecycle.

  • idstringrequired

    Stable unique identifier for this observation.

  • When an observation occurred — a sortable anchor date plus optional fuzzy/range/relative nuance.

  • Where an observation occurred — identity, coordinates, site classification, and proximity context.

  • Lifecycle/publication state of an observation record.

  • createdAtstringrequired

    ISO timestamp when the record was created.

  • updatedAtstringrequired

    ISO timestamp when the record was last updated.

Descriptive

What was reported, in plain terms — the narrative, the object, the source, and any investigation.

  • summarystring

    One-or-two sentence summary of the observation.

  • descriptionstring

    Full narrative account of the observation.

  • Physical description of the observed object(s).

  • eventTypestring

    Local event-type tag (e.g. "multi-sensor military encounter"). The word "classification" is reserved for the origin taxonomy in @disclosureos/origins; this is just a free-text descriptor.

  • Where the observation data came from. Forensic custody/authenticity now lives in the optional `Observation.provenance` slot (@disclosureos/records/extensions/provenance).

  • Official/independent investigation of the observation.

Detailed Domains

Structured depth for cases that have it: flight behavior, witnesses, sensors, effects, and context.

  • How the object moved — kinematics and notable maneuvers.

  • Aggregate summary of who witnessed the observation.

  • Instrument-recorded evidence for an observation (radar, FLIR, EO, etc.).

  • Official, media, and public response to the observation.

  • Environmental and weather conditions at the time of observation.

  • Typed links to related observations, plus flap/wave/cluster groupings.

  • Aviation context when the observation involved aircraft.

Media

Attached photos, videos, audio, and documents — the record’s exhibit list.

  • A media file associated with an observation (image, video, document, or audio).

  • A media file associated with an observation (image, video, document, or audio).

Forensic Extensions

Deeper ground for the hardest questions: chain of custody, sworn testimony, physical evidence, and cross-references.

  • Forensic provenance for an observation: custody status/chain and digital authenticity.

  • External identifiers cross-referencing this observation, with an optional primary.

  • A single witness statement, its context, and supporting documentation.

  • A physical artifact associated with an observation and its handling record.

  • Provenance metadata for a source document (classification, agency, redaction).

Metadata & Extensions

Versioning, data-source bookkeeping, and the extensions area where third parties attach their own data.

  • dataSourceIdstring

    Identifier of the dataset or pipeline this record came from.

  • schemaVersionstring

    Version of the records schema this record was authored against.

  • extensionsmap

    Third-party extension bag for slots not owned by a first-party package.

  • internalNotesstring

    Private working notes for maintainers — not part of the public record.

Part 2 of 5ObservablesDetection