Platform/Relational Map

Relational Map

Relational Map

See the workbook as lineage, not a flat file.

Click any branch to move from sheet class to system, then down into the actual worksheet, owner signals, join spine, status field, and time field. This is the fast read for figuring out who owns what and where the workbook breaks.

sanitized demo workbook
Run Excel demo Open Excel demo
Source workbook: apex_therapeutics_demo_tracker.xlsx

// WORKBOOK STRUCTURE

6 sheets 5 entities 11 FK edges 0 shard group(s) 2 high-readiness 2 medium-readiness 2 low-readiness
! multiple masters claim PK for: batch_id, deviation_id, operator_id — pick one source of truth.
! intake review required for: Template_Readme, Open_Actions
Relational lineage map
Click any class, system, worksheet, owner lane, or truth lane to pivot the path. The tree stays in VIXAR dark mode and keeps the active workbook spine visible.
This view is interactive. It is meant to behave like a decomposition tree, not a static screenshot.
Sheet classification
low readiness Template_Readme EM 79% confidence
mapped: no mapped fields
evidence: sheet:em
owner lane: missing
id spine: pending
weak spots: no obvious room / area field detected; no canonical columns mapped
medium readiness Batch_Release_Queue MES 80% confidence
mapped: batch_id <- batch id, batch_id <- lot id, system_id <- system, deviation_id <- deviation id and 1 more
evidence: sheet:batch, header:batch
owner lane: missing
id spine: asset_id, batch_id, deviation_id, system_id
weak spots: no immediate intake gaps
high readiness Deviation_CAPA QMS 97% confidence
mapped: deviation_id <- deviation id, batch_id <- batch id, batch_id <- lot id, asset_id <- asset id and 1 more
evidence: sheet:deviation, sheet:capa, header:capa, header:quality, header:deviation, header:impact
owner lane: missing
id spine: asset_id, batch_id, deviation_id
weak spots: no immediate intake gaps
high readiness Calibration_Master CAL 97% confidence
mapped: asset_id <- asset id, instrument_id <- instrument, room_area <- area, batch_id <- linked batch id and 1 more
evidence: sheet:calibration, sheet:cal, header:calibration
owner lane: missing
id spine: asset_id, batch_id, instrument_id, room_area, system_id
weak spots: no immediate intake gaps
medium readiness Training_Matrix_Draft MES 78% confidence
mapped: operator_id <- operator id, operator_id <- operator, batch_id <- batch id
evidence: header:operator, header:batch
owner lane: missing
id spine: batch_id, operator_id
weak spots: no immediate intake gaps
low readiness Open_Actions MES 65% confidence
mapped: batch_id <- batch id, batch_id <- lot id, asset_id <- asset id
evidence: header:batch
owner lane: missing
id spine: asset_id, batch_id
weak spots: no immediate intake gaps
Sheets
registry Template_Readme 4 rows 2 cols
tracker Batch_Release_Queue 5 rows 11 cols PK: batch id, lot id, deviation id keys: asset_id, batch_id, deviation_id, system_id
tracker Deviation_CAPA 5 rows 10 cols PK: deviation id, batch id, lot id, capa action keys: asset_id, batch_id, deviation_id
registry Calibration_Master 5 rows 8 cols PK: asset id, instrument, linked batch id keys: asset_id, batch_id, instrument_id, room_area, system_id
tracker Training_Matrix_Draft 5 rows 8 cols PK: operator id, operator, batch id keys: batch_id, operator_id
tracker Open_Actions 5 rows 8 cols PK: action id, batch id, lot id keys: asset_id, batch_id
Shared IDs
batch_id master Batch_Release_Queue.batch id 0 ref(s)
(orphaned - no external references)
deviation_id master Batch_Release_Queue.deviation id 0 ref(s)
(orphaned - no external references)
asset_id master Calibration_Master.asset id 3 ref(s)
Batch_Release_Queue.asset id, Deviation_CAPA.asset id, Open_Actions.asset id
instrument_id master Calibration_Master.instrument 0 ref(s)
(orphaned - no external references)
operator_id master Training_Matrix_Draft.operator id 0 ref(s)
(orphaned - no external references)
Cross-sheet links
Deviation_CAPA.batch id to Batch_Release_Queue.batch id batch_id duplicate master — drift risk
Deviation_CAPA.lot id to Batch_Release_Queue.batch id batch_id duplicate master — drift risk
Calibration_Master.linked batch id to Batch_Release_Queue.batch id batch_id duplicate master — drift risk
Training_Matrix_Draft.batch id to Batch_Release_Queue.batch id batch_id duplicate master — drift risk
Open_Actions.batch id to Batch_Release_Queue.batch id batch_id duplicate master — drift risk
Open_Actions.lot id to Batch_Release_Queue.batch id batch_id duplicate master — drift risk
Deviation_CAPA.deviation id to Batch_Release_Queue.deviation id deviation_id duplicate master — drift risk
Deviation_CAPA.capa action to Batch_Release_Queue.deviation id deviation_id duplicate master — drift risk
Batch_Release_Queue.asset id to Calibration_Master.asset id asset_id
Deviation_CAPA.asset id to Calibration_Master.asset id asset_id
Open_Actions.asset id to Calibration_Master.asset id asset_id
Join keys are detected from repeated headers and repeated identifiers. Cross-sheet links are candidate matches, so confirm them against the real workbook before acting on them. Use this map to see how one mismatch can affect more than one tab.