v2 Beta · Integration preview
Instruments and acquisition
Describe equipment, configuration, calibration and capture.
Acquisition context explains how raw data was captured. It identifies the physical instrument, the configuration in use, the deployment, calibration declarations, clock context and captured products. Native telemetry stays in its original format.
Explore the acquisition fields to see every nested structure and alternative in the published contract.
Separate equipment from a capture
| Inventory | What to preserve |
|---|---|
instruments | Physical identity, manufacturer/model and serial number when available, or an explicit unknown identity. |
manifests | Configuration revisions, their artifact metadata, hardware/firmware declarations and channel definitions. |
deployments | Instrument, pinned configuration, period and site. |
calibrations | The instrument, manifest and channel; method, timing, validity, report, uncertainty and review state. |
acquisitions | The actual capture period, pinned configuration/deployment, classification, clock context and active channels. |
products | Raw artifacts linked to an acquisition, with media type, byte length and digest. |
Multiple instruments and channels can be declared in one context. This metadata does not require a common storage format for cameras, radar or other sensors. Each channel declares its quantity, unit and sampling context.
A manifest revision identifies the configuration used at capture. Do not overwrite an earlier revision when hardware, firmware or channel configuration changes. Acquisitions and deployments refer to their pinned revisions.
Parse a context document
The minimal synthetic document below demonstrates the structure. Its empty inventories cannot establish an instrument-supported measurement.
import { parseAcquisitionContext } from "@disclosureos/instruments/experimental/v2";
const result = parseAcquisitionContext({
kind: "acquisition_context",
schemaVersion: "0.1.0",
id: "synthetic-context",
instruments: [],
manifests: [],
deployments: [],
calibrations: [],
acquisitions: [],
products: [],
});
console.log(result.success, result.checks);The parser checks structure and local relationships. It does not retrieve a manifest, read telemetry, execute a calibration or authenticate the instrument. JSON Schema is available through @disclosureos/instruments/experimental/v2/acquisition/schema with identifier urn:disclosureos:experimental:acquisition-context:0.1.0.
Preserve capture timing
Observation event time and instrument capture time have different roles. Keep the capture instant or interval supplied by the provider, together with its time scale and clock declarations. Do not derive it from a filename, a chart label or sample order.
Clock source, synchronization, resolution and uncertainty are separate declarations. An unknown field remains explicit. Nominal interval containment does not account for clock uncertainty; a more demanding review must address it separately.
Describe calibration without overstating it
A calibration attaches to an instrument configuration and channel. Preserve its method/version, validity period, report, uncertainty and review state. A report hash can identify supplied bytes, but matching that hash does not establish that the calibration was adequate or independently approved.
Connect context to the observation
Context is a separate document. Acquisition bindings connect an observation's instrument source and raw product to this context. Measurement bindings then name the captured channel and explicit measurement time.
For ELDÆON's first integration, start with one real capture, the relevant configuration and one interpretable channel. Extend the same inventory to additional sensors once identifiers, units and timestamps are agreed. The public preview remains a visualization extract; it does not supply the full native archive or complete acquisition declarations.
The worked example provides a populated synthetic context and the artifact bytes needed to run binding checks.