v2 Beta · Integration preview
Connect measurements to instruments
Follow references from the observation to captured products and channels.
Bindings make the relationship between an observation and its acquisition context explicit. They use local identifiers in named documents, not assumed matches between display labels.
Two mapping documents
| Document | Connection |
|---|---|
| Acquisition bindings | Observation source → physical instrument; observation raw product → acquisition raw product. |
| Measurement bindings | Measurement → acquisition-bound raw product → captured channel, with an explicit measurement time. |
Both mappings identify their history, observation and context. Measurement bindings also identify their acquisition binding document. Explore the mapping fields.
The evaluator receives a claim history containing the observation, an acquisition context and the two mapping documents. Its optional assets map contains complete local Uint8Array values under the context namespace: product:ID, manifest:ID, calibration:ID/report and, when supplied, calibration:ID/review. It never fetches artifact URLs.
What the measurement profile checks
- Primary measurement lineage reaches the mapped raw product and its instrument-data source.
- The product is already connected by the acquisition bindings.
- The named channel is present in the pinned manifest and acquisition.
- Quantity and unit strings match exactly; unit conversion is not performed.
- Explicit measurement time fits within the nominal capture. Intervals are half-open:
[start, end). A point at the capture end is outside it. - Supplied raw, manifest and calibration artifact bytes match their declarations through the acquisition evaluator.
The current measurement profile supports one captured channel and one instrument raw product per measurement. A multi-sensor viewer can show separate channels together. A fused measurement depending on multiple instrument raw products needs a future explicit profile; a shared display is not fusion validation.
Interpret the result
| Situation | Expected boundary |
|---|---|
| Valid declarations and matching required bytes | The binding profile can pass. |
| Required bytes missing | An otherwise eligible profile remains not_checked. |
| Supplied bytes do not match | Artifact verification fails. |
| Unknown measurement time | Structurally representable, but cannot pass this profile. |
| No instrument-supported measurements | Profile remains not_checked. |
Structural, semantic, profile and external results remain separate. Scientific validity, clock-uncertainty treatment and artifact-content interpretation are not established by a successful binding result. Matching file hashes does not prove that the file actually contains the declared channel, value or timestamp.
The separate research prerequisites profile addresses declared review prerequisites. Independent scientific review remains a further requirement.
Run it locally
The worked example contains the four documents, three synthetic artifacts and an executable script. It calls evaluateMeasurementBindings from @disclosureos/schema/experimental/v2 with actual local bytes, so you can compare a passed check with missing and altered artifacts.
JSON Schema exports:
@disclosureos/schema/experimental/v2/bindings/schema@disclosureos/schema/experimental/v2/measurements/schema
Their identifiers are urn:disclosureos:experimental:acquisition-bindings:0.1.0 and urn:disclosureos:experimental:measurement-bindings:0.1.0.