HL7 FHIR® UK Core Design and Development Approach

FHIR Assets

This section documents the approach used by the UK Core Development team to produce and maintain the UK Core Implementation Guides and the UK Core FHIR assets. It will be updated and matured in line with decisions taken during the Clinical and Technical Assurance process. This documentation is aimed at the technical reader and is included as reference material. The approach is based on the design principles.

Conformance

The UK Core conforms to the HL7 FHIR® specification (Release 4) and its assets are profiles of the corresponding base HL7 FHIR resources.

Further information about conformance in FHIR is available.


Design Principle

Key Principle:

FHIR assets must not be England specific and must be capable of representing the requirements of each UK nation identified during collaboration.

Other Principles

Reference DataType

If there is an active UKCore version of a Resource then this Profile SHALL be used as the reference. Draft versions MAY be used on the understanding that they have not been through clinical and technical assurance or balloting process and may change. If there is no UKCore version available then the reference SHALL be the HL7 Resource version.

FHIR Resource Spelling

FHIR Resources, along with ValueSets, CodeSystems and ConceptMaps use the American-English spelling, for example Organization. The UKCore approach is to use American-English for any Profile, Extension, ValueSet, CodeSystem, and ConceptMap names, and when directly referring to the HL7 FHIR names within the Implementation Guide, otherwise using the British-English for all other aspects.

Extensions

There is a UK Core requirement to develop extensions based on any equivalent CareConnect STU3 extensions. The exception to this is where an extension is no longer needed because either

  • the data can be carried in a new element for a relevant resource in FHIR R4
  • a corresponding common extension has been developed in FHIR R4 STU3 extensions will only be added if there is a use case to uplift.

Extension will be constrained (hard coded) into profiles to profiles after agreement during Clinical and Technical assurance.

The Implementation Guide for the UK Core will include an Extension Library page, which will list extensions and their corresponding UK Core profiles. There is no requirement to profile HL7 extensions locally. Where a HL7 extension is identified as in scope, a link to it will be added on the Extension Library page under HL7 Common Extensions as an aid to implementors. All HL7 extensions MAY be used even if not hardcoded into the UK Core.

Read more about FHIR Extensions and Extension Design.

Cardinalities

  • FHIR resource element cardinalities will only be amended, if clinical justifications are agreed during Clinical and Technical assurance.
  • No elements will be removed unless deemed clinically unsafe following consultation and agreement during Clinical and Technical assurance.

Read more about FHIR resource cardinalities.

Slicing

  • SHALL only be used where it enforces structure in a profile, for example
    • for a ValueSet binding
    • for the representation of an identifier in a list, such as a patient's NHS number
  • Slicing SHALL be Open e.g. one or more additional slices can be added.

Read more about Slicing in FHIR.

Must Support

  • Will only be used when there is a requirement arising from a use case identified during Clinical and Technical assurance.

Read more about "Must Support" in FHIR.

ValueSets

Binding Strengths

The UKCore ValueSet binding strength SHOULD be decided as part of the Clinical and Technical Assurance, but the general philosophy is as the following:

  • required - Used only when defined as 'required' by the FHIR standard, or when decided as part of the Clinical and Technical Assurance.
  • extensible - All ValueSets SHOULD be set to 'extensible', where not defined as 'required' by the FHIR standard, or 'preferred' by the UKCore standard.
  • preferred - Used when the ValueSet contains SNOMED CT or dm+d concepts due to their inherent complexities, or when decided as part of the Clinical and Technical Assurance.
  • example - Decided as part of the Clinical and Technical Assurance.

Read more about ValueSets and ValueSet bindings in FHIR.

Validation

All FHIR assets SHALL be validated before being publicly available. See Validation of Implementations for more details.

Constraints

Constraints allow for validation against more complex calculations, giving either a warning or error if the criteria has not been met. All constraints SHALL have:

  • Key - Unique, in the form of ukcore-[asset abbreviation]-[3 digit number]
  • Severity - Either error if the expression SHALL be met and rejected as a invalid resource if not, or warning if the expression SHOULD be met, but not rejected if not.
  • Human description - A human readable description of how the expression is to be met.
  • Expression - A FHIRPath rule that evaluates to true if run on the element. If validation returns false then it will produce an error or warning condition.

Where the severity is a warning, the Human Description will say SHOULD, where the severity is error it will say SHALL.

Warning constraints that have been inherited within a derived profile may be inhibited using the suppress element only if it is deemed that the warning is incorrect for this profile.

Note: Constraints contained within derived profiles can be validated by using meta.profile within the instance, see Instance Conformace Identification for more details. Constraints can be tested beforehand using the Simplifer FHIRPath Playground, although caution is to be used as this only validates the FHIRPath on the StructureDefinition element.

More information can be found within the Conformance Rules and the Element Definition.


back to top