This page is part of the FHIR Specification v4.3.0-snapshot1: R4B Snapshot to support the Jan 2022 Connectathon. About the R4B version of FHIR. The current officially released version is 4.3.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Patient Care Work Group | Maturity Level: 3 | Trial Use | Security Category: Patient | Compartments: Patient, Practitioner, RelatedPerson |
Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance.
A record of a clinical assessment of an allergy or intolerance; a propensity, or a potential risk to an individual, to have an adverse reaction on future exposure to the specified substance, or class of substance.
Where a propensity is identified, to record information or evidence about a reaction event that is characterized by any harmful or undesirable physiological response that is specific to the individual and triggered by exposure of an individual to the identified substance or class of substance.
Substances include, but are not limited to: a therapeutic substance administered correctly at an appropriate dosage for the individual; food; material derived from plants or animals; or venom from insect stings.
Note for Reviewers
Presently open issues for this resource:
This resource is used to provide a single place within the health record to document a range of clinical statements about adverse reactions to substances/products, including:
Use to record information about the positive presence of the risk of an adverse reaction:
Use to record information about adverse reactions to a broad range of substances, including: biological & blood products; incipients and excipients in medicinal preparations; foods; metal salts; and organic chemical compounds.
Adverse reactions may be:
In clinical practice distinguishing between allergy and intolerance is difficult and might not be practical. Often the term "allergy" is used rather generically and may overlap with "intolerance", and the boundaries between these concepts might not be well-defined or understood. As noted above, the term "intolerance" should generally be applied to a propensity for adverse reactions which is either determined (to the extent that is possible) or perceived to not be allergic or "allergy-like". If it is not possible to determine whether a particular propensity condition is an allergy or an intolerance, then the type element should be omitted from the resource. Identification of the type of reaction is not a proxy for seriousness or risk of harm to the patient, which is better expressed in the documentation of the clinical manifestation and the assessment of criticality.
The sensitivity in the case of either an allergy or intolerance is unique to the individual, and is distinguished from those reactions that are a property of the circumstance, such as toxicity of a food or drug, overdose, drug-drug, drug-food, or drug-disease interaction (which are reactions that would be expected to occur for any individual given the same circumstances).
The risk of an adverse reaction event or manifestation should not be recorded without identifying a proposed causative substance (including pharmaceutical products) or class of substance. If there is uncertainty that a specific substance is the cause, this uncertainty can be recorded using the 'verificationStatus' data element. If there are multiple possible substances that may have caused a reaction/manifestation, each substance should be recorded using a separate instance of this resource with the 'verificationStatus' set to an initial state of 'unconfirmed' so that adverse reaction checking can be supported in clinical systems. If a substance, agent or class is later proven not to be the cause for a given reaction then the 'verificationStatus' can be modified to 'refuted'.
This resource has been designed to allow recording of information about a specific substance (e.g., amoxicillin, oysters, or bee sting venom) or pharmaceutical product or, alternatively, a class of substance (e.g., penicillins). If a class of substance is recorded, then identification of the exact substance can be recorded on a per exposure basis.
The scope of this FHIR resource has deliberately focused on identifying a pragmatic data set that is used in most clinical systems or will be suitable for most common clinical scenarios; extensions can be used to add additional detail if required. Examples of clinical situations where the extension may be required include: a detailed allergist/immunologist assessment, for reporting to regulatory bodies or use in a clinical trial.
The act of recording any adverse reaction in a health record involves the clinical assessment that a potential hazard exists for an individual if they are exposed to the same substance/product/class in the future - that is, a relative contraindication - and, in the absence of additional information indicating a higher level of potential risk, the default 'criticality' value should be set to 'Low Risk'. If a clinician considers that it is not safe for the individual to be deliberately re-exposed to the substance/product again, for example, following a manifestation of a life-threatening anaphylaxis, then the 'criticality' data element should be amended to 'High Risk'.
A formal adverse event report to regulatory bodies is a document that will contain a broad range of information in addition to the specific details about the adverse reaction. The report could utilize parts of this resource plus include additional data as required per jurisdiction.
An adverse reaction or allergy/intolerance list is a record of all identified propensities for an adverse reaction for the individual upon future exposure to the substance/product or class, plus provides potential access to the evidence provided by details about each reaction event, such as manifestation.
Valuable first-level information that could be presented to the clinician when they need to assess propensity for future reactions are:
Second-level information can be drawn from each exposure event and links to additional detailed information such as history, examination and diagnoses stored elsewhere in the record, if it is available.
AllergyIntolerance and RiskAssessment
AllergyIntolerance describes a specific type of risk - propensity to reaction to a substance/product while RiskAssessment describes general risks to a subject, not generally based on a reaction.
AllergyIntolerance and Immunization.reaction
Immunization.reaction may be an indication of an allergy or intolerance. If this is deemed to be the case, a separate AllergyIntolerance record should be created to indicate it, as most systems will not query against past immunization.reactions.
Misuse
Trial-Use Note: Requests have been received (GF#10369) to add codes to the extension-allergyintolerance-certainty value set (reaction-event-certainty), which is a required binding. The requested codes include "unknown", "ruled out" and "possible". The Patient Care WG has voted to add "unknown" to the value set, but recommends that if other terms (including "ruled out" and "possible") are desired for use in a specific setting, an extension or profile should be used. During the STU period feedback is solicited regarding (1) the need and desirability of adding the code "unknown" to the value set, vs. omitting the element if the certainty is not known; and (2) whether or not additional codes besides "unknown" should be added to the value set for the core specification, or whether additional codes, if needed, should be added in an extension/profile.
Feedback is welcome here .
This resource is referenced by AdverseEvent, ClinicalImpression, FamilyMemberHistory and NutritionOrder.
This resource does not implement any patterns.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
AllergyIntolerance | TU | DomainResource | Allergy or Intolerance (generally: Risk of adverse reaction to a substance) + Rule: AllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error. + Rule: AllergyIntolerance.clinicalStatus SHALL NOT be present if verification Status is entered-in-error Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | External ids for this item |
clinicalStatus | ?!ΣI | 0..1 | CodeableConcept | active | inactive | resolved AllergyIntolerance Clinical Status Codes (Required) |
verificationStatus | ?!ΣI | 0..1 | CodeableConcept | unconfirmed | confirmed | refuted | entered-in-error AllergyIntolerance Verification Status Codes (Required) |
type | Σ | 0..1 | code | allergy | intolerance - Underlying mechanism (if known) AllergyIntoleranceType (Required) |
category | Σ | 0..* | code | food | medication | environment | biologic AllergyIntoleranceCategory (Required) |
criticality | Σ | 0..1 | code | low | high | unable-to-assess AllergyIntoleranceCriticality (Required) |
code | Σ | 0..1 | CodeableConcept | Code that identifies the allergy or intolerance AllergyIntolerance Substance/Product, Condition and Negation Codes (Example) |
patient | Σ | 1..1 | Reference(Patient) | Who the sensitivity is for |
encounter | 0..1 | Reference(Encounter) | Encounter when the allergy or intolerance was asserted | |
onset[x] | 0..1 | When allergy or intolerance was identified | ||
onsetDateTime | dateTime | |||
onsetAge | Age | |||
onsetPeriod | Period | |||
onsetRange | Range | |||
onsetString | string | |||
recordedDate | 0..1 | dateTime | Date first version of the resource instance was recorded | |
recorder | 0..1 | Reference(Practitioner | PractitionerRole | Patient | RelatedPerson) | Who recorded the sensitivity | |
asserter | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Source of the information about the allergy |
lastOccurrence | 0..1 | dateTime | Date(/time) of last known occurrence of a reaction | |
note | 0..* | Annotation | Additional text not captured in other fields | |
reaction | 0..* | BackboneElement | Adverse Reaction Events linked to exposure to substance | |
substance | 0..1 | CodeableConcept | Specific substance or pharmaceutical product considered to be responsible for event Substance Code (Example) | |
manifestation | 1..* | CodeableConcept | Clinical symptoms/signs associated with the Event SNOMED CT Clinical Findings (Example) | |
description | 0..1 | string | Description of the event as a whole | |
onset | 0..1 | dateTime | Date(/time) when manifestations showed | |
severity | 0..1 | code | mild | moderate | severe (of event as a whole) AllergyIntoleranceSeverity (Required) | |
exposureRoute | 0..1 | CodeableConcept | How the subject was exposed to the substance SNOMED CT Route Codes (Example) | |
note | 0..* | Annotation | Text about event not captured in other fields | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<AllergyIntolerance xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier External ids for this item --></identifier> <clinicalStatus><!-- 0..1 CodeableConcept active | inactive | resolved --></clinicalStatus> <verificationStatus><!-- 0..1 CodeableConcept unconfirmed | confirmed | refuted | entered-in-error --></verificationStatus> <type value="[code]"/><!-- 0..1 allergy | intolerance - Underlying mechanism (if known) --> <category value="[code]"/><!-- 0..* food | medication | environment | biologic --> <criticality value="[code]"/><!-- 0..1 low | high | unable-to-assess --> <code><!-- 0..1 CodeableConcept Code that identifies the allergy or intolerance --></code> <patient><!-- 1..1 Reference(Patient) Who the sensitivity is for --></patient> <encounter><!-- 0..1 Reference(Encounter) Encounter when the allergy or intolerance was asserted --></encounter> <onset[x]><!-- 0..1 dateTime|Age|Period|Range|string When allergy or intolerance was identified --></onset[x]> <recordedDate value="[dateTime]"/><!-- 0..1 Date first version of the resource instance was recorded --> <recorder><!-- 0..1 Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) Who recorded the sensitivity --></recorder> <asserter><!-- 0..1 Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) Source of the information about the allergy --></asserter> <lastOccurrence value="[dateTime]"/><!-- 0..1 Date(/time) of last known occurrence of a reaction --> <note><!-- 0..* Annotation Additional text not captured in other fields --></note> <reaction> <!-- 0..* Adverse Reaction Events linked to exposure to substance --> <substance><!-- 0..1 CodeableConcept Specific substance or pharmaceutical product considered to be responsible for event --></substance> <manifestation><!-- 1..* CodeableConcept Clinical symptoms/signs associated with the Event --></manifestation> <description value="[string]"/><!-- 0..1 Description of the event as a whole --> <onset value="[dateTime]"/><!-- 0..1 Date(/time) when manifestations showed --> <severity value="[code]"/><!-- 0..1 mild | moderate | severe (of event as a whole) --> <exposureRoute><!-- 0..1 CodeableConcept How the subject was exposed to the substance --></exposureRoute> <note><!-- 0..* Annotation Text about event not captured in other fields --></note> </reaction> </AllergyIntolerance>
JSON Template
{ "resourceType" : "AllergyIntolerance", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // External ids for this item "clinicalStatus" : { CodeableConcept }, // C? active | inactive | resolved "verificationStatus" : { CodeableConcept }, // C? unconfirmed | confirmed | refuted | entered-in-error "type" : "<code>", // allergy | intolerance - Underlying mechanism (if known) "category" : ["<code>"], // food | medication | environment | biologic "criticality" : "<code>", // low | high | unable-to-assess "code" : { CodeableConcept }, // Code that identifies the allergy or intolerance "patient" : { Reference(Patient) }, // R! Who the sensitivity is for "encounter" : { Reference(Encounter) }, // Encounter when the allergy or intolerance was asserted // onset[x]: When allergy or intolerance was identified. One of these 5: "onsetDateTime" : "<dateTime>", "onsetAge" : { Age }, "onsetPeriod" : { Period }, "onsetRange" : { Range }, "onsetString" : "<string>", "recordedDate" : "<dateTime>", // Date first version of the resource instance was recorded "recorder" : { Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) }, // Who recorded the sensitivity "asserter" : { Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) }, // Source of the information about the allergy "lastOccurrence" : "<dateTime>", // Date(/time) of last known occurrence of a reaction "note" : [{ Annotation }], // Additional text not captured in other fields "reaction" : [{ // Adverse Reaction Events linked to exposure to substance "substance" : { CodeableConcept }, // Specific substance or pharmaceutical product considered to be responsible for event "manifestation" : [{ CodeableConcept }], // R! Clinical symptoms/signs associated with the Event "description" : "<string>", // Description of the event as a whole "onset" : "<dateTime>", // Date(/time) when manifestations showed "severity" : "<code>", // mild | moderate | severe (of event as a whole) "exposureRoute" : { CodeableConcept }, // How the subject was exposed to the substance "note" : [{ Annotation }] // Text about event not captured in other fields }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:AllergyIntolerance; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:AllergyIntolerance.identifier [ Identifier ], ... ; # 0..* External ids for this item fhir:AllergyIntolerance.clinicalStatus [ CodeableConcept ]; # 0..1 active | inactive | resolved fhir:AllergyIntolerance.verificationStatus [ CodeableConcept ]; # 0..1 unconfirmed | confirmed | refuted | entered-in-error fhir:AllergyIntolerance.type [ code ]; # 0..1 allergy | intolerance - Underlying mechanism (if known) fhir:AllergyIntolerance.category [ code ], ... ; # 0..* food | medication | environment | biologic fhir:AllergyIntolerance.criticality [ code ]; # 0..1 low | high | unable-to-assess fhir:AllergyIntolerance.code [ CodeableConcept ]; # 0..1 Code that identifies the allergy or intolerance fhir:AllergyIntolerance.patient [ Reference(Patient) ]; # 1..1 Who the sensitivity is for fhir:AllergyIntolerance.encounter [ Reference(Encounter) ]; # 0..1 Encounter when the allergy or intolerance was asserted # AllergyIntolerance.onset[x] : 0..1 When allergy or intolerance was identified. One of these 5 fhir:AllergyIntolerance.onsetDateTime [ dateTime ] fhir:AllergyIntolerance.onsetAge [ Age ] fhir:AllergyIntolerance.onsetPeriod [ Period ] fhir:AllergyIntolerance.onsetRange [ Range ] fhir:AllergyIntolerance.onsetString [ string ] fhir:AllergyIntolerance.recordedDate [ dateTime ]; # 0..1 Date first version of the resource instance was recorded fhir:AllergyIntolerance.recorder [ Reference(Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who recorded the sensitivity fhir:AllergyIntolerance.asserter [ Reference(Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Source of the information about the allergy fhir:AllergyIntolerance.lastOccurrence [ dateTime ]; # 0..1 Date(/time) of last known occurrence of a reaction fhir:AllergyIntolerance.note [ Annotation ], ... ; # 0..* Additional text not captured in other fields fhir:AllergyIntolerance.reaction [ # 0..* Adverse Reaction Events linked to exposure to substance fhir:AllergyIntolerance.reaction.substance [ CodeableConcept ]; # 0..1 Specific substance or pharmaceutical product considered to be responsible for event fhir:AllergyIntolerance.reaction.manifestation [ CodeableConcept ], ... ; # 1..* Clinical symptoms/signs associated with the Event fhir:AllergyIntolerance.reaction.description [ string ]; # 0..1 Description of the event as a whole fhir:AllergyIntolerance.reaction.onset [ dateTime ]; # 0..1 Date(/time) when manifestations showed fhir:AllergyIntolerance.reaction.severity [ code ]; # 0..1 mild | moderate | severe (of event as a whole) fhir:AllergyIntolerance.reaction.exposureRoute [ CodeableConcept ]; # 0..1 How the subject was exposed to the substance fhir:AllergyIntolerance.reaction.note [ Annotation ], ... ; # 0..* Text about event not captured in other fields ], ...; ]
Changes since R3
AllergyIntolerance | |
AllergyIntolerance.clinicalStatus |
|
AllergyIntolerance.verificationStatus |
|
AllergyIntolerance.type |
|
AllergyIntolerance.category |
|
AllergyIntolerance.criticality |
|
AllergyIntolerance.reaction.severity |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
AllergyIntolerance | TU | DomainResource | Allergy or Intolerance (generally: Risk of adverse reaction to a substance) + Rule: AllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error. + Rule: AllergyIntolerance.clinicalStatus SHALL NOT be present if verification Status is entered-in-error Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | External ids for this item |
clinicalStatus | ?!ΣI | 0..1 | CodeableConcept | active | inactive | resolved AllergyIntolerance Clinical Status Codes (Required) |
verificationStatus | ?!ΣI | 0..1 | CodeableConcept | unconfirmed | confirmed | refuted | entered-in-error AllergyIntolerance Verification Status Codes (Required) |
type | Σ | 0..1 | code | allergy | intolerance - Underlying mechanism (if known) AllergyIntoleranceType (Required) |
category | Σ | 0..* | code | food | medication | environment | biologic AllergyIntoleranceCategory (Required) |
criticality | Σ | 0..1 | code | low | high | unable-to-assess AllergyIntoleranceCriticality (Required) |
code | Σ | 0..1 | CodeableConcept | Code that identifies the allergy or intolerance AllergyIntolerance Substance/Product, Condition and Negation Codes (Example) |
patient | Σ | 1..1 | Reference(Patient) | Who the sensitivity is for |
encounter | 0..1 | Reference(Encounter) | Encounter when the allergy or intolerance was asserted | |
onset[x] | 0..1 | When allergy or intolerance was identified | ||
onsetDateTime | dateTime | |||
onsetAge | Age | |||
onsetPeriod | Period | |||
onsetRange | Range | |||
onsetString | string | |||
recordedDate | 0..1 | dateTime | Date first version of the resource instance was recorded | |
recorder | 0..1 | Reference(Practitioner | PractitionerRole | Patient | RelatedPerson) | Who recorded the sensitivity | |
asserter | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Source of the information about the allergy |
lastOccurrence | 0..1 | dateTime | Date(/time) of last known occurrence of a reaction | |
note | 0..* | Annotation | Additional text not captured in other fields | |
reaction | 0..* | BackboneElement | Adverse Reaction Events linked to exposure to substance | |
substance | 0..1 | CodeableConcept | Specific substance or pharmaceutical product considered to be responsible for event Substance Code (Example) | |
manifestation | 1..* | CodeableConcept | Clinical symptoms/signs associated with the Event SNOMED CT Clinical Findings (Example) | |
description | 0..1 | string | Description of the event as a whole | |
onset | 0..1 | dateTime | Date(/time) when manifestations showed | |
severity | 0..1 | code | mild | moderate | severe (of event as a whole) AllergyIntoleranceSeverity (Required) | |
exposureRoute | 0..1 | CodeableConcept | How the subject was exposed to the substance SNOMED CT Route Codes (Example) | |
note | 0..* | Annotation | Text about event not captured in other fields | |
Documentation for this format |
XML Template
<AllergyIntolerance xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier External ids for this item --></identifier> <clinicalStatus><!-- 0..1 CodeableConcept active | inactive | resolved --></clinicalStatus> <verificationStatus><!-- 0..1 CodeableConcept unconfirmed | confirmed | refuted | entered-in-error --></verificationStatus> <type value="[code]"/><!-- 0..1 allergy | intolerance - Underlying mechanism (if known) --> <category value="[code]"/><!-- 0..* food | medication | environment | biologic --> <criticality value="[code]"/><!-- 0..1 low | high | unable-to-assess --> <code><!-- 0..1 CodeableConcept Code that identifies the allergy or intolerance --></code> <patient><!-- 1..1 Reference(Patient) Who the sensitivity is for --></patient> <encounter><!-- 0..1 Reference(Encounter) Encounter when the allergy or intolerance was asserted --></encounter> <onset[x]><!-- 0..1 dateTime|Age|Period|Range|string When allergy or intolerance was identified --></onset[x]> <recordedDate value="[dateTime]"/><!-- 0..1 Date first version of the resource instance was recorded --> <recorder><!-- 0..1 Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) Who recorded the sensitivity --></recorder> <asserter><!-- 0..1 Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) Source of the information about the allergy --></asserter> <lastOccurrence value="[dateTime]"/><!-- 0..1 Date(/time) of last known occurrence of a reaction --> <note><!-- 0..* Annotation Additional text not captured in other fields --></note> <reaction> <!-- 0..* Adverse Reaction Events linked to exposure to substance --> <substance><!-- 0..1 CodeableConcept Specific substance or pharmaceutical product considered to be responsible for event --></substance> <manifestation><!-- 1..* CodeableConcept Clinical symptoms/signs associated with the Event --></manifestation> <description value="[string]"/><!-- 0..1 Description of the event as a whole --> <onset value="[dateTime]"/><!-- 0..1 Date(/time) when manifestations showed --> <severity value="[code]"/><!-- 0..1 mild | moderate | severe (of event as a whole) --> <exposureRoute><!-- 0..1 CodeableConcept How the subject was exposed to the substance --></exposureRoute> <note><!-- 0..* Annotation Text about event not captured in other fields --></note> </reaction> </AllergyIntolerance>
JSON Template
{ "resourceType" : "AllergyIntolerance", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // External ids for this item "clinicalStatus" : { CodeableConcept }, // C? active | inactive | resolved "verificationStatus" : { CodeableConcept }, // C? unconfirmed | confirmed | refuted | entered-in-error "type" : "<code>", // allergy | intolerance - Underlying mechanism (if known) "category" : ["<code>"], // food | medication | environment | biologic "criticality" : "<code>", // low | high | unable-to-assess "code" : { CodeableConcept }, // Code that identifies the allergy or intolerance "patient" : { Reference(Patient) }, // R! Who the sensitivity is for "encounter" : { Reference(Encounter) }, // Encounter when the allergy or intolerance was asserted // onset[x]: When allergy or intolerance was identified. One of these 5: "onsetDateTime" : "<dateTime>", "onsetAge" : { Age }, "onsetPeriod" : { Period }, "onsetRange" : { Range }, "onsetString" : "<string>", "recordedDate" : "<dateTime>", // Date first version of the resource instance was recorded "recorder" : { Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) }, // Who recorded the sensitivity "asserter" : { Reference(Patient|Practitioner|PractitionerRole| RelatedPerson) }, // Source of the information about the allergy "lastOccurrence" : "<dateTime>", // Date(/time) of last known occurrence of a reaction "note" : [{ Annotation }], // Additional text not captured in other fields "reaction" : [{ // Adverse Reaction Events linked to exposure to substance "substance" : { CodeableConcept }, // Specific substance or pharmaceutical product considered to be responsible for event "manifestation" : [{ CodeableConcept }], // R! Clinical symptoms/signs associated with the Event "description" : "<string>", // Description of the event as a whole "onset" : "<dateTime>", // Date(/time) when manifestations showed "severity" : "<code>", // mild | moderate | severe (of event as a whole) "exposureRoute" : { CodeableConcept }, // How the subject was exposed to the substance "note" : [{ Annotation }] // Text about event not captured in other fields }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:AllergyIntolerance; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:AllergyIntolerance.identifier [ Identifier ], ... ; # 0..* External ids for this item fhir:AllergyIntolerance.clinicalStatus [ CodeableConcept ]; # 0..1 active | inactive | resolved fhir:AllergyIntolerance.verificationStatus [ CodeableConcept ]; # 0..1 unconfirmed | confirmed | refuted | entered-in-error fhir:AllergyIntolerance.type [ code ]; # 0..1 allergy | intolerance - Underlying mechanism (if known) fhir:AllergyIntolerance.category [ code ], ... ; # 0..* food | medication | environment | biologic fhir:AllergyIntolerance.criticality [ code ]; # 0..1 low | high | unable-to-assess fhir:AllergyIntolerance.code [ CodeableConcept ]; # 0..1 Code that identifies the allergy or intolerance fhir:AllergyIntolerance.patient [ Reference(Patient) ]; # 1..1 Who the sensitivity is for fhir:AllergyIntolerance.encounter [ Reference(Encounter) ]; # 0..1 Encounter when the allergy or intolerance was asserted # AllergyIntolerance.onset[x] : 0..1 When allergy or intolerance was identified. One of these 5 fhir:AllergyIntolerance.onsetDateTime [ dateTime ] fhir:AllergyIntolerance.onsetAge [ Age ] fhir:AllergyIntolerance.onsetPeriod [ Period ] fhir:AllergyIntolerance.onsetRange [ Range ] fhir:AllergyIntolerance.onsetString [ string ] fhir:AllergyIntolerance.recordedDate [ dateTime ]; # 0..1 Date first version of the resource instance was recorded fhir:AllergyIntolerance.recorder [ Reference(Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who recorded the sensitivity fhir:AllergyIntolerance.asserter [ Reference(Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Source of the information about the allergy fhir:AllergyIntolerance.lastOccurrence [ dateTime ]; # 0..1 Date(/time) of last known occurrence of a reaction fhir:AllergyIntolerance.note [ Annotation ], ... ; # 0..* Additional text not captured in other fields fhir:AllergyIntolerance.reaction [ # 0..* Adverse Reaction Events linked to exposure to substance fhir:AllergyIntolerance.reaction.substance [ CodeableConcept ]; # 0..1 Specific substance or pharmaceutical product considered to be responsible for event fhir:AllergyIntolerance.reaction.manifestation [ CodeableConcept ], ... ; # 1..* Clinical symptoms/signs associated with the Event fhir:AllergyIntolerance.reaction.description [ string ]; # 0..1 Description of the event as a whole fhir:AllergyIntolerance.reaction.onset [ dateTime ]; # 0..1 Date(/time) when manifestations showed fhir:AllergyIntolerance.reaction.severity [ code ]; # 0..1 mild | moderate | severe (of event as a whole) fhir:AllergyIntolerance.reaction.exposureRoute [ CodeableConcept ]; # 0..1 How the subject was exposed to the substance fhir:AllergyIntolerance.reaction.note [ Annotation ], ... ; # 0..* Text about event not captured in other fields ], ...; ]
Changes since Release 3
AllergyIntolerance | |
AllergyIntolerance.clinicalStatus |
|
AllergyIntolerance.verificationStatus |
|
AllergyIntolerance.type |
|
AllergyIntolerance.category |
|
AllergyIntolerance.criticality |
|
AllergyIntolerance.reaction.severity |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)
See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
AllergyIntolerance.clinicalStatus | Required | AllergyIntoleranceClinicalStatusCodes | |
AllergyIntolerance.verificationStatus | Required | AllergyIntoleranceVerificationStatusCodes | |
AllergyIntolerance.type | Required | AllergyIntoleranceType | |
AllergyIntolerance.category | Required | AllergyIntoleranceCategory | |
AllergyIntolerance.criticality | Required | AllergyIntoleranceCriticality | |
AllergyIntolerance.code | Example | AllergyIntoleranceSubstance/Product,ConditionAndNegationCodes | |
AllergyIntolerance.reaction.substance | Example | SubstanceCode | |
AllergyIntolerance.reaction.manifestation | Example | SNOMEDCTClinicalFindings | |
AllergyIntolerance.reaction.severity | Required | AllergyIntoleranceSeverity | |
AllergyIntolerance.reaction.exposureRoute | Example | SNOMEDCTRouteCodes |
id | Level | Location | Description | Expression |
ait-1 | Rule | (base) | AllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error. | (verificationStatus.exists() and verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/allergyintolerance-verification' and code='entered-in-error').exists().not()) implies clinicalStatus.exists() |
ait-2 | Rule | (base) | AllergyIntolerance.clinicalStatus SHALL NOT be present if verification Status is entered-in-error | (verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/allergyintolerance-verification' and code='entered-in-error').exists()) implies clinicalStatus.exists().not() |
It is important to differentiate between affirmatively stating that a patient has no known allergies versus either not including allergies in the record (for example an episodic document where the allergies are not considered relevant to the document); or asserting that allergies were not reviewed and are unknown.
Allergies with the verificationStatus "entered-in-error" indicates that the allergy or intolerance statement is entered by mistake and hence invalid.
Allergies with the verificationStatus "refuted" must be displayed to indicate that a reaction to a substance has been ruled out with the high level of clinical certainty (e.g. additional testing, re-challenging).
Prior to adding a new allergy/intolerance, a list of existing negated and refuted reactions should be reviewed and reconciled.
Allergies Not Reviewed, Not Asked
When a sending system does not have any information about allergies being reviewed or the statement is about allergies not being asked yet, then the List resource should be used to indicate the List.emptyReason.code="notasked".
Allergies Reviewed, None Identified
Systems may use the List.emptyReason when a statement is about the full scope of the list (i.e. the patient has no known allergies or intolerances of any type). However, it is generally preferred to use a code for "No known allergies" (e.g., SNOMED CT: 716186003 |No known allergy (situation)|), so that all allergy data will be available and queryable from AllergyIntolerance resource instances. Negated AllergyIntolerance instances are also typically used when the record is more fine-grained (e.g. no drug allergies, no food allergies, no nut allergies, etc.).
However, it is possible to include negation statements that apply at the level of the whole list and it is also possible to have separate lists for things like medication allergies vs. food allergies, where that is appropriate to the architecture. Also note that care should be used when adding new AllergyIntolerances to a list to ensure that any negation statements that are voided by the addition of a new record are removed from the list. E.g. If the list contains a "no known food allergies" record and you add an "intolerance to grape flavor" record, then be sure you remove the "no known food allergies" record.
The substanceExposureRisk extension is also available for use as a more completely structured and flexible alternative to the 'code' element for representing positive and negative allergy and intolerance statements (either the 'code' element or the substanceExposureRisk extension may be used, but not both).
Trial-Use Note: There are two primary ways of reporting "no known allergies" in the current specification: using the CodeableConcept, as described above, or using the List resource with emptyReason. The third available option is using the substanceExposureRisk extension. During the STU period, it is not recommended to use the List resource for "no known allergies" reporting purposes. The principal reason for this is to allow all allergy or intolerance data to be found and to be consistently queryable from the single location of the AllergyIntolerance resource.
Provide feedback here .
No Known Allergies, using List.emptyReason (discouraged)
<List xmlns="http://hl7.org/fhir" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hl7.org/fhir ..\..\schema\list.xsd"> <id value="example-empty-allergy"/> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"> <p> The patient is not aware of any allergies.</p> </div> </text> <code> <coding> <system value="http://loinc.org"/> <code value="52472-8"/> <display value="Allergies and Adverse Drug Reactions"/> </coding> <text value="Current Allergy List"/> </code> <source> <reference value="Patient/example"/> </source> <status value="current"/> <date value="2012-11-26T07:30:23+11:00"/> <mode value="snapshot"/> <emptyReason> <coding> <system value="http://hl7.org/fhir/special-values"/> <code value="nil-known"/> <display value="Nil Known"/> </coding> <text value="The patient is not aware of any allergies."/> </emptyReason> </List>
No Known Food Allergies and Medication Allergy List
<?xml version="1.0" encoding="UTF-8"?> <List xmlns="http://hl7.org/fhir" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hl7.org/fhir ..\..\schema\list.xsd"> <id value="current-allergies"/> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"> <p>Patient Peter Chalmers, DOB = Dec 25, 1974, MRN = 12345 (Acme Healthcare) has the following allergies</p> <ul> <li>No known food allergies</li> <li>Allergenic extract, penicillin (high)</li> </ul> </div> </text> <code> <coding> <system value="http://loinc.org"/> <code value="52472-8"/> <display value="Allergies and Adverse Drug Reactions"/> </coding> <text value="Current Allergy List"/> </code> <source> <reference value="Patient/example"/> </source> <status value="current"/> <date value="2015-07-14T23:10:23+11:00"/> <mode value="snapshot"/> <entry> <item> <reference value="AllergyIntolerance/nofoodallergies"/> </item> </entry> <entry> <item> <reference value="AllergyIntolerance/penicillin"/> </item> </entry> </List>
If a new allergy is discovered, the negated allergy record must be updated with the "refuted" verificationStatus - to ensure that systems referring to this record are aware that this is no longer true.
Systems that only support one notion will have to determine whether what they're capturing is criticality or severity and map to the appropriate place. Criticality refers to the likelihood the allergy/intolerance could result in significant harm. Severity refers to the degree of manifestation of the reaction symptom. Moderate breathing difficulty would have high criticality while a severe rash would have low criticality. Severity is specific to a particular reaction occurrence.
For systems that only track generic reaction characteristics rather than a specific reaction will provide guidance to use the "reaction" structure and simply provide no date.
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
asserter | reference | Source of the information about the allergy | AllergyIntolerance.asserter (Practitioner, Patient, PractitionerRole, RelatedPerson) | |
category | token | food | medication | environment | biologic | AllergyIntolerance.category | |
clinical-status | token | active | inactive | resolved | AllergyIntolerance.clinicalStatus | |
code | token | Code that identifies the allergy or intolerance | AllergyIntolerance.code | AllergyIntolerance.reaction.substance | |
criticality | token | low | high | unable-to-assess | AllergyIntolerance.criticality | |
date | date | Date first version of the resource instance was recorded | AllergyIntolerance.recordedDate | |
identifier | token | External ids for this item | AllergyIntolerance.identifier | |
last-date | date | Date(/time) of last known occurrence of a reaction | AllergyIntolerance.lastOccurrence | |
manifestation | token | Clinical symptoms/signs associated with the Event | AllergyIntolerance.reaction.manifestation | |
onset | date | Date(/time) when manifestations showed | AllergyIntolerance.reaction.onset | |
patient | reference | Who the sensitivity is for | AllergyIntolerance.patient (Patient) | |
recorder | reference | Who recorded the sensitivity | AllergyIntolerance.recorder (Practitioner, Patient, PractitionerRole, RelatedPerson) | |
route | token | How the subject was exposed to the substance | AllergyIntolerance.reaction.exposureRoute | |
severity | token | mild | moderate | severe (of event as a whole) | AllergyIntolerance.reaction.severity | |
type | token | allergy | intolerance - Underlying mechanism (if known) | AllergyIntolerance.type | |
verification-status | token | unconfirmed | confirmed | refuted | entered-in-error | AllergyIntolerance.verificationStatus |