HL7 FHIR® UK Core Design and Development Approach

Profile Design

The HL7 FHIR® standard

The HL7 FHIR® standard creates a common foundation on which a variety of different solutions are implemented. The resources contained in the specification usually require further adaptation to particular health or social care use cases; this adaptation is referred to as "profiling" and the resulting artefacts as "profiles".

General profiling approach

The checklist below was adhered to when developing a draft UK Core profile suitable for progression to Clinical and Technical Assurance.

  • Use any corresponding CareConnect profile as a starting point For each profile, where a CareConnect STU3 profile exists, refer to it as a starting point for the UK Core FHIR R4 profiling exercise,
  • Consider the resource changes between FHIR STU3 and R4 versions Analyse the changes in the FHIR standard between FHIR STU3 version and FHIR R4,for example the addition or deletion of any elements and the introduction of new or updated terminology assets in the R4 version.
  • Referencing to resources SHOULD be to the base resource rather than a UK Core Profile, unless agreed.

Approach to StructureDefinition elements

  • Identifiers - Where existing CareConnect STU3 profiles have applied slicing and profiling to identifiers, this will be recreated in the UK Core profiles, then evaluated during Clinical and Technical assurance.
  • Removal of elements - No elements will be removed from the FHIR assets for the UK Core profiles during initial profiling prior to Clinical and Technical Assurance.
  • Experimental element - The FHIR specification defines the 'StructureDefinition.experimental' element as the following, when set to ‘true’: 'This structure was authored for testing purposes (or education/evaluation/marketing), and is not intended for genuine usage.' (Source: HL7). Currently there is no requirement in the UK Core to set the experimental element as ‘true’ or ‘false’, so this field should remain in the default view (undefined).

Naming Convention

The UK Core profile name SHALL follow an agreed format. The name of a profile consists of a number of name segments, and will be in the form:-

[Base][FHIRAssetName][Specialism]


The segments are defined as follows:-

  • Base: (Mandatory) - The base for a profile this will always be UKCore.
  • FHIRAssetName: (Mandatory) - The name of the base FHIR Resource.
  • Specialism: (Required) - This is only used where there are multiple / derived UK Core profiles for a given base resource type.

Note: "Mandatory" means that a segment SHALL be present. "Required" means that a segment SHOULD be present, in this case in the event of there being multiple profiles for one base resource.

The physical file name SHALL be in the format [Base]-[FHIRAssetName]-[Specialism] and SHALL be created in the file XML format.


Metadata Usage

The list below contains the element differences between the UKCore and HL7.

Base Resource Definitions

View further information about FHIR base resource definitions.

Element name Base Cardinality UK Core Cardinality Type Definition, Constraints and Notes
id 0..1 1..1 id In the UK Core the format in the following, with the FHIRAssetName and Specialism in PascalCase:

UKCore-[FHIRAssetName][Specialism].

StructureDefinition Content

View further information about FHIR Resource StructureDefinition - Content.

Element name Base Cardinality UK Core Cardinality Type Definition, Constraints and Notes
url 0..1 1..1 uri In the UK Core the format is the following, with the FHIRAssetName and Specialism in PascalCase:

https://fhir.hl7.org.uk/StructureDefinition/UKCore-[FHIRAssetName][Specialism].
identifier 0..* 0..0 Identifier identifier SHALL NOT be used within the UKCore
version 0..1 1..1 string This will follow the Semantic Versioning standard [major.minor.patch].
Further details about internal versioning for UK Core assets are available.
name 0..1 1..1 string In the UK Core the format is PascalCase:

UKCore[FHIRAssetName][Specialism] .
title 0..1 1..1 string In the UK Core the format is Proper Case:

UK Core [FHIRAssetName] [Specialism].
status 1..1 1..1 code See NamingSystem.status for more information.
date 0..1 1..1 dateTime Only the date, without time, is populated in the UK Core.
publisher 0..1 1..1 string For all UK Core Profiles, where the base URL is https://fhir.hl7.org.uk, the name of the publisher will be HL7 UK.
contact 0..* 1..* ContactDetail See Publisher, Contact & Copyright for details of how this SHALL be populated for all UK Core Profiles, where the base URL is https://fhir.hl7.org.uk/.
description 0..1 1..1 markdown This SHALL be in the following format:

This profile defines the UK constraints and extensions on the International FHIR resource [FHIRAssetName]([link to HL7 Resource]).
purpose 0..1 1..1 markdown This provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This SHOULD contain the correct usage of the profile, for instance when it is similar to another profile examples of the expected use cases and examples which would be a misuse of the profile. The purpose is not to record the scope if these are subject to change, these SHALL be entered into the IG 'example use cases' section instead.
copyright 0..1 1..1 markdown All UK Core Profiles SHALL contain the the copyright as listed in Publisher, Contact & Copyright
fhirVersion 0..1 1..1 code The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor].

The UKCore mandates the use of this element.
baseDefinition 0..1 1..1 canonical(StructureDefinition) The baseDefinition SHALL be a complete URI referencing the relevant HL7 FHIR resource for UK Core base profiles, and the relevant UK Core base profile for any UK Core derived profiles.
snapshot 0..1 0..0 BackboneElement Snapshots SHALL NOT be used within the UKCore
differential
.element
1..* 1..* ElementDefinition When used for extensions, the element ID SHALL be [Profile].extension:[Extension name without the ExtensionUKCore prefix, in camelCase]. E.g, for ExtensionUKCoreBirthSex this will be Patient.extension:birthSex
differential
.element
.sliceName
0..1 0..1 string When used for extensions, the element ID SHALL be [Extension name without the ExtensionUKCore prefix, in camelCase]. E.g, for ExtensionUKCoreBirthSex this will be birthSex
differential
.element
.defaultValue[x]
0..1 0..0 * Defining default values creates many difficulties in implementation (e.g. when is a value missing?). For these reasons, default values SHALL NOT be used within the UKCore.




Profile Illustration

Snapshot View

identifierΣ0..*Identifier
activeS Σ ?!0..1boolean
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyS Σ0..*CodeableConceptBinding
actorS Σ I1..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location)
planningHorizonS Σ I0..1Period
comment0..1string

Differential View

identifierΣ0..*Identifier
activeS Σ ?!0..1boolean
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyS Σ0..*CodeableConceptBinding
actorS Σ I1..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location)
planningHorizonS Σ I0..1Period
comment0..1string

Hybrid View

identifierΣ0..*Identifier
activeS Σ ?!0..1boolean
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyS Σ0..*CodeableConceptBinding
actorS Σ I1..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location)
planningHorizonS Σ I0..1Period
comment0..1string

Table View

Schedule..
Schedule.active..
Schedule.specialty..
Schedule.actor..
Schedule.planningHorizon..


XML View

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="UKCore-Schedule" />
    <url value="https://fhir.hl7.org.uk/StructureDefinition/UKCore-Schedule" />
    <version value="1.3.0" />
    <name value="UKCoreSchedule" />
    <title value="UK Core Schedule" />
    <status value="active" />
    <date value="2023-12-12" />
    <publisher value="HL7 UK" />
    <contact>
        <name value="HL7 UK" />
        <telecom>
            <system value="email" />
            <value value="ukcore@hl7.org.uk" />
            <use value="work" />
            <rank value="1" />
        </telecom>
    </contact>
    <description value="This profile defines the UK constraints and extensions on the International FHIR resource [Schedule](https://hl7.org/fhir/R4/Schedule.html)." />
    <purpose value="Schedule resources provide a container for time-slots that can be booked using an appointment. It provides the window of time (period) that slots are defined for and what type of appointments can be booked.\n\nThe schedule does not provide any information about actual appointments. This separation greatly assists where access to the appointments would not be permitted for security or privacy reasons, while still being able to determine if an appointment might be available." />
    <copyright value="Copyright &#169; 2021+ HL7 UK Licensed under the Apache License, Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at  http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. HL7&#174; FHIR&#174; standard Copyright &#169; 2011+ HL7 The HL7&#174; FHIR&#174; standard is used under the FHIR license. You may obtain a copy of the FHIR license at  https://www.hl7.org/fhir/license.html." />
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="Schedule" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Schedule" />
    <derivation value="constraint" />
    <differential>
        <element id="Schedule.active">
            <path value="Schedule.active" />
            <short value="Whether this schedule is in active use." />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.specialty">
            <path value="Schedule.specialty" />
            <short value="Type of specialty needed." />
            <mustSupport value="true" />
            <binding>
                <strength value="extensible" />
                <valueSet value="https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode" />
            </binding>
        </element>
        <element id="Schedule.actor">
            <path value="Schedule.actor" />
            <short value="Resource(s) that availability information is being provided for." />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.planningHorizon">
            <path value="Schedule.planningHorizon" />
            <short value="Period of time covered by schedule." />
            <mustSupport value="true" />
        </element>
    </differential>
</StructureDefinition>

JSON View

{
    "resourceType": "StructureDefinition",
    "id": "UKCore-Schedule",
    "url": "https://fhir.hl7.org.uk/StructureDefinition/UKCore-Schedule",
    "version": "1.3.0",
    "name": "UKCoreSchedule",
    "title": "UK Core Schedule",
    "status": "active",
    "date": "2023-12-12",
    "publisher": "HL7 UK",
    "contact":  [
        {
            "name": "HL7 UK",
            "telecom":  [
                {
                    "system": "email",
                    "value": "ukcore@hl7.org.uk",
                    "use": "work",
                    "rank": 1
                }
            ]
        }
    ],
    "description": "This profile defines the UK constraints and extensions on the International FHIR resource [Schedule](https://hl7.org/fhir/R4/Schedule.html).",
    "purpose": "Schedule resources provide a container for time-slots that can be booked using an appointment. It provides the window of time (period) that slots are defined for and what type of appointments can be booked.\n\nThe schedule does not provide any information about actual appointments. This separation greatly assists where access to the appointments would not be permitted for security or privacy reasons, while still being able to determine if an appointment might be available.",
    "copyright": "Copyright © 2021+ HL7 UK Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at  http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. HL7® FHIR® standard Copyright © 2011+ HL7 The HL7® FHIR® standard is used under the FHIR license. You may obtain a copy of the FHIR license at  https://www.hl7.org/fhir/license.html.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "Schedule",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Schedule",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Schedule.active",
                "path": "Schedule.active",
                "short": "Whether this schedule is in active use.",
                "mustSupport": true
            },
            {
                "id": "Schedule.specialty",
                "path": "Schedule.specialty",
                "short": "Type of specialty needed.",
                "mustSupport": true,
                "binding": {
                    "strength": "extensible",
                    "valueSet": "https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode"
                }
            },
            {
                "id": "Schedule.actor",
                "path": "Schedule.actor",
                "short": "Resource(s) that availability information is being provided for.",
                "mustSupport": true
            },
            {
                "id": "Schedule.planningHorizon",
                "path": "Schedule.planningHorizon",
                "short": "Period of time covered by schedule.",
                "mustSupport": true
            }
        ]
    }
}

Derived Profile

  • A derived profile SHALL follow the same conventions as above.
  • The element baseDefinition SHALL point to the UK Core base profile it is derived from.
  • Any derived profile SHALL also be a valid base profile.

Derived Profile Illustration

Snapshot View

url1..1System.StringFixed Value
valueReferenceReference(Composition)
url1..1System.StringFixed Value
valueAnnotationAnnotation
url1..1System.StringFixed Value
valueCodeableConceptCodeableConcept
url1..1System.StringFixed Value
valueReferenceReference(Procedure | Observation | DiagnosticReport)
url1..1System.StringFixed Value
identifierΣ0..*Identifier
basedOnI0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)
statusS Σ ?!1..1codeBinding
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
codeS Σ1..1CodeableConceptBinding
subjectS Σ I1..1Reference(Patient)
encounterΣ I0..1Reference(Encounter)
effectiveDateTimedateTime
effectivePeriodPeriod
issuedS Σ0..1instant
deviceReferenceI0..1Extension(Reference(Device))
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
deviceReferenceI0..*Extension(Reference(Device))
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
specimenI0..*Reference(Specimen)
resultS I0..*Reference(Observation)
imagingStudyI0..*Reference(ImagingStudy)
comment0..1string
conclusion0..1string
conclusionCode0..*CodeableConceptBinding
presentedFormI0..*Attachment

Differential View

url1..1System.StringFixed Value
valueReferenceReference(Composition)
url1..1System.StringFixed Value
valueAnnotationAnnotation
url1..1System.StringFixed Value
valueCodeableConceptCodeableConcept
url1..1System.StringFixed Value
valueReferenceReference(Procedure | Observation | DiagnosticReport)
url1..1System.StringFixed Value
identifierΣ0..*Identifier
basedOnI0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)
statusS Σ ?!1..1codeBinding
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
codeS Σ1..1CodeableConceptBinding
subjectS Σ I1..1Reference(Patient)
encounterΣ I0..1Reference(Encounter)
effectiveDateTimedateTime
effectivePeriodPeriod
issuedS Σ0..1instant
deviceReferenceI0..1Extension(Reference(Device))
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
deviceReferenceI0..*Extension(Reference(Device))
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
specimenI0..*Reference(Specimen)
resultS I0..*Reference(Observation)
imagingStudyI0..*Reference(ImagingStudy)
comment0..1string
conclusion0..1string
conclusionCode0..*CodeableConceptBinding
presentedFormI0..*Attachment

Hybrid View

url1..1System.StringFixed Value
valueReferenceReference(Composition)
url1..1System.StringFixed Value
valueAnnotationAnnotation
url1..1System.StringFixed Value
valueCodeableConceptCodeableConcept
url1..1System.StringFixed Value
valueReferenceReference(Procedure | Observation | DiagnosticReport)
url1..1System.StringFixed Value
identifierΣ0..*Identifier
basedOnI0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)
statusS Σ ?!1..1codeBinding
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
codeS Σ1..1CodeableConceptBinding
subjectS Σ I1..1Reference(Patient)
encounterΣ I0..1Reference(Encounter)
effectiveDateTimedateTime
effectivePeriodPeriod
issuedS Σ0..1instant
deviceReferenceI0..1Extension(Reference(Device))
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
deviceReferenceI0..*Extension(Reference(Device))
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
specimenI0..*Reference(Specimen)
resultS I0..*Reference(Observation)
imagingStudyI0..*Reference(ImagingStudy)
comment0..1string
conclusion0..1string
conclusionCode0..*CodeableConceptBinding
presentedFormI0..*Attachment

Table View

DiagnosticReport..
DiagnosticReport.extensionExtension..1
DiagnosticReport.extension.value[x]..
DiagnosticReport.extensionExtension..
DiagnosticReport.extension.value[x]..
DiagnosticReport.extensionExtension..
DiagnosticReport.extension.extension2..
DiagnosticReport.status..
DiagnosticReport.category1..
DiagnosticReport.category1..1
DiagnosticReport.category.coding..
DiagnosticReport.category.coding.system..
DiagnosticReport.category.coding.code..
DiagnosticReport.code..
DiagnosticReport.subjectReference(Patient)1..
DiagnosticReport.issued..
DiagnosticReport.performer..
DiagnosticReport.performer.extensionExtension..1
DiagnosticReport.resultsInterpreter..
DiagnosticReport.resultsInterpreter.extensionExtension..
DiagnosticReport.result..
DiagnosticReport.conclusionCode..


XML View

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="UKCore-DiagnosticReport-Lab" />
    <url value="https://fhir.hl7.org.uk/StructureDefinition/UKCore-DiagnosticReport-Lab" />
    <version value="2.0.0" />
    <name value="UKCoreDiagnosticReportLab" />
    <title value="UK Core DiagnosticReport Lab" />
    <status value="active" />
    <date value="2023-12-12" />
    <publisher value="HL7 UK" />
    <contact>
        <name value="HL7 UK" />
        <telecom>
            <system value="email" />
            <value value="ukcore@hl7.org.uk" />
            <use value="work" />
            <rank value="1" />
        </telecom>
    </contact>
    <description value="This profile defines the UK constraints and extensions on the International FHIR resource [DiagnosticReport](https://hl7.org/fhir/R4/DiagnosticReport.html), to provide laboratory specific support for test results." />
    <purpose value="To provide implementers with additional support when implementing test result data and to provide a consistent structure to how the data is presented." />
    <copyright value="Copyright &#169; 2021+ HL7 UK Licensed under the Apache License, Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at  http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. HL7&#174; FHIR&#174; standard Copyright &#169; 2011+ HL7 The HL7&#174; FHIR&#174; standard is used under the FHIR license. You may obtain a copy of the FHIR license at  https://www.hl7.org/fhir/license.html." />
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="DiagnosticReport" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DiagnosticReport" />
    <derivation value="constraint" />
    <differential>
        <element id="DiagnosticReport">
            <path value="DiagnosticReport" />
            <constraint>
                <key value="ukcore-diag-lab-001" />
                <severity value="warning" />
                <human value="An issued time SHOULD be present if status = partial, preliminary, final, amended, corrected or appended" />
                <expression value="issued.exists() or (issued.empty() and (status in (&#39;partial&#39; | &#39;preliminary&#39; | &#39;final&#39; | &#39;amended&#39; | &#39;corrected&#39; | &#39;appended&#39;)).not())" />
            </constraint>
        </element>
        <element id="DiagnosticReport.extension:compositionReferenceR5">
            <path value="DiagnosticReport.extension" />
            <sliceName value="compositionReferenceR5" />
            <short value="A Composition reference for a DiagnosticReport. This is a R5 backport." />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="DiagnosticReport.extension:compositionReferenceR5.value[x]">
            <path value="DiagnosticReport.extension.value[x]" />
            <short value="Reference to a Composition resource." />
            <definition value="Reference to a Composition resource instance that provides structure for organizing the contents of the DiagnosticReport." />
        </element>
        <element id="DiagnosticReport.extension:noteR5">
            <path value="DiagnosticReport.extension" />
            <sliceName value="noteR5" />
            <short value="Comments about the diagnostic report. This is a R5 backport." />
            <type>
                <code value="Extension" />
                <profile value="http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.note" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="DiagnosticReport.extension:noteR5.value[x]">
            <path value="DiagnosticReport.extension.value[x]" />
            <definition value="May include general statements about the diagnostic report, or statements about significant, unexpected or unreliable results values contained within the diagnostic report, or information about its source when relevant to its interpretation." />
        </element>
        <element id="DiagnosticReport.extension:supportingInfoR5">
            <path value="DiagnosticReport.extension" />
            <sliceName value="supportingInfoR5" />
            <short value="Additional info supporting the diagnostic report. This is a R5 backport." />
            <type>
                <code value="Extension" />
                <profile value="http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.supportingInfo" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="DiagnosticReport.extension:supportingInfoR5.extension">
            <path value="DiagnosticReport.extension.extension" />
            <min value="2" />
        </element>
        <element id="DiagnosticReport.status">
            <path value="DiagnosticReport.status" />
            <short value="The status of the diagnostic report." />
            <mustSupport value="true" />
        </element>
        <element id="DiagnosticReport.category">
            <path value="DiagnosticReport.category" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
            <short value="A code that classifies the clinical discipline, department or diagnostic service that created the report." />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="DiagnosticReport.category:laboratory">
            <path value="DiagnosticReport.category" />
            <sliceName value="laboratory" />
            <short value="A mandatory slice that states this resource is categorized as laboratory related content." />
            <min value="1" />
            <max value="1" />
            <mustSupport value="true" />
        </element>
        <element id="DiagnosticReport.category:laboratory.coding.system">
            <path value="DiagnosticReport.category.coding.system" />
            <fixedUri value="http://terminology.hl7.org/CodeSystem/v2-0074" />
        </element>
        <element id="DiagnosticReport.category:laboratory.coding.code">
            <path value="DiagnosticReport.category.coding.code" />
            <fixedCode value="LAB" />
        </element>
        <element id="DiagnosticReport.code">
            <path value="DiagnosticReport.code" />
            <short value="A code or name that describes this diagnostic report." />
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="https://fhir.hl7.org.uk/ValueSet/UKCore-ReportCode" />
            </binding>
        </element>
        <element id="DiagnosticReport.subject">
            <path value="DiagnosticReport.subject" />
            <short value="The patient that is the subject of the report." />
            <min value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="DiagnosticReport.issued">
            <path value="DiagnosticReport.issued" />
            <short value="Clinically relevant time / time-period for report." />
            <mustSupport value="true" />
        </element>
        <element id="DiagnosticReport.performer.extension:deviceReference">
            <path value="DiagnosticReport.performer.extension" />
            <sliceName value="deviceReference" />
            <short value="A reference to a Device which interprets / performs the results of the DiagnosticReport." />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeviceReference" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="DiagnosticReport.resultsInterpreter.extension:deviceReference">
            <path value="DiagnosticReport.resultsInterpreter.extension" />
            <sliceName value="deviceReference" />
            <short value="A reference to a Device which interprets / performs the results of the DiagnosticReport." />
            <type>
                <code value="Extension" />
                <profile value="https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeviceReference" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="DiagnosticReport.result">
            <path value="DiagnosticReport.result" />
            <short value="Lab related Observations that are part of this diagnostic report." />
            <mustSupport value="true" />
        </element>
        <element id="DiagnosticReport.conclusionCode">
            <path value="DiagnosticReport.conclusionCode" />
            <binding>
                <strength value="preferred" />
            </binding>
        </element>
    </differential>
</StructureDefinition>

JSON View

{
    "resourceType": "StructureDefinition",
    "id": "UKCore-DiagnosticReport-Lab",
    "url": "https://fhir.hl7.org.uk/StructureDefinition/UKCore-DiagnosticReport-Lab",
    "version": "2.0.0",
    "name": "UKCoreDiagnosticReportLab",
    "title": "UK Core DiagnosticReport Lab",
    "status": "active",
    "date": "2023-12-12",
    "publisher": "HL7 UK",
    "contact":  [
        {
            "name": "HL7 UK",
            "telecom":  [
                {
                    "system": "email",
                    "value": "ukcore@hl7.org.uk",
                    "use": "work",
                    "rank": 1
                }
            ]
        }
    ],
    "description": "This profile defines the UK constraints and extensions on the International FHIR resource [DiagnosticReport](https://hl7.org/fhir/R4/DiagnosticReport.html), to provide laboratory specific support for test results.",
    "purpose": "To provide implementers with additional support when implementing test result data and to provide a consistent structure to how the data is presented.",
    "copyright": "Copyright © 2021+ HL7 UK Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at  http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. HL7® FHIR® standard Copyright © 2011+ HL7 The HL7® FHIR® standard is used under the FHIR license. You may obtain a copy of the FHIR license at  https://www.hl7.org/fhir/license.html.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "DiagnosticReport",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "DiagnosticReport",
                "path": "DiagnosticReport",
                "constraint":  [
                    {
                        "key": "ukcore-diag-lab-001",
                        "severity": "warning",
                        "human": "An issued time SHOULD be present if status = partial, preliminary, final, amended, corrected or appended",
                        "expression": "issued.exists() or (issued.empty() and (status in ('partial' | 'preliminary' | 'final' | 'amended' | 'corrected' | 'appended')).not())"
                    }
                ]
            },
            {
                "id": "DiagnosticReport.extension:compositionReferenceR5",
                "path": "DiagnosticReport.extension",
                "sliceName": "compositionReferenceR5",
                "short": "A Composition reference for a DiagnosticReport. This is a R5 backport.",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "DiagnosticReport.extension:compositionReferenceR5.value[x]",
                "path": "DiagnosticReport.extension.value[x]",
                "short": "Reference to a Composition resource.",
                "definition": "Reference to a Composition resource instance that provides structure for organizing the contents of the DiagnosticReport."
            },
            {
                "id": "DiagnosticReport.extension:noteR5",
                "path": "DiagnosticReport.extension",
                "sliceName": "noteR5",
                "short": "Comments about the diagnostic report. This is a R5 backport.",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.note"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "DiagnosticReport.extension:noteR5.value[x]",
                "path": "DiagnosticReport.extension.value[x]",
                "definition": "May include general statements about the diagnostic report, or statements about significant, unexpected or unreliable results values contained within the diagnostic report, or information about its source when relevant to its interpretation."
            },
            {
                "id": "DiagnosticReport.extension:supportingInfoR5",
                "path": "DiagnosticReport.extension",
                "sliceName": "supportingInfoR5",
                "short": "Additional info supporting the diagnostic report. This is a R5 backport.",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.supportingInfo"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "DiagnosticReport.extension:supportingInfoR5.extension",
                "path": "DiagnosticReport.extension.extension",
                "min": 2
            },
            {
                "id": "DiagnosticReport.status",
                "path": "DiagnosticReport.status",
                "short": "The status of the diagnostic report.",
                "mustSupport": true
            },
            {
                "id": "DiagnosticReport.category",
                "path": "DiagnosticReport.category",
                "short": "A code that classifies the clinical discipline, department or diagnostic service that created the report.",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "coding.code"
                        }
                    ],
                    "rules": "open"
                },
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "DiagnosticReport.category:laboratory",
                "path": "DiagnosticReport.category",
                "sliceName": "laboratory",
                "short": "A mandatory slice that states this resource is categorized as laboratory related content.",
                "min": 1,
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "DiagnosticReport.category:laboratory.coding.system",
                "path": "DiagnosticReport.category.coding.system",
                "fixedUri": "http://terminology.hl7.org/CodeSystem/v2-0074"
            },
            {
                "id": "DiagnosticReport.category:laboratory.coding.code",
                "path": "DiagnosticReport.category.coding.code",
                "fixedCode": "LAB"
            },
            {
                "id": "DiagnosticReport.code",
                "path": "DiagnosticReport.code",
                "short": "A code or name that describes this diagnostic report.",
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "https://fhir.hl7.org.uk/ValueSet/UKCore-ReportCode"
                }
            },
            {
                "id": "DiagnosticReport.subject",
                "path": "DiagnosticReport.subject",
                "short": "The patient that is the subject of the report.",
                "min": 1,
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Patient"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "DiagnosticReport.issued",
                "path": "DiagnosticReport.issued",
                "short": "Clinically relevant time / time-period for report.",
                "mustSupport": true
            },
            {
                "id": "DiagnosticReport.performer.extension:deviceReference",
                "path": "DiagnosticReport.performer.extension",
                "sliceName": "deviceReference",
                "short": "A reference to a Device which interprets / performs the results of the DiagnosticReport.",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeviceReference"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "DiagnosticReport.resultsInterpreter.extension:deviceReference",
                "path": "DiagnosticReport.resultsInterpreter.extension",
                "sliceName": "deviceReference",
                "short": "A reference to a Device which interprets / performs the results of the DiagnosticReport.",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeviceReference"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "DiagnosticReport.result",
                "path": "DiagnosticReport.result",
                "short": "Lab related Observations that are part of this diagnostic report.",
                "mustSupport": true
            },
            {
                "id": "DiagnosticReport.conclusionCode",
                "path": "DiagnosticReport.conclusionCode",
                "binding": {
                    "strength": "preferred"
                }
            }
        ]
    }
}

back to top