Step 2 — FHIR-to-Graph Ingestion

dm_corpus.json → person-centered knowledge graph (Section 3.1–3.3 / Section 4) · runs entirely in-browser, no Python/Node required
What this does: loads the Step 1 corpus (dm_corpus.json), and for every patient instantiates PatientNode / ObservationNode / DiagnosisNode / InterventionNode / OutcomeNode connected by the patient-anchor edges (HAS_OBSERVATION, HAS_DIAGNOSIS, RECEIVES_PLAN, RESULTS_IN — time as an edge property) plus the relational edges (SUGGESTS, INDICATES_PLAN, PRODUCED_OUTCOME, MODULATES, CONSTRAINS). Same code path for T1D and T2D — no special-casing.