This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3
Work Group FHIR Infrastructure | Ballot Status: Informative |
The Conformance Module represents metadata about the datatypes, resources and API features of the FHIR specification and can be used to create derived specifications.
The core FHIR specification describes a set of resources, frameworks and APIs that are used in many different contexts in healthcare. However, there is wide variability between jurisdictions and across the healthcare ecosystem around practices, requirements, regulations, education and what actions are feasible and/or beneficial.
For this reason, the FHIR specification is a "platform specification" - it creates a common platform or foundation on which a variety of different solutions are implemented. As a consequence, this specification usually requires further adaptation to particular contexts of use.
Typically, these adaptations specify:
Note that because of the nature of the healthcare ecosystem, there may be multiple overlapping sets of adaptations - by healthcare domain, by country, by institution, and/or by vendor/implementation.
FHIR provides a set of resources that can be used to represent and share the adaptations listed above in a computable fashion. These resources are collectively called the conformance resources. Although these conformance resources can be used in isolation they are typically used in the context of an Implementation Guide or a Capability Statement:
The content of an Implementation Guide is described using the ImplementationGuide resource, while the capability statement is represented by the CapabilityStatement resource. These two resources make use of the complete set of conformance resources to fully capture the set of adaptations they represent. Note that the CapabilityStatement resource is one of the conformance resources, the first just describing the capabilities of a system, while the latter is the set of all conformance resources, including:
Conformance resources may be used independently, not just within the context of an ImplementationGuide resource or capability statement. See the section Common use cases for examples of such uses.
The conformance resources and their relationships are shown below:
Resources shown with a dotted box are described in other sections of the specification:
ValueSet
, ConceptMap
and StructureMap
are from the section on terminology,
TestScript
is part of the section on Implementer Support.
The conformance resources do not represent patient-related data, and as such are less susceptible to data breaching. Some caution is required however:
StructureDefinitions
may contain invariants formulated as structured
expressions that are evaluated by external engines (i.e. xpath), which -if unproperly
sandboxed- could provide low-level access to the systemConformance resources are commonly used as part of an Implementation Guide or CapabilityStatement resource. There are many ways to use the resources independently however, including:
StructureDefinitions
to
claim conformance to the rules laid out in those StructureDefinitionsCapabilityStatement
resources, effectively functioning
as a discovery endpoint for services within an organizationStructureDefinitions
and
OperationDefinitions
to generate code that represents the structures as
classes and operations as remotely callable functions to provide an easier programming
model to a software developer. NameSpace
resources, so vendors and
implementers can quickly look up the URLs or oids for a given terminology or identifier
system.A subset of the conformance resources has been tested and used in production tooling and as
such have reached a maturity level where changes become less likely. These are
CapabilityStatement
, StructureDefinition
,
ValueSet
, OperationDefinition
and SearchParameter
.
Other resources are still under development:
ImplementationGuide
: used in the HL7 production tooling, but has not received much use
outside of these tools yet.CompartmentDefinition
: new in STU3, and as such has not undergone much production
useDataElement
: the exact role of "Data Element Definitions" is still being studiedOver the past two years, these resources have been mainly used in the tools used to build the FHIR publication, early-adopter implementation guides and the FHIR Foundation conformance resource registry. In the 2016-2018 timeframe, we expect to see more widespread use of these resources in validation tooling, code-generators and more extensive model-based guide authoring tools.