US Core Implementation Guide
7.0.0-ballot - Ballot United States of America flag

This page is part of the US Core (v7.0.0-ballot: STU7 Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. The current version which supersedes this version is 6.1.0. For a full list of available versions, see the Directory of published versions

Resource Profile: US Core AllergyIntolerance Profile

Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance Version: 7.0.0-ballot
Standards status: Trial-use Maturity Level: 3 Computable Name: USCoreAllergyIntolerance

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the AllergyIntolerance resource to record, search, and fetch allergies/adverse reactions associated with a patient. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains the way the elements are used when using the profile. It provides the floor for standards development for specific use cases.

Example Usage Scenarios:

The following are example usage scenarios for the US Core AllergyIntolerance profile:

Mandatory and Must Support Data Elements

The following data-elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.

Each AllergyIntolerance Must Have:

  1. a clinical status of the allergy (e.g., active or resolved)*
  2. a code which tells you what the patient is allergic to
  3. a patient

*This element has the following constraints: SHALL be present if verification status is not “entered-in-error” and SHALL NOT be present if verification Status is “entered-in-error”.

Each AllergyIntolerance Must Support:

  1. a verification status
  2. a reaction manifestation

Profile Specific Implementation Guidance:

  • No Known Allergies may be represented using the US Core-AllergyIntolerance profile with appropriate negation code in AllergyIntolerence.code and the appropriate verification status in AllergyIntolerance.verificationStatus.

    If a patient has not been asked about their allergies, this would be represented as:

    • AllergyIntolerance.code = “1631000175102” (Patient not asked (contextual qualifier) (qualifier value))

    • AllergyIntolerance.verificationStatus = “unconfirmed” or empty (in other words, then element omitted)

    If a patient has been asked, but has indicated they have no known allergies, this would be represented as:

    • AllergyIntolerance.code = “716186003” (No known allergy (situation))

    • AllergyIntolerance.verificationStatus = “confirmed”

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from AllergyIntolerance

NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance 0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... clinicalStatus S0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required)
... verificationStatus S0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required)
... code S1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: Common substances for allergy and intolerance documentation including refutations (extensible)
... patient S1..1Reference(US Core Patient Profile)Who the sensitivity is for
... reaction S0..*BackboneElementAdverse Reaction Events linked to exposure to substance
.... manifestation S1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.codeextensibleCommonSubstancesForAllergyAndIntoleranceDocumentationIncludingRefutations
AllergyIntolerance.reaction.manifestationextensibleSNOMEDCTClinicalFindings
NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance C0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... clinicalStatus ?!SΣC0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required)
... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required)
... code SΣ1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: Common substances for allergy and intolerance documentation including refutations (extensible)
... patient SΣ1..1Reference(US Core Patient Profile)Who the sensitivity is for
... reaction S0..*BackboneElementAdverse Reaction Events linked to exposure to substance
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... manifestation S1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (extensible)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.codeextensibleCommonSubstancesForAllergyAndIntoleranceDocumentationIncludingRefutations
AllergyIntolerance.reaction.manifestationextensibleSNOMEDCTClinicalFindings

Constraints

IdGradePath(s)DetailsRequirements
ait-1errorAllergyIntoleranceAllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error.
: verificationStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-verification' and code = 'entered-in-error').exists() or clinicalStatus.exists()
ait-2errorAllergyIntoleranceAllergyIntolerance.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').empty() or clinicalStatus.empty()
dom-2errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAllergyIntoleranceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance C0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal ids for this item
... clinicalStatus ?!SΣC0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required)
... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required)
... type Σ0..1codeallergy | intolerance - Underlying mechanism (if known)
Binding: AllergyIntoleranceType (required): Identification of the underlying physiological mechanism for a Reaction Risk.

... category Σ0..*codefood | medication | environment | biologic
Binding: AllergyIntoleranceCategory (required): Category of an identified substance associated with allergies or intolerances.


... criticality Σ0..1codelow | high | unable-to-assess
Binding: AllergyIntoleranceCriticality (required): Estimate of the potential clinical harm, or seriousness, of a reaction to an identified substance.

... code SΣ1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: Common substances for allergy and intolerance documentation including refutations (extensible)
... patient SΣ1..1Reference(US Core Patient Profile)Who the sensitivity is for
... encounter 0..1Reference(Encounter)Encounter when the allergy or intolerance was asserted
... onset[x] 0..1When allergy or intolerance was identified
.... onsetDateTimedateTime
.... onsetAgeAge
.... onsetPeriodPeriod
.... onsetRangeRange
.... onsetStringstring
... recordedDate 0..1dateTimeDate first version of the resource instance was recorded
... recorder 0..1Reference(Practitioner | PractitionerRole | Patient | RelatedPerson)Who recorded the sensitivity
... asserter Σ0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Source of the information about the allergy
... lastOccurrence 0..1dateTimeDate(/time) of last known occurrence of a reaction
... note 0..*AnnotationAdditional text not captured in other fields
... reaction S0..*BackboneElementAdverse Reaction Events linked to exposure to substance
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... substance 0..1CodeableConceptSpecific substance or pharmaceutical product considered to be responsible for event
Binding: SubstanceCode (example): Codes defining the type of the substance (including pharmaceutical products).

.... manifestation S1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (extensible)
.... description 0..1stringDescription of the event as a whole
.... onset 0..1dateTimeDate(/time) when manifestations showed
.... severity 0..1codemild | moderate | severe (of event as a whole)
Binding: AllergyIntoleranceSeverity (required): Clinical assessment of the severity of a reaction event as a whole, potentially considering multiple different manifestations.

.... exposureRoute 0..1CodeableConceptHow the subject was exposed to the substance
Binding: SNOMEDCTRouteCodes (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject.

.... note 0..*AnnotationText about event not captured in other fields

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
AllergyIntolerance.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.typerequiredAllergyIntoleranceType
AllergyIntolerance.categoryrequiredAllergyIntoleranceCategory
AllergyIntolerance.criticalityrequiredAllergyIntoleranceCriticality
AllergyIntolerance.codeextensibleCommonSubstancesForAllergyAndIntoleranceDocumentationIncludingRefutations
AllergyIntolerance.reaction.substanceexampleSubstanceCode
AllergyIntolerance.reaction.manifestationextensibleSNOMEDCTClinicalFindings
AllergyIntolerance.reaction.severityrequiredAllergyIntoleranceSeverity
AllergyIntolerance.reaction.exposureRouteexampleSNOMEDCTRouteCodes

Constraints

IdGradePath(s)DetailsRequirements
ait-1errorAllergyIntoleranceAllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error.
: verificationStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-verification' and code = 'entered-in-error').exists() or clinicalStatus.exists()
ait-2errorAllergyIntoleranceAllergyIntolerance.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').empty() or clinicalStatus.empty()
dom-2errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAllergyIntoleranceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from AllergyIntolerance

Summary

Mandatory: 1 element
Must-Support: 6 elements

Structures

This structure refers to these other structures:

Maturity: 3

Differential View

This structure is derived from AllergyIntolerance

NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance 0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... clinicalStatus S0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required)
... verificationStatus S0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required)
... code S1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: Common substances for allergy and intolerance documentation including refutations (extensible)
... patient S1..1Reference(US Core Patient Profile)Who the sensitivity is for
... reaction S0..*BackboneElementAdverse Reaction Events linked to exposure to substance
.... manifestation S1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.codeextensibleCommonSubstancesForAllergyAndIntoleranceDocumentationIncludingRefutations
AllergyIntolerance.reaction.manifestationextensibleSNOMEDCTClinicalFindings

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance C0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... clinicalStatus ?!SΣC0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required)
... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required)
... code SΣ1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: Common substances for allergy and intolerance documentation including refutations (extensible)
... patient SΣ1..1Reference(US Core Patient Profile)Who the sensitivity is for
... reaction S0..*BackboneElementAdverse Reaction Events linked to exposure to substance
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... manifestation S1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (extensible)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.codeextensibleCommonSubstancesForAllergyAndIntoleranceDocumentationIncludingRefutations
AllergyIntolerance.reaction.manifestationextensibleSNOMEDCTClinicalFindings

Constraints

IdGradePath(s)DetailsRequirements
ait-1errorAllergyIntoleranceAllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error.
: verificationStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-verification' and code = 'entered-in-error').exists() or clinicalStatus.exists()
ait-2errorAllergyIntoleranceAllergyIntolerance.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').empty() or clinicalStatus.empty()
dom-2errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAllergyIntoleranceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance C0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal ids for this item
... clinicalStatus ?!SΣC0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required)
... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required)
... type Σ0..1codeallergy | intolerance - Underlying mechanism (if known)
Binding: AllergyIntoleranceType (required): Identification of the underlying physiological mechanism for a Reaction Risk.

... category Σ0..*codefood | medication | environment | biologic
Binding: AllergyIntoleranceCategory (required): Category of an identified substance associated with allergies or intolerances.


... criticality Σ0..1codelow | high | unable-to-assess
Binding: AllergyIntoleranceCriticality (required): Estimate of the potential clinical harm, or seriousness, of a reaction to an identified substance.

... code SΣ1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: Common substances for allergy and intolerance documentation including refutations (extensible)
... patient SΣ1..1Reference(US Core Patient Profile)Who the sensitivity is for
... encounter 0..1Reference(Encounter)Encounter when the allergy or intolerance was asserted
... onset[x] 0..1When allergy or intolerance was identified
.... onsetDateTimedateTime
.... onsetAgeAge
.... onsetPeriodPeriod
.... onsetRangeRange
.... onsetStringstring
... recordedDate 0..1dateTimeDate first version of the resource instance was recorded
... recorder 0..1Reference(Practitioner | PractitionerRole | Patient | RelatedPerson)Who recorded the sensitivity
... asserter Σ0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Source of the information about the allergy
... lastOccurrence 0..1dateTimeDate(/time) of last known occurrence of a reaction
... note 0..*AnnotationAdditional text not captured in other fields
... reaction S0..*BackboneElementAdverse Reaction Events linked to exposure to substance
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... substance 0..1CodeableConceptSpecific substance or pharmaceutical product considered to be responsible for event
Binding: SubstanceCode (example): Codes defining the type of the substance (including pharmaceutical products).

.... manifestation S1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (extensible)
.... description 0..1stringDescription of the event as a whole
.... onset 0..1dateTimeDate(/time) when manifestations showed
.... severity 0..1codemild | moderate | severe (of event as a whole)
Binding: AllergyIntoleranceSeverity (required): Clinical assessment of the severity of a reaction event as a whole, potentially considering multiple different manifestations.

.... exposureRoute 0..1CodeableConceptHow the subject was exposed to the substance
Binding: SNOMEDCTRouteCodes (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject.

.... note 0..*AnnotationText about event not captured in other fields

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
AllergyIntolerance.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.typerequiredAllergyIntoleranceType
AllergyIntolerance.categoryrequiredAllergyIntoleranceCategory
AllergyIntolerance.criticalityrequiredAllergyIntoleranceCriticality
AllergyIntolerance.codeextensibleCommonSubstancesForAllergyAndIntoleranceDocumentationIncludingRefutations
AllergyIntolerance.reaction.substanceexampleSubstanceCode
AllergyIntolerance.reaction.manifestationextensibleSNOMEDCTClinicalFindings
AllergyIntolerance.reaction.severityrequiredAllergyIntoleranceSeverity
AllergyIntolerance.reaction.exposureRouteexampleSNOMEDCTRouteCodes

Constraints

IdGradePath(s)DetailsRequirements
ait-1errorAllergyIntoleranceAllergyIntolerance.clinicalStatus SHALL be present if verificationStatus is not entered-in-error.
: verificationStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-verification' and code = 'entered-in-error').exists() or clinicalStatus.exists()
ait-2errorAllergyIntoleranceAllergyIntolerance.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').empty() or clinicalStatus.empty()
dom-2errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAllergyIntoleranceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAllergyIntoleranceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAllergyIntoleranceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from AllergyIntolerance

Summary

Mandatory: 1 element
Must-Support: 6 elements

Structures

This structure refers to these other structures:

Maturity: 3

 

Other representations of profile: CSV, Excel, Schematron

Notes:


Quick Start


Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile’s information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.

  • The syntax used to describe the interactions is described here.
  • See the General Requirements section for additional rules and expectations when a server requires status parameters.
  • See the General Guidance section for additional guidance on searching for multiple patients.

US Core Scopes

Servers providing access to allergy and intolerance data SHALL support these US Core SMART Scopes:

Mandatory Search Parameters:

The following search parameters and search parameter combinations SHALL be supported:

  1. SHALL support searching for all allergies for a patient using the patient search parameter:

    GET [base]/AllergyIntolerance?patient={Type/}[id]

    Example:

    1. GET [base]/AllergyIntolerance?patient=1137192

    Implementation Notes: Fetches a bundle of all AllergyIntolerance resources for the specified patient (how to search by reference)

Optional Search Parameters:

The following search parameter combinations SHOULD be supported:

  1. SHOULD support searching using the combination of the patient and clinical-status search parameters:

    GET [base]/AllergyIntolerance?patient={Type/}[id]&clinical-status={system|}[code]

    Example:

    1. GET [base]/AllergyIntolerance?patient=[id]&clinical-status=http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical|active

    Implementation Notes: Fetches a bundle of all AllergyIntolerance resources for the specified patient and status code. This will not return any "entered in error" resources because of the conditional presence of the clinicalStatus element. (how to search by reference and how to search by token)