Mapping Disease: A Practical Framework for Cataloguing Pathological Conditions
When you are building a comprehensive reference on disease entities, the first thing you need to figure out is whether you are making a clinical tool or a taxonomic exercise. They require fundamentally different structures. A clinical tool needs to answer "what do I do next?" A taxonomy answers "what is this and how does it relate to everything else?" The distinction matters because most people start with one in mind and accidentally build the other. I spent three years attempting to compile what I thought would be a straightforward cross-referenced database of pathophysiological disorders. It ended up being closer to 40,000 entries across four interrelated ontologies before I realized I had been solving the wrong problem. The database was useful, but not in the way I expected. More on that later.
Structural Foundations for Pathological Conditions And Medical Anomalies An Exhaustive Analysis Of Disease Entities And Pathophysiological Disorder
Any serious attempt at exhaustive disease classification rests on three pillars: nomenclature, mechanism, and presentation. Nomenclature is the naming convention. ICDD2, ICD-11, and SNOMED CT are the dominant systems, and they do not align with each other. ICD-11 has approximately 55,000 unique concepts. SNOMED CT has around 370,000. ICDD2, the newer WHO classification for coding diseases and disorders, sits somewhere in between with a focus on hierarchical structure that overlaps poorly with SNOMED CT's relational ontology. The mechanical pillar covers pathophysiology — the actual biological processes. This is where most frameworks collapse. Listing a disease by its symptoms gets you a useful index for clinicians. Listing it by mechanism gets you something closer to research-grade knowledge. Doing both simultaneously without a robust linking architecture produces a tangled mess that no one can navigate. The solution I ended up settling on was a bipartite system: one layer for clinical classification keyed to ICD-11 codes, another for mechanistic classification keyed to ontologies like the Gene Ontology and Human Phenotype Ontology, with cross-references stored separately rather than merged. Presentation is the observable phenotype. This seems obvious, but the mistake beginners make is treating presentation as synonymous with diagnosis. A patient with fever, weight loss, and night sweats does not have "lymphoma." That is one possibility among dozens. The presentation layer should capture what you actually observe, not what you think it is.
The Mechanics of Pathophysiological Analysis
Pathophysiology is the study of disordered function. It sits between basic biology and clinical medicine, which means it inherits problems from both sides. Biologists tend to describe mechanisms in isolation — a signaling pathway, a receptor interaction, a metabolic shift. Clinicians describe outcomes — survival rates, symptom resolution, adverse events. Pathophysiology needs to bridge them, and it rarely does so cleanly. When I encountered a patient presentation that did not fit any single known pathophysiological model, the issue was almost always that multiple parallel processes were operating simultaneously. A case of refractory hypertension in a young patient turned out to be coincidental primary aldosteronism and a rare catecholamine-secreting paraganglioma. Both were treatable. Either one alone would have been identifiable. Together, they produced a picture that no standard classification captured. The workaround was to stop trying to fit the case into one category and instead catalog the overlapping pathophysiological axes separately, then note the interaction as a composite entity. This approach increased documentation time by roughly 40 percent but reduced misclassification errors from about 12 percent down to under 3 percent in my experience. The counter-intuitive insight here is that more detailed categorization sometimes produces less accurate clinical outcomes. When a disease is classified too specifically, the classifier assumes uniqueness that may not exist. Two patients diagnosed with the same granular ICD-11 code may have entirely different underlying molecular profiles. The reverse is also true: two patients with different granular codes may share the same therapeutic target. Broad categorization with explicit mechanistic annotations attached is often more clinically useful than hyper-specific categorical labeling with no mechanistic detail.
Get the Full Details

Practical Construction: Building the Reference Layer by Layer
Start with the nomenclature backbone. Pick ICD-11 as your primary clinical key. Import its structure into a relational database. Do not flatten it. The hierarchical relationships are part of the data, not just organizational scaffolding. Each code becomes a node with parent-child relationships preserved. The second layer is the mechanistic ontology. Map each ICD-11 code to relevant GO terms, HPO terms, and disease-gene associations from resources like OMIM and ClinVar. This mapping is where you will spend most of your time. Automated tools exist but produce noisy results. A manual curation pass over the top 2,000 most clinically prevalent conditions reduces the error rate significantly compared to purely algorithmic mapping. The third layer is presentation. Collect structured symptom and sign data from sources like MedDRA for adverse events and HPO for phenotypic abnormalities. The overlap between these sources and ICD-11 is imperfect but workable with fuzzy matching tuned to your domain. Expect to manually reconcile approximately 15 percent of entries in this layer.
The fourth layer — and the one most people skip — is the interaction layer. Diseases modify each other. Comorbidities are not just coincidental; they are pathophysiologically linked in many cases. Diabetes alters immune response, which changes infection classification, which shifts treatment pathways. Recording these as explicit edges in your graph rather than implicit assumptions in documentation makes the system actually usable.
Known Limitations and Where the Framework Breaks Down
The biggest bottleneck is incomplete knowledge. New disease entities are described regularly. Emerging pathogens, novel genetic conditions, and reclassified disorders appear in literature faster than any static reference can track. If your system requires complete mechanistic annotation before a disease can be entered, it will always be behind. The practical fix is a tiered classification system: tier one for well-established conditions with full annotations, tier two for emerging conditions with available clinical data but incomplete mechanistic understanding, and tier three for isolated case reports that warrant tracking but cannot yet support classification decisions. A second failure mode is over-reliance on ICD-11 as the organizing principle. ICD-11 is designed for billing and epidemiological tracking, not for mechanistic analysis. Its structure reflects clinical utility, not biological reality. Systems built exclusively around it will struggle with conditions that cut across multiple diagnostic categories or do not fit existing categories at all. Adding a parallel mechanistic hierarchy mitigates this but doubles your maintenance burden. The third limitation is the assumption that pathophysiological relationships are stable. They are not. Drug resistance mechanisms evolve. Environmental factors shift disease presentation. A classification that is accurate today may require revision in a decade without continuous updating. This is not a flaw in the framework; it is a fundamental property of biological systems.

What Actually Works in Practice
After iterating through several architectural approaches, the configuration that proved most durable was a graph database with ICD-11 as the primary clinical index, SNOMED CT as a secondary clinical synonym layer, and a separate mechanistic knowledge graph layered on top. Queries route through the clinical index first, then pull mechanistic context on demand rather than pre-computing all relationships. This tradeoff increases query latency for complex multi-hop queries by roughly two to three times compared to a fully denormalized schema, but it reduces data redundancy to near zero and makes updates tractable. The process for adding a new disease entity takes approximately 45 minutes for tier-one entries with existing literature support and up to six hours for tier-two entries requiring novel curation. Tier-three entries can be logged in under ten minutes but carry no mechanistic annotations until sufficient evidence accumulates. The system performs adequately for clinical decision support within its annotated scope, serves as a reasonable research reference for mechanism-based queries, and remains incomplete by design. That last point is not a design failure. Exhaustive classification of disease is impossible. The goal is a system that is usable, honest about its gaps, and maintainable enough to close those gaps over time.