QI-Core Implementation Guide
4.1.1 - STU 4.1.1 US

This page is part of the Quality Improvement Core Framework (v4.1.1: STU 4) based on FHIR R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: QICoreAdverseEvent

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-adverseevent Version: 4.1.1
Draft as of 2018-08-22 Computable Name: QICoreAdverseEvent

An adverse event is an untoward occurrence during treatment that should be reported, for example, to a clinical study sponsor or safety oversight organization. AEs include reportable serious medical errors such as those defined by National Quality Forum (see http://www.qualityforum.org/Topics/ SREs/List_of_SREs.aspx), and Patient Safety Healthcare Events as defined by AHRQ. Some AEs can involve conditions such as “recurring headaches” but others do not, such as accidental falls, surgical errors, sexual abuse of patient, and sudden death. An adverse event can also be an unsafe condition that increases the probability of a patient safety event, and near-misses. An adverse event can be caused by exposure to some agent (e.g., a medication, immunization, food, or environmental agent). An adverse reaction can range from a mild reaction, such as a harmless rash to a severe and life-threatening condition. They can occur immediately or develop over time. For example, a patient may develop a rash after taking a particular medication.

Usage

See the patterns page for implementation and usage patterns.

Examples

Mild Rash Example

Usage:

Formal Views of Profile Content

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

This structure is derived from AdverseEvent

NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent 0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... actuality S1..1codeactual | potential
... category S0..*CodeableConceptproduct-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
... event S1..1CodeableConceptType of the event itself in relation to the subject
... encounter S0..1Reference(QICoreEncounter)Encounter created as part of
... date 0..1dateTimeWhen the event occurred
... resultingCondition S0..*Reference(Condition)Effect on the subject due to this event
... location 0..1Reference(QICoreLocation)Location where adverse event occurred
... recorder 0..1Reference(QICorePatient | QICoreRelatedPerson | QICorePractitioner | QICorePractitionerRole)Who recorded the adverse event
... suspectEntity 0..*BackboneElementThe suspected agent causing the adverse event
.... instance S1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event
.... causality 0..1BackboneElementInformation on the possible cause of the event

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent 0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... id Σ0..1stringLogical 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)
Max Binding: AllLanguages: A human language.

... 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..1IdentifierBusiness identifier for the event
... actuality ?!SΣ1..1codeactual | potential
Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential.

... category SΣ0..*CodeableConceptproduct-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational.


... event SΣ1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example): Detailed type of event.

... subject SΣ1..1Reference(QICorePatient | Group | QICorePractitioner | QICoreRelatedPerson)Subject impacted by event
... encounter SΣ0..1Reference(QICoreEncounter)Encounter created as part of
... date Σ0..1dateTimeWhen the event occurred
... detected Σ0..1dateTimeWhen the event was detected
... recordedDate Σ0..1dateTimeWhen the event was recorded
... resultingCondition SΣ0..*Reference(Condition)Effect on the subject due to this event
... location Σ0..1Reference(QICoreLocation)Location where adverse event occurred
... seriousness Σ0..1CodeableConceptSeriousness of the event
Binding: AdverseEventSeriousness (example): Overall seriousness of this event for the patient.

... severity Σ0..1CodeableConceptmild | moderate | severe
Binding: AdverseEventSeverity (required): The severity of the adverse event itself, in direct relation to the subject.

... outcome Σ0..1CodeableConceptresolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown
Binding: AdverseEventOutcome (required): TODO (and should this be required?).

... recorder Σ0..1Reference(QICorePatient | QICoreRelatedPerson | QICorePractitioner | QICorePractitionerRole)Who recorded the adverse event
... contributor Σ0..*Reference(Practitioner | PractitionerRole | Device)Who was involved in the adverse event or the potential adverse event
... suspectEntity Σ0..*BackboneElementThe suspected agent causing the adverse event
.... 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
.... instance SΣ1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event
.... causality Σ0..1BackboneElementInformation on the possible cause of the event
..... 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
..... assessment Σ0..1CodeableConceptAssessment of if the entity caused the event
Binding: AdverseEventCausalityAssessment (example): Codes for the assessment of whether the entity caused the event.

..... productRelatedness Σ0..1stringAdverseEvent.suspectEntity.causalityProductRelatedness
..... author Σ0..1Reference(Practitioner | PractitionerRole)AdverseEvent.suspectEntity.causalityAuthor
..... method Σ0..1CodeableConceptProbabilityScale | Bayesian | Checklist
Binding: AdverseEventCausalityMethod (example): TODO.

... subjectMedicalHistory Σ0..*Reference(Condition | Observation | AllergyIntolerance | FamilyMemberHistory | Immunization | Procedure | Media | DocumentReference)AdverseEvent.subjectMedicalHistory
... referenceDocument Σ0..*Reference(DocumentReference)AdverseEvent.referenceDocument
... study Σ0..*Reference(ResearchStudy)AdverseEvent.study

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent 0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... actuality ?!Σ1..1codeactual | potential
Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential.

... category Σ0..*CodeableConceptproduct-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational.


... event Σ1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example): Detailed type of event.

... encounter Σ0..1Reference(QICoreEncounter)Encounter created as part of
... resultingCondition Σ0..*Reference(Condition)Effect on the subject due to this event
... suspectEntity Σ0..*BackboneElementThe suspected agent causing the adverse event
.... instance Σ1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event

doco Documentation for this format

Differential View

This structure is derived from AdverseEvent

NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent 0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... actuality S1..1codeactual | potential
... category S0..*CodeableConceptproduct-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
... event S1..1CodeableConceptType of the event itself in relation to the subject
... encounter S0..1Reference(QICoreEncounter)Encounter created as part of
... date 0..1dateTimeWhen the event occurred
... resultingCondition S0..*Reference(Condition)Effect on the subject due to this event
... location 0..1Reference(QICoreLocation)Location where adverse event occurred
... recorder 0..1Reference(QICorePatient | QICoreRelatedPerson | QICorePractitioner | QICorePractitionerRole)Who recorded the adverse event
... suspectEntity 0..*BackboneElementThe suspected agent causing the adverse event
.... instance S1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event
.... causality 0..1BackboneElementInformation on the possible cause of the event

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent 0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... id Σ0..1stringLogical 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)
Max Binding: AllLanguages: A human language.

... 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..1IdentifierBusiness identifier for the event
... actuality ?!SΣ1..1codeactual | potential
Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential.

... category SΣ0..*CodeableConceptproduct-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational.


... event SΣ1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example): Detailed type of event.

... subject SΣ1..1Reference(QICorePatient | Group | QICorePractitioner | QICoreRelatedPerson)Subject impacted by event
... encounter SΣ0..1Reference(QICoreEncounter)Encounter created as part of
... date Σ0..1dateTimeWhen the event occurred
... detected Σ0..1dateTimeWhen the event was detected
... recordedDate Σ0..1dateTimeWhen the event was recorded
... resultingCondition SΣ0..*Reference(Condition)Effect on the subject due to this event
... location Σ0..1Reference(QICoreLocation)Location where adverse event occurred
... seriousness Σ0..1CodeableConceptSeriousness of the event
Binding: AdverseEventSeriousness (example): Overall seriousness of this event for the patient.

... severity Σ0..1CodeableConceptmild | moderate | severe
Binding: AdverseEventSeverity (required): The severity of the adverse event itself, in direct relation to the subject.

... outcome Σ0..1CodeableConceptresolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown
Binding: AdverseEventOutcome (required): TODO (and should this be required?).

... recorder Σ0..1Reference(QICorePatient | QICoreRelatedPerson | QICorePractitioner | QICorePractitionerRole)Who recorded the adverse event
... contributor Σ0..*Reference(Practitioner | PractitionerRole | Device)Who was involved in the adverse event or the potential adverse event
... suspectEntity Σ0..*BackboneElementThe suspected agent causing the adverse event
.... 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
.... instance SΣ1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event
.... causality Σ0..1BackboneElementInformation on the possible cause of the event
..... 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
..... assessment Σ0..1CodeableConceptAssessment of if the entity caused the event
Binding: AdverseEventCausalityAssessment (example): Codes for the assessment of whether the entity caused the event.

..... productRelatedness Σ0..1stringAdverseEvent.suspectEntity.causalityProductRelatedness
..... author Σ0..1Reference(Practitioner | PractitionerRole)AdverseEvent.suspectEntity.causalityAuthor
..... method Σ0..1CodeableConceptProbabilityScale | Bayesian | Checklist
Binding: AdverseEventCausalityMethod (example): TODO.

... subjectMedicalHistory Σ0..*Reference(Condition | Observation | AllergyIntolerance | FamilyMemberHistory | Immunization | Procedure | Media | DocumentReference)AdverseEvent.subjectMedicalHistory
... referenceDocument Σ0..*Reference(DocumentReference)AdverseEvent.referenceDocument
... study Σ0..*Reference(ResearchStudy)AdverseEvent.study

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
AdverseEvent.languagepreferredCommonLanguages
Max Binding: AllLanguages
AdverseEvent.actualityrequiredAdverseEventActuality
AdverseEvent.categoryextensibleAdverseEventCategory
AdverseEvent.eventexampleSNOMEDCTClinicalFindings
AdverseEvent.seriousnessexampleAdverseEventSeriousness
AdverseEvent.severityrequiredAdverseEventSeverity
AdverseEvent.outcomerequiredAdverseEventOutcome
AdverseEvent.suspectEntity.causality.assessmentexampleAdverseEventCausalityAssessment
AdverseEvent.suspectEntity.causality.methodexampleAdverseEventCausalityMethod

Constraints

IdGradePathDetailsRequirements
dom-2errorAdverseEventIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAdverseEventIf 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-4errorAdverseEventIf 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-5errorAdverseEventIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticeAdverseEventA resource should have narrative for robust management
: text.`div`.exists()
ele-1errorAdverseEvent.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAdverseEvent.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAdverseEvent.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAdverseEvent.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAdverseEvent.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.actualityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.eventAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.detectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.recordedDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.resultingConditionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.locationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.seriousnessAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.severityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.outcomeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.recorderAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.contributorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntity.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAdverseEvent.suspectEntity.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAdverseEvent.suspectEntity.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAdverseEvent.suspectEntity.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAdverseEvent.suspectEntity.instanceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntity.causalityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntity.causality.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAdverseEvent.suspectEntity.causality.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAdverseEvent.suspectEntity.causality.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorAdverseEvent.suspectEntity.causality.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorAdverseEvent.suspectEntity.causality.assessmentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntity.causality.productRelatednessAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntity.causality.authorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.suspectEntity.causality.methodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.subjectMedicalHistoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.referenceDocumentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorAdverseEvent.studyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())