xpms.label_mapping
TableRow level security on
Playbook labels that are not canon values, each mapped to the closest existing canon or lifecycle value (owner decision 25, 2026-10-19). The Bible wins on structure, so no state, code or list entry is added; a label the decision does not cover has no canon value and basis deferred.
Primary key: source_list, playbook_label
| Column | Type | Nullable | Description |
|---|---|---|---|
| source_list | xpms.canon_text | No | Where the label appears: an Enumerations domain, a Bible-mirrored sheet, or the Production Template sheet and column. |
| playbook_label | xpms.canon_text | No | The label as the Playbook states it. |
| target_domain | xpms.canon_code | No | Vocabulary the label maps into: state (canon states), unit, element_kind, counterparty_type, order_type, freight_type, record_kind, record_subtype, phase, department, category, or an app lifecycle (production_state, work_order_state, asset_state, shift_state). |
| canon_value | xpms.canon_text | Yes | The existing value the label maps to (a record subtype as kind · subtype); NULL when the decision does not cover it. |
| basis | xpms.canon_code | No | Why: casing-or-punctuation, same-label, closest-state, closest-value, not-added (a Playbook-only row) or deferred. |
| decision | xpms.canon_code | No | Owner decision that set the mapping: D25, or D39 for a unit its time dimension adds. |
| note | xpms.canon_text | Yes | Reasoning for the mapping. |