FHIR Profiles and Extensions make it possible to customize the FHIR standard for specific organizations, workflows, or regional requirements. While the base FHIR specification defines how resources like Patient, Observation, and Encounter are structured, Profiles and Extensions allow implementers to adapt those resources without breaking interoperability.
This flexibility ensures that FHIR can serve a wide range of healthcare systems while still maintaining a consistent foundation for data exchange.
Healthcare data often varies between regions, organizations, and use cases. For example:
The base FHIR specification cannot account for every possible variation, so Profiles and Extensions allow implementers to customize resources safely and predictably.
A Profile is a set of rules or constraints that modify how a FHIR resource is used in a specific context. Profiles can:
Each Profile references a base resource and applies additional constraints to make it fit the local or organizational context.
Examples:
Profiles ensure that systems exchange consistent, validated data even when specialized requirements exist.
An Extension adds new data elements to a FHIR resource that are not part of the base specification. This allows organizations to include unique information without altering the core resource definition.
Common uses for Extensions include:
Each Extension includes a globally unique URL that defines its meaning and structure. For example, the FHIR specification defines a standard extension for patient birth sex:
http://hl7.org/fhir/StructureDefinition/patient-birthSex
Systems that encounter an unfamiliar Extension can safely ignore it or process it if they understand its definition, preserving compatibility across implementations.
Aspect | FHIR Profile | FHIR Extension |
---|---|---|
Purpose | Constrains or customizes an existing resource | Adds new elements to a resource |
Effect on Base Resource | Tightens existing rules | Expands the resource schema |
Defined By | Implementation guides or organizational standards | URLs that identify new fields |
Compatibility | Fully compatible with base FHIR | Fully compatible if Extension definitions are accessible |
Example | Patient resource requiring a specific identifier format | Adding an ethnicity field to the Patient resource |
Together, Profiles and Extensions make FHIR adaptable while keeping it standardized and interoperable.
Profiles and Extensions ensure that healthcare data remains meaningful across systems, even when customized. They allow organizations to:
Many countries and health systems publish their own FHIR implementation guides, which define the Profiles and Extensions required for compliance. For example:
These guides ensure that everyone implementing FHIR within a region follows the same conventions.
Validation checks whether a FHIR resource instance conforms to the structure and constraints defined by its Profile or Extensions. It ensures that systems exchanging FHIR data adhere to agreed-upon standards.
Validation can be performed using tools such as:
In Iguana, validation is supported through the FHIR Profiling Tool, which allows users to:
Combined with the FHIR Resource Creator, Iguana enables developers to generate FHIR resources that automatically conform to their selected Profiles, reducing manual setup and risk of non-compliance.
Learn more:
Profiles and Extensions are used in nearly every production FHIR deployment. Examples include:
By combining FHIR's standard structure with custom Profiles and Extensions, organizations can achieve both flexibility and standardization.
Now that you understand how Profiles and Extensions help tailor FHIR to specific needs, the next step is to see how FHIR data is exchanged and managed in real workflows.
Continue reading: FHIR API and How It Works →