UK Core Implementation Guide STU3 Sequence - Sprint 6 Review

code

Identifies the causative agent for the allergy or intolerance.

When recording an allergy to a medication substance, the provider system SHOULD use a dm+d concept class or alternatively, when the allergy is not recorded against a medication substance, the relevant set of SNOMED CT. These can be found within the ValueSet UKCore-AllergyCode.

Using transfer degraded drug / non-drug allergy codes


Degraded drug allergy codes can be used in three scenarios, with examples.

1. If only a text representation of the allergy is known.

Table View

AllergyIntolerance.id[0]UKCore-AllergyIntolerance-Sn-NonDrugAllergy-Example
AllergyIntolerance.clinicalStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical
AllergyIntolerance.clinicalStatus[0].coding[0].code[0]active
AllergyIntolerance.clinicalStatus[0].coding[0].display[0]Active
AllergyIntolerance.verificationStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-verification
AllergyIntolerance.verificationStatus[0].coding[0].code[0]confirmed
AllergyIntolerance.verificationStatus[0].coding[0].display[0]Confirmed
AllergyIntolerance.code[0].coding[0].system[0]http://snomed.info/sct
AllergyIntolerance.code[0].coding[0].code[0]196471000000108
AllergyIntolerance.code[0].coding[0].display[0]Transfer-degraded non-drug allergy (record artifact)
AllergyIntolerance.code[0].text[0]Latex
AllergyIntolerance.patient[0].reference[0]Patient/UKCore-Patient-RichardSmith-Example

Tree View

AllergyIntolerance

XML View

<AllergyIntolerance xmlns="http://hl7.org/fhir">
    <id value="UKCore-AllergyIntolerance-Sn-NonDrugAllergy-Example" />
    <clinicalStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical" />
            <code value="active" />
            <display value="Active" />
        </coding>
    </clinicalStatus>
    <verificationStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-verification" />
            <code value="confirmed" />
            <display value="Confirmed" />
        </coding>
    </verificationStatus>
    <!--  **************Snippet start**************  -->
    <code>
        <coding>
            <system value="http://snomed.info/sct" />
            <code value="196471000000108" />
            <display value="Transfer-degraded non-drug allergy (record artifact)" />
        </coding>
        <text value="Latex" />
    </code>
    <!--  **************Snippet end**************  -->
    <patient>
        <reference value="Patient/UKCore-Patient-RichardSmith-Example" />
    </patient>
</AllergyIntolerance>

JSON View

{
    "resourceType": "AllergyIntolerance",
    "id": "UKCore-AllergyIntolerance-Sn-NonDrugAllergy-Example",
    "clinicalStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                "code": "active",
                "display": "Active"
            }
        ]
    },
    "verificationStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                "code": "confirmed",
                "display": "Confirmed"
            }
        ]
    },
    "code": {
        "coding":  [
            {
                "system": "http://snomed.info/sct",
                "code": "196471000000108",
                "display": "Transfer-degraded non-drug allergy (record artifact)"
            }
        ],
        "text": "Latex"
    },
    "patient": {
        "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    }
}

2. If a text representation of the allergy is known but any associated coding is not recognised by the system.

Table View

AllergyIntolerance.id[0]UKCore-AllergyIntolerance-Sn-DrugAllergy-Example
AllergyIntolerance.clinicalStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical
AllergyIntolerance.clinicalStatus[0].coding[0].code[0]active
AllergyIntolerance.clinicalStatus[0].coding[0].display[0]Active
AllergyIntolerance.verificationStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-verification
AllergyIntolerance.verificationStatus[0].coding[0].code[0]confirmed
AllergyIntolerance.verificationStatus[0].coding[0].display[0]Confirmed
AllergyIntolerance.code[0].coding[0].system[0]http://snomed.info/sct
AllergyIntolerance.code[0].coding[0].code[0]196461000000101
AllergyIntolerance.code[0].coding[0].display[0]Transfer-degraded drug allergy (record artifact)
AllergyIntolerance.code[0].text[0]9339101000001105 | Septrin
AllergyIntolerance.patient[0].reference[0]Patient/UKCore-Patient-RichardSmith-Example

Tree View

AllergyIntolerance

XML View

<AllergyIntolerance xmlns="http://hl7.org/fhir">
    <id value="UKCore-AllergyIntolerance-Sn-DrugAllergy-Example" />
    <clinicalStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical" />
            <code value="active" />
            <display value="Active" />
        </coding>
    </clinicalStatus>
    <verificationStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-verification" />
            <code value="confirmed" />
            <display value="Confirmed" />
        </coding>
    </verificationStatus>
    <!--  **************Snippet start**************  -->
    <code>
        <coding>
            <system value="http://snomed.info/sct" />
            <code value="196461000000101" />
            <display value="Transfer-degraded drug allergy (record artifact)" />
        </coding>
        <text value="9339101000001105 | Septrin" />
    </code>
    <!--  **************Snippet end**************  -->
    <patient>
        <reference value="Patient/UKCore-Patient-RichardSmith-Example" />
    </patient>
</AllergyIntolerance>

JSON View

{
    "resourceType": "AllergyIntolerance",
    "id": "UKCore-AllergyIntolerance-Sn-DrugAllergy-Example",
    "clinicalStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                "code": "active",
                "display": "Active"
            }
        ]
    },
    "verificationStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                "code": "confirmed",
                "display": "Confirmed"
            }
        ]
    },
    "code": {
        "coding":  [
            {
                "system": "http://snomed.info/sct",
                "code": "196461000000101",
                "display": "Transfer-degraded drug allergy (record artifact)"
            }
        ],
        "text": "9339101000001105 | Septrin"
    },
    "patient": {
        "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    }
}

Note: “Septrin” is a long discontinued brand name of an antibiotic.

3. If a pre-coordinated allergy code is known which this is not part of the permitted value set for causative agent defined above.

Table View

AllergyIntolerance.id[0]UKCore-AllergyIntolerance-Sn-DrugAllergyToEggProtein-Example
AllergyIntolerance.clinicalStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical
AllergyIntolerance.clinicalStatus[0].coding[0].code[0]active
AllergyIntolerance.clinicalStatus[0].coding[0].display[0]Active
AllergyIntolerance.verificationStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-verification
AllergyIntolerance.verificationStatus[0].coding[0].code[0]confirmed
AllergyIntolerance.verificationStatus[0].coding[0].display[0]Confirmed
AllergyIntolerance.code[0].coding[0].system[0]http://snomed.info/sct
AllergyIntolerance.code[0].coding[0].code[0]196461000000101
AllergyIntolerance.code[0].coding[0].display[0]Transfer-degraded drug allergy (record artifact)
AllergyIntolerance.code[0].text[0]213020009 | Allergy to egg protein
AllergyIntolerance.patient[0].reference[0]Patient/UKCore-Patient-RichardSmith-Example

Tree View

AllergyIntolerance

XML View

<AllergyIntolerance xmlns="http://hl7.org/fhir">
    <id value="UKCore-AllergyIntolerance-Sn-DrugAllergyToEggProtein-Example" />
    <clinicalStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical" />
            <code value="active" />
            <display value="Active" />
        </coding>
    </clinicalStatus>
    <verificationStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-verification" />
            <code value="confirmed" />
            <display value="Confirmed" />
        </coding>
    </verificationStatus>
    <!--  **************Snippet start**************  -->
    <code>
        <coding>
            <system value="http://snomed.info/sct" />
            <code value="196461000000101" />
            <display value="Transfer-degraded drug allergy (record artifact)" />
        </coding>
        <text value="213020009 | Allergy to egg protein" />
    </code>
    <!--  **************Snippet end**************  -->
    <patient>
        <reference value="Patient/UKCore-Patient-RichardSmith-Example" />
    </patient>
</AllergyIntolerance>

JSON View

{
    "resourceType": "AllergyIntolerance",
    "id": "UKCore-AllergyIntolerance-Sn-DrugAllergyToEggProtein-Example",
    "clinicalStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                "code": "active",
                "display": "Active"
            }
        ]
    },
    "verificationStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                "code": "confirmed",
                "display": "Confirmed"
            }
        ]
    },
    "code": {
        "coding":  [
            {
                "system": "http://snomed.info/sct",
                "code": "196461000000101",
                "display": "Transfer-degraded drug allergy (record artifact)"
            }
        ],
        "text": "213020009 | Allergy to egg protein"
    },
    "patient": {
        "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    }
}

Handling of 'No known allergies'

There can be an explicit assertion of ‘No Known Allergies’ using the SNOMED CT 'No known allergy' hierarchy 716186003 | No known allergy. The parent concept, or any child concept MAY be used.

Example of AllergyIntolerance.code usage for 'No known drug allergy':

Table View

AllergyIntolerance.id[0]UKCore-AllergyIntolerance-Sn-NegHandlNoKnownAllergies-Example
AllergyIntolerance.clinicalStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical
AllergyIntolerance.clinicalStatus[0].coding[0].code[0]active
AllergyIntolerance.clinicalStatus[0].coding[0].display[0]Active
AllergyIntolerance.verificationStatus[0].coding[0].system[0]http://terminology.hl7.org/CodeSystem/allergyintolerance-verification
AllergyIntolerance.verificationStatus[0].coding[0].code[0]confirmed
AllergyIntolerance.verificationStatus[0].coding[0].display[0]Confirmed
AllergyIntolerance.code[0].coding[0].system[0]http://snomed.info/sct
AllergyIntolerance.code[0].coding[0].code[0]409137002
AllergyIntolerance.code[0].coding[0].display[0]No known drug allergy (situation)
AllergyIntolerance.patient[0].reference[0]Patient/UKCore-Patient-RichardSmith-Example

Tree View

AllergyIntolerance

XML View

<AllergyIntolerance xmlns="http://hl7.org/fhir">
    <id value="UKCore-AllergyIntolerance-Sn-NegHandlNoKnownAllergies-Example" />
    <clinicalStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical" />
            <code value="active" />
            <display value="Active" />
        </coding>
    </clinicalStatus>
    <verificationStatus>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/allergyintolerance-verification" />
            <code value="confirmed" />
            <display value="Confirmed" />
        </coding>
    </verificationStatus>
    <!--  **************Snippet start**************  -->
    <code>
        <coding>
            <system value="http://snomed.info/sct" />
            <code value="409137002" />
            <display value="No known drug allergy (situation)" />
        </coding>
    </code>
    <!--  **************Snippet end**************  -->
    <patient>
        <reference value="Patient/UKCore-Patient-RichardSmith-Example" />
    </patient>
</AllergyIntolerance>

JSON View

{
    "resourceType": "AllergyIntolerance",
    "id": "UKCore-AllergyIntolerance-Sn-NegHandlNoKnownAllergies-Example",
    "clinicalStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                "code": "active",
                "display": "Active"
            }
        ]
    },
    "verificationStatus": {
        "coding":  [
            {
                "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                "code": "confirmed",
                "display": "Confirmed"
            }
        ]
    },
    "code": {
        "coding":  [
            {
                "system": "http://snomed.info/sct",
                "code": "409137002",
                "display": "No known drug allergy (situation)"
            }
        ]
    },
    "patient": {
        "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    }
}

If other AllergyIntolerance resources exist in the patient record with a AllergyIntolerance.clinicalStatus of active then the system SHALL ignore the 'No Known Allergies' resource instance. The existence of recorded and active allergies takes precedence over instances of 'No Known Allergies' records.


Use of plain text only

The representation of the causative agent as text is supported within the FHIR standard but this SHOULD only be used as a last resort if a suitable coded term does not exist within the SNOMED CT terminology or if using a degraded allergy code is not appropriate.

Use of nullFlavor

The UK Core recommendation is that the nullFlavor is not used for the causative agent, even though it is permitted within the FHIR standard.


back to top