6.5.2.10 CanonicalDerivation
6.5.2.10.1 Purpose¶
Records how we computed a value from other values: the calculation, its parameters and the exact versions of its inputs. It lets computed observations and periods be computed again identically.
6.5.2.10.2 Questions it answers¶
- How was this computed value obtained?
- Which exact inputs did the calculation use?
- Can we compute the same value again?
6.5.2.10.3 Fields¶
| Field | Type | Cardinality | Description |
|---|---|---|---|
id |
string (uuid) |
1..1 |
Key. |
transformation |
CodedValue | 1..1 |
|
inputs |
RecordReference | 1..* |
|
parameters |
typed object of transformation definition | 1..1 |
|
computed_at |
datetime |
1..1 |
|
source_producer |
SourceProducerEntity | 1..1 |
6.5.2.10.4 Relationships¶
References
Referenced by
CanonicalObservation.derivation(0..1)CanonicalPeriod.derivation(0..1)
Uses types
6.5.2.10.5 Rules & constraints¶
- Reproducible calculation on canonical inputs; not a duplicate of raw field provenance.
- Definition and parameters fix formula, input selection and weights; inputs identify retained exact revisions.
- Applies to observations and computed periods; received vendor values can lack internal inputs without claiming reproducibility.
- Raw-to-canonical conversions use ParseJob/mapping audit, not an invented canonical input or a self-reference.