AI Executive Office — CXO Assistant Platform  ·  View 13 of 30  ·  4 · Data

Canonical Data Model

The entities every agent shares — and the four the platform owns, which exist in no source system.

Editable source SVG draw.io All views
organisation org_id PK tenant_id FK legal_name sovereignty_tier business_unit bu_id PK org_id FK parent_bu_id FK cost_centre financial_account account_id PK bu_id FK account_type currency kpi_definition kpi_id PK measure_expression owner_role version project project_id PK bu_id FK baseline_finish forecast_finish supplier supplier_id PK org_id FK risk_grade source_keys[] purchase_order po_id PK supplier_id FK project_id FK value · currency kpi_fact kpi_id FK grain_key as_of_date value contract contract_id PK supplier_id FK expiry_date document_ref risk risk_id PK subject_type subject_id severity · likelihood decision decision_id PK situation_id FK approver_oid state · as_of evidence evidence_id PK decision_id FK source · query snapshot_uri action action_id PK decision_id FK target_system state · external_ref outcome outcome_id PK action_id FK kpi_id FK verdict · measured_at 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : N 1 : 1 Canonical Data Model — The Entities Every Agent Shares The four blue entities are the platform's own. Everything else is a conformed projection of a source system, keyed by source_keys[] so a merge is reversible. v 1.0 · owner Data & AI Global Practice · date 2026-09

The decision

  • A canonical model, not a federated query layer. Cross-system questions need shared identity for supplier, project and cost centre, and no amount of query federation supplies that
  • The four blue entities — decision, evidence, action, outcome — are the platform's own contribution. Everything else is a conformed projection of somebody else's record
  • Conformed entities keep source_keys[], so a merge is reversible. Entity resolution is a judgement, and judgements get revised

Deliberate omissions

  • Attributes shown are the ones that carry a decision. The real model has 40–120 attributes per entity, generated from the tenant's mapping configuration
  • Customer, employee and the HR entities are in the model but off this page; they follow the same pattern and would only add rows

Assumptions

  • kpi_definition holds the measure expression as the single definition. Where the customer's BI estate already owns it, the platform reads it rather than restating it — but there must be exactly one