kb/research/cureid_associations.yaml does not exist, so products/research_list.yaml
carries no CURE-ID associations at all. The ingest module and its tests are in place
(src/medic/ingest/cureid/, tests/test_cureid.py, just ingest-cureid); it simply has not
been run since the redesign rebuild.
This surfaced while building the new KGX export. CURE-ID is the only source that sets
max_research_phase: CASE_REPORT, and that value is what selects the
biolink:applied_to_treat predicate — Biolink's term for "actually taken by one or more
patients with the intent of treating the condition", which is precisely what a CURE-ID case
report records. Verified on the current export (2026-08-13): grep -c CASE_REPORT products/research_list.yaml returns 0, and exports/medic_edges.jsonl contains zero
biolink:applied_to_treat edges against 9,716 biolink:treats and 164
biolink:studied_to_treat. MeDIC currently has no real-world-use axis in the graph at all,
only study evidence.
The fix is to run the ingest, recompile, and re-export:
just ingest-cureid
just build-research
just export-kgx
Expected effect on the KGX export: ~240 CURE-ID rows aggregate into drug–disease pairs that
emit biolink:applied_to_treat edges attributed to infores:cure-id. These are added
alongside the existing 164 studied_to_treat edges — they do not reclassify them. The 164
stay on the weakest predicate until #42 is fixed; the two issues are complementary.
Note that CURE-ID drug CURIEs are mostly pre-grounded to ChEBI but include at least one
UNII: id, and its disease CURIEs include ORPHA: and UMLS: alongside MONDO. Those
become stub nodes in the KGX graph rather than dangling endpoints, so the ingest is safe to
run before the normalization residue is cleared — the stub count will just rise.
Related
kb/research/cureid_associations.yamldoes not exist, soproducts/research_list.yamlcarries no CURE-ID associations at all. The ingest module and its tests are in place
(
src/medic/ingest/cureid/,tests/test_cureid.py,just ingest-cureid); it simply has notbeen run since the redesign rebuild.
This surfaced while building the new KGX export. CURE-ID is the only source that sets
max_research_phase: CASE_REPORT, and that value is what selects thebiolink:applied_to_treatpredicate — Biolink's term for "actually taken by one or morepatients with the intent of treating the condition", which is precisely what a CURE-ID case
report records. Verified on the current export (2026-08-13):
grep -c CASE_REPORT products/research_list.yamlreturns 0, andexports/medic_edges.jsonlcontains zerobiolink:applied_to_treatedges against 9,716biolink:treatsand 164biolink:studied_to_treat. MeDIC currently has no real-world-use axis in the graph at all,only study evidence.
The fix is to run the ingest, recompile, and re-export:
Expected effect on the KGX export: ~240 CURE-ID rows aggregate into drug–disease pairs that
emit
biolink:applied_to_treatedges attributed toinfores:cure-id. These are addedalongside the existing 164
studied_to_treatedges — they do not reclassify them. The 164stay on the weakest predicate until #42 is fixed; the two issues are complementary.
Note that CURE-ID drug CURIEs are mostly pre-grounded to ChEBI but include at least one
UNII:id, and its disease CURIEs includeORPHA:andUMLS:alongside MONDO. Thosebecome stub nodes in the KGX graph rather than dangling endpoints, so the ingest is safe to
run before the normalization residue is cleared — the stub count will just rise.
Related
compile path.
specs/2026-08-13-kgx-export-design.md§11 — where this gap was measured.