QI-Core Implementation Guide: STU 4 (v4.0.0 for FHIR 4.0.1)

QI-Core Implementation Guide - This is the current published version.. See the Directory of published versions

D.4.1 StructureDefinition-qicore-adverseevent

Introduction:

See the patterns page for implementation and usage patterns.

Examples:

Mild Rash Example

D.4.1.1 Formal Views of Profile Content

The official URL for this profile is:

http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-adverseevent

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.

This profile builds on AdverseEvent.

This profile was published on Wed Aug 22 00:00:00 UTC 2018 as a draft by Health Level Seven, Inc. - CQI WG.

Description of Profiles, Differentials, and Snapshots.

NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent I0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... identifier ΣI0..1IdentifierBusiness identifier for the event
... actuality ?!SΣI1..1codeactual | potential
Binding: AdverseEventActuality (required)
... category SΣI0..*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)
... event SΣI1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example)
... subject SΣI1..1Reference(QICorePatient | Group | QICorePractitioner | QICoreRelatedPerson)Subject impacted by event
... encounter SΣI0..1Reference(QICoreEncounter)Encounter created as part of
... date ΣI0..1dateTimeWhen the event occurred
... detected ΣI0..1dateTimeWhen the event was detected
... recordedDate ΣI0..1dateTimeWhen the event was recorded
... resultingCondition ΣI0..*Reference(Condition)Effect on the subject due to this event
... location ΣI0..1Reference(QICoreLocation)Location where adverse event occurred
... seriousness ΣI0..1CodeableConceptSeriousness of the event
Binding: AdverseEventSeriousness (example)
... severity ΣI0..1CodeableConceptmild | moderate | severe
Binding: AdverseEventSeverity (required)
... outcome ΣI0..1CodeableConceptresolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown
Binding: AdverseEventOutcome (required)
... recorder ΣI0..1Reference(QICorePatient | QICoreRelatedPerson | QICorePractitioner | QICorePractitionerRole)Who recorded the adverse event
... contributor ΣI0..*Reference(Practitioner | PractitionerRole | Device)Who was involved in the adverse event or the potential adverse event
... suspectEntity ΣI0..*BackboneElementThe suspected agent causing the adverse event
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... instance SΣI1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event
.... causality ΣI0..1BackboneElementInformation on the possible cause of the event
..... id 0..1stringUnique id for inter-element referencing
..... extension I0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... assessment ΣI0..1CodeableConceptAssessment of if the entity caused the event
Binding: AdverseEventCausalityAssessment (example)
..... productRelatedness ΣI0..1stringAdverseEvent.suspectEntity.causalityProductRelatedness
..... author ΣI0..1Reference(Practitioner | PractitionerRole)AdverseEvent.suspectEntity.causalityAuthor
..... method ΣI0..1CodeableConceptProbabilityScale | Bayesian | Checklist
Binding: AdverseEventCausalityMethod (example)
... subjectMedicalHistory ΣI0..*Reference(Condition | Observation | AllergyIntolerance | FamilyMemberHistory | Immunization | Procedure | Media | DocumentReference)AdverseEvent.subjectMedicalHistory
... referenceDocument ΣI0..*Reference(DocumentReference)AdverseEvent.referenceDocument
... study ΣI0..*Reference(ResearchStudy)AdverseEvent.study

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent I0..*AdverseEventMedical care, research study or other healthcare event causing physical injury
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... identifier ΣI0..1IdentifierBusiness identifier for the event
... actuality ?!SΣI1..1codeactual | potential
Binding: AdverseEventActuality (required)
... category SΣI0..*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)
... event SΣI1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example)
... subject SΣI1..1Reference(QICorePatient | Group | QICorePractitioner | QICoreRelatedPerson)Subject impacted by event
... encounter SΣI0..1Reference(QICoreEncounter)Encounter created as part of
... date ΣI0..1dateTimeWhen the event occurred
... detected ΣI0..1dateTimeWhen the event was detected
... recordedDate ΣI0..1dateTimeWhen the event was recorded
... resultingCondition ΣI0..*Reference(Condition)Effect on the subject due to this event
... location ΣI0..1Reference(QICoreLocation)Location where adverse event occurred
... seriousness ΣI0..1CodeableConceptSeriousness of the event
Binding: AdverseEventSeriousness (example)
... severity ΣI0..1CodeableConceptmild | moderate | severe
Binding: AdverseEventSeverity (required)
... outcome ΣI0..1CodeableConceptresolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown
Binding: AdverseEventOutcome (required)
... recorder ΣI0..1Reference(QICorePatient | QICoreRelatedPerson | QICorePractitioner | QICorePractitionerRole)Who recorded the adverse event
... contributor ΣI0..*Reference(Practitioner | PractitionerRole | Device)Who was involved in the adverse event or the potential adverse event
... suspectEntity ΣI0..*BackboneElementThe suspected agent causing the adverse event
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... instance SΣI1..1Reference(QICoreImmunization | QICoreProcedure | QICoreSubstance | QICoreMedication | QICoreMedicationAdministration | QICoreMedicationStatement | QICoreDevice)Refers to the specific entity that caused the adverse event
.... causality ΣI0..1BackboneElementInformation on the possible cause of the event
..... id 0..1stringUnique id for inter-element referencing
..... extension I0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... assessment ΣI0..1CodeableConceptAssessment of if the entity caused the event
Binding: AdverseEventCausalityAssessment (example)
..... productRelatedness ΣI0..1stringAdverseEvent.suspectEntity.causalityProductRelatedness
..... author ΣI0..1Reference(Practitioner | PractitionerRole)AdverseEvent.suspectEntity.causalityAuthor
..... method ΣI0..1CodeableConceptProbabilityScale | Bayesian | Checklist
Binding: AdverseEventCausalityMethod (example)
... subjectMedicalHistory ΣI0..*Reference(Condition | Observation | AllergyIntolerance | FamilyMemberHistory | Immunization | Procedure | Media | DocumentReference)AdverseEvent.subjectMedicalHistory
... referenceDocument ΣI0..*Reference(DocumentReference)AdverseEvent.referenceDocument
... study ΣI0..*Reference(ResearchStudy)AdverseEvent.study

doco Documentation for this format

 

D.4.1.2 Terminology Bindings

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

D.4.1.3 Constraints

Constraints

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