FHIR Implementation Guide for ABDM
3.0.0 - CI Build India flag


banner

FHIR Implementation Guide for ABDM - Local Development build (v3.0.0). See the Directory of published versions

Resource Profile: StructureDefinition/AllergyIntolerance

Official URL: https://nrces.in/ndhm/fhir/r4/StructureDefinition/AllergyIntolerance Version: 3.0.0
Draft as of 2020-08-17 Computable Name: AllergyIntolerance

This profile sets minimum expectations for the AllergyIntolerance resource to record, search, and fetch allergies/adverse reactions associated with a patient. It identifies the mandatory core elements, vocabularies and value sets which SHALL be present in the AllergyIntolerance resource when using this profile.

Examples

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)
... code S1..1CodeableConceptCode that identifies the allergy or intolerance
.... coding S0..*CodingCode defined by a terminology system
..... system 0..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... code 1..1codeSymbol in syntax defined by the system
..... display 1..1stringRepresentation defined by the system
.... text S0..1stringPlain text representation of the concept
... patient S1..1Reference(Patient)Who the sensitivity is for
... encounter 0..1Reference(Encounter)Encounter when the allergy or intolerance was asserted
... asserter 0..1Reference(RelatedPerson | Patient | Practitioner | PractitionerRole)Source of the information about the allergy

doco Documentation for this format
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
... 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 ?!ΣC0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required): The clinical status of the allergy or intolerance.

... verificationStatus ?!ΣC0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required): Assertion about certainty associated with a propensity, or potential risk, of a reaction to the identified substance.

... 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: AllergyIntoleranceSubstance/Product,ConditionAndNegationCodes (example): Type of the substance/product, allergy or intolerance condition, or negation/exclusion codes for reporting no known allergies.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ0..*CodingCode defined by a terminology system
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ1..1codeSymbol in syntax defined by the system
..... display Σ1..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text SΣ0..1stringPlain text representation of the concept
... patient SΣ1..1Reference(Patient)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(RelatedPerson | Patient | 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 0..*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 1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (example): Clinical symptoms and/or signs that are observed or associated with an Adverse Reaction Event.


.... 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
NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance C0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... code Σ1..1CodeableConceptCode that identifies the allergy or intolerance
Binding: AllergyIntoleranceSubstance/Product,ConditionAndNegationCodes (example): Type of the substance/product, allergy or intolerance condition, or negation/exclusion codes for reporting no known allergies.

.... coding Σ0..*CodingCode defined by a terminology system
.... text Σ0..1stringPlain text representation of the concept
... patient Σ1..1Reference(Patient)Who the sensitivity is for

doco Documentation for this format

Differential View

This structure is derived from AllergyIntolerance

NameFlagsCard.TypeDescription & Constraintsdoco
.. AllergyIntolerance 0..*AllergyIntoleranceAllergy or Intolerance (generally: Risk of adverse reaction to a substance)
... code S1..1CodeableConceptCode that identifies the allergy or intolerance
.... coding S0..*CodingCode defined by a terminology system
..... system 0..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... code 1..1codeSymbol in syntax defined by the system
..... display 1..1stringRepresentation defined by the system
.... text S0..1stringPlain text representation of the concept
... patient S1..1Reference(Patient)Who the sensitivity is for
... encounter 0..1Reference(Encounter)Encounter when the allergy or intolerance was asserted
... asserter 0..1Reference(RelatedPerson | Patient | Practitioner | PractitionerRole)Source of the information about the allergy

doco Documentation for this format

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
... 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 ?!ΣC0..1CodeableConceptactive | inactive | resolved
Binding: AllergyIntoleranceClinicalStatusCodes (required): The clinical status of the allergy or intolerance.

... verificationStatus ?!ΣC0..1CodeableConceptunconfirmed | confirmed | refuted | entered-in-error
Binding: AllergyIntoleranceVerificationStatusCodes (required): Assertion about certainty associated with a propensity, or potential risk, of a reaction to the identified substance.

... 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: AllergyIntoleranceSubstance/Product,ConditionAndNegationCodes (example): Type of the substance/product, allergy or intolerance condition, or negation/exclusion codes for reporting no known allergies.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ0..*CodingCode defined by a terminology system
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ1..1codeSymbol in syntax defined by the system
..... display Σ1..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text SΣ0..1stringPlain text representation of the concept
... patient SΣ1..1Reference(Patient)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(RelatedPerson | Patient | 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 0..*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 1..*CodeableConceptClinical symptoms/signs associated with the Event
Binding: SNOMEDCTClinicalFindings (example): Clinical symptoms and/or signs that are observed or associated with an Adverse Reaction Event.


.... 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

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
AllergyIntolerance.languagepreferredCommonLanguages
Max Binding: AllLanguages
AllergyIntolerance.clinicalStatusrequiredAllergyIntoleranceClinicalStatusCodes
AllergyIntolerance.verificationStatusrequiredAllergyIntoleranceVerificationStatusCodes
AllergyIntolerance.typerequiredAllergyIntoleranceType
AllergyIntolerance.categoryrequiredAllergyIntoleranceCategory
AllergyIntolerance.criticalityrequiredAllergyIntoleranceCriticality
AllergyIntolerance.codeexampleAllergyIntoleranceSubstance/Product,ConditionAndNegationCodes
AllergyIntolerance.reaction.substanceexampleSubstanceCode
AllergyIntolerance.reaction.manifestationexampleSNOMEDCTClinicalFindings
AllergyIntolerance.reaction.severityrequiredAllergyIntoleranceSeverity
AllergyIntolerance.reaction.exposureRouteexampleSNOMEDCTRouteCodes

Constraints

IdGradePathDetailsRequirements
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-1errorAllergyIntolerance.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAllergyIntolerance.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAllergyIntolerance.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAllergyIntolerance.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAllergyIntolerance.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.clinicalStatusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.verificationStatusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.criticalityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAllergyIntolerance.code.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAllergyIntolerance.code.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAllergyIntolerance.code.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAllergyIntolerance.code.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.code.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.patientAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.onset[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.recordedDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.recorderAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.asserterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.lastOccurrenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reactionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAllergyIntolerance.reaction.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAllergyIntolerance.reaction.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAllergyIntolerance.reaction.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAllergyIntolerance.reaction.substanceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.manifestationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.onsetAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.severityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.exposureRouteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAllergyIntolerance.reaction.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())