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

QI-Core Implementation Guide, Clinical Quality Improvement WG - CI build for vesion 4.0.0). This version is based on the current content of https://github.com/cqframework/qi-core/ and changes regularly. 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..*Medical care, research study or other healthcare event causing physical injury
... 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)
Max Binding: AllLanguages
... 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)
... 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)
... event SΣ1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example)
... 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 Σ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)
... severity Σ0..1CodeableConceptmild | moderate | severe
Binding: AdverseEventSeverity (required)
... outcome Σ0..1CodeableConceptresolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown
Binding: AdverseEventOutcome (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 ΣI0..*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 ΣI0..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)
..... productRelatedness Σ0..1stringAdverseEvent.suspectEntity.causalityProductRelatedness
..... author Σ0..1Reference(Practitioner | PractitionerRole)AdverseEvent.suspectEntity.causalityAuthor
..... method Σ0..1CodeableConceptProbabilityScale | Bayesian | Checklist
Binding: AdverseEventCausalityMethod (example)
... 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

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. AdverseEvent I0..*Medical care, research study or other healthcare event causing physical injury
... 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)
Max Binding: AllLanguages
... 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)
... 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)
... event SΣ1..1CodeableConceptType of the event itself in relation to the subject
Binding: SNOMEDCTClinicalFindings (example)
... 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 Σ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)
... severity Σ0..1CodeableConceptmild | moderate | severe
Binding: AdverseEventSeverity (required)
... outcome Σ0..1CodeableConceptresolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown
Binding: AdverseEventOutcome (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 ΣI0..*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 ΣI0..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)
..... productRelatedness Σ0..1stringAdverseEvent.suspectEntity.causalityProductRelatedness
..... author Σ0..1Reference(Practitioner | PractitionerRole)AdverseEvent.suspectEntity.causalityAuthor
..... method Σ0..1CodeableConceptProbabilityScale | Bayesian | Checklist
Binding: AdverseEventCausalityMethod (example)
... 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

 

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-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-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-6AdverseEventA resource should have narrative for robust management
: text.div.exists()
dom-5AdverseEventIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
ele-1AdverseEvent.suspectEntityAll 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())