Why standardized vocabularies matter
A diagnosis of "Duchenne muscular dystrophy" in your registry might be entered as "DMD", "Duchenne MD", "Duchenne muscular dystrophy", or "Duchenne's". Without standardization, these are four different values, impossible to aggregate or query reliably.
Standardized vocabularies solve this by assigning unique, stable codes to every concept. When your registry uses the same codes as EHRs, biobanks, and other registries, data becomes interoperable by default.
The essential vocabularies
ICD-10-CM (International Classification of Diseases, 10th Edition, Clinical Modification)
Use for: Diagnoses, symptoms, procedures. The billing standard in US healthcare.
Why it is important: EHRs store diagnoses as ICD-10 codes. Using ICD-10 in your registry allows direct linkage to clinical records.
Limitation: ICD-10 is designed for billing, not research. Many rare diseases are collapsed into a single non-specific code. Supplement with disease specific codes (ORDO, HPO).
Resource: ICD-10-CM Browser
SNOMED CT (Systematized Nomenclature of Medicine, Clinical Terms)
Use for: Clinical findings, procedures, body structures, organisms, substances. The most comprehensive clinical terminology.
Why it is important: Used natively in EHR systems (Epic, Cerner) and required for FHIR interoperability. Provides far more granular clinical coding than ICD-10.
Resource: SNOMED CT Browser
LOINC (Logical Observation Identifiers Names and Codes)
Use for: Laboratory tests, clinical measurements, patient-reported outcomes, survey questions. Every lab test has a LOINC code.
Why it is important: Required for FHIR Observation resources. Enables lab result comparison across institutions.
Example: Serum creatinine = LOINC 2160-0. Using this code means any system that receives your data knows exactly what was measured, in what units, by what method.
Resource: LOINC Search
RxNorm
Use for: Medications. Provides normalized names and codes for drugs.
Why it is important: Participants report medications in countless ways ("methotrexate", "MTX", "Rheumatrex", "25mg methotrexate weekly"). RxNorm maps all of these to a single concept.
Resource: RxNorm Browser
Orphanet Rare Disease Ontology (ORDO)
Use for: Rare disease classification. Provides codes for over 10,000 rare diseases and their subtypes.
Why it is important: ICD-10 doesn't cover most rare diseases specifically. ORDO codes are the standard for rare disease registries, used by EMA and European rare disease networks.
Resource: Orphanet
MedDRA (Medical Dictionary for Regulatory Activities)
Use for: Adverse events, symptoms, medical history, primarily in a regulatory/clinical trial context.
Why it is important: Required for adverse event reporting to FDA and EMA. If your registry is used to support regulatory submissions, MedDRA is essential.
Resource: MedDRA MSSO
Practical implementation
You don't need to implement every vocabulary at once. Prioritize based on your registry's purpose:
| Registry purpose | Must-have vocabularies |
|---|---|
| Natural history | ICD-10, SNOMED CT, LOINC, ORDO, HPO (Module 7) |
| EHR-linked | SNOMED CT, LOINC, RxNorm, ICD-10 |
| Trial recruitment | ICD-10, SNOMED CT, MedDRA |
| Genomic | HPO, OMIM, HGNC (see Module 7) |
Key resources
- NLM Unified Medical Language System (UMLS), Maps between vocabularies
- OBO Foundry, Open biological ontologies
- NCBO BioPortal, Browse and search biomedical ontologies
- HL7 Terminology, FHIR-aligned value sets