FHIR Terminology
Introduction to FHIR terminology framework, canonicals concept, and overview of core terminology resources
Healthcare data exchange relies heavily on coded values to ensure consistent meaning across different systems and organizations. FHIR terminology provides a comprehensive framework for managing these coded values, from simple administrative codes to complex clinical terminologies used in patient care.
The FHIR terminology module defines how to represent, validate, and exchange coded data through a set of interconnected resources and data types. This system enables healthcare applications to share meaningful data while maintaining semantic precision and supporting various terminology standards like SNOMED CT, LOINC, and ICD-10.

See also: FHIR Terminology Module Specification
Canonicals
In FHIR terminology, resources are identified using canonical URLs rather than physical resource IDs. A canonical URL serves as a globally unique, logical identifier that remains stable regardless of where the resource is stored or how it's accessed.
For example, the canonical URL http://hl7.org/fhir/ValueSet/observation-status
identifies the observation status value set globally, whether it's stored in your local FHIR server, an external terminology service, or referenced in a profile binding.
This approach provides several key benefits:
Version independence: Canonical URLs can include version information (
|4.0.1
) when specific versions are requiredLocation independence: The same logical resource can be stored in multiple servers
Stable references: Resource IDs may change during migrations, but canonical URLs remain constant
Here's how canonicals are used in practice:
Profile binding example:
{
"id": "Observation.status",
"binding": {
"strength": "required",
"description": "Codes providing the status of an observation.",
"valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1"
}
}
Terminology operation example:
GET /fhir/ValueSet/$expand?url=http://hl7.org/fhir/ValueSet/condition-clinical
Concepts
FHIR terminology is built around core concepts that work together to provide a complete solution for coded healthcare data.
Coded Values - FHIR provides three specialized data types for representing coded values: code
for simple fixed vocabularies, Coding
for precise system-code pairs, and CodeableConcept
for complex multi-system representations.
CodeSystem - Resources that define sets of codes and their meanings within specific terminology domains. CodeSystems establish what codes exist and what they mean, from simple administrative codes to complex clinical terminologies.
ValueSet - Collections of codes from one or more CodeSystems that are appropriate for specific contexts. ValueSets curate relevant subsets of codes for particular use cases or implementation requirements.
ConceptMap - Resources that define relationships and translations between codes from different CodeSystems, enabling structured mapping and transformation between different terminology systems.
See also:
Last updated
Was this helpful?