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

Introduction:

See the patterns page for implementation and usage patterns.

Examples:

Written Alert 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-communication

Profile of Communication for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

This profile builds on Communication.

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
.. Communication I0..*A record of information transmitted from a sender to a receiver
... 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..*IdentifierUnique identifier
... instantiatesCanonical Σ0..*canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire)Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates external protocol or definition
... basedOn Σ0..*Reference(Resource)Request fulfilled by this communication
... partOf Σ0..*Reference(Resource)Part of this action
... inResponseTo 0..*Reference(Communication)Reply to
... status ?!SΣ1..1codepreparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
Binding: EventStatus (required)
... statusReason SΣ0..1CodeableConceptReason for current status
Binding: CommunicationNotDoneReason (example)
... category S0..*CodeableConceptMessage category
Binding: CommunicationCategory (example)
... priority Σ0..1codeMessage urgency
Binding: RequestPriority (required)
... medium S0..*CodeableConceptA channel of communication
Binding: v3 Code System ParticipationMode (example)
... subject SΣ0..1Reference(QICorePatient | Group)Focus of message
... topic 0..1CodeableConceptDescription of the purpose/content
Binding: CommunicationTopic (example)
... about 0..*Reference(Resource)Resources that pertain to this communication
... encounter SΣ0..1Reference(QICoreEncounter)Encounter created as part of
... sent S0..1dateTimeWhen sent
... received S0..1dateTimeWhen received
... recipient S0..*Reference(QICoreDevice | QICoreOrganization | QICorePatient | QICorePractitioner | QICoreRelatedPerson | Group)Message recipient
... sender S0..1Reference(QICoreDevice | QICoreOrganization | QICorePatient | QICorePractitioner | QICoreRelatedPerson)Message sender
... reasonCode SΣ0..*CodeableConceptIndication for message
Binding: SNOMEDCTClinicalFindings (example)
... reasonReference Σ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)Why was communication done?
... payload I0..*BackboneElementMessage payload
.... 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
.... content[x] 1..1Message part content
..... contentStringstring
..... contentAttachmentAttachment
..... contentReferenceReference(http://hl7.org/fhir/R4/resource.html)
... note 0..*AnnotationComments made about the communication

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Communication I0..*A record of information transmitted from a sender to a receiver
... 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..*IdentifierUnique identifier
... instantiatesCanonical Σ0..*canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire)Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates external protocol or definition
... basedOn Σ0..*Reference(Resource)Request fulfilled by this communication
... partOf Σ0..*Reference(Resource)Part of this action
... inResponseTo 0..*Reference(Communication)Reply to
... status ?!SΣ1..1codepreparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
Binding: EventStatus (required)
... statusReason SΣ0..1CodeableConceptReason for current status
Binding: CommunicationNotDoneReason (example)
... category S0..*CodeableConceptMessage category
Binding: CommunicationCategory (example)
... priority Σ0..1codeMessage urgency
Binding: RequestPriority (required)
... medium S0..*CodeableConceptA channel of communication
Binding: v3 Code System ParticipationMode (example)
... subject SΣ0..1Reference(QICorePatient | Group)Focus of message
... topic 0..1CodeableConceptDescription of the purpose/content
Binding: CommunicationTopic (example)
... about 0..*Reference(Resource)Resources that pertain to this communication
... encounter SΣ0..1Reference(QICoreEncounter)Encounter created as part of
... sent S0..1dateTimeWhen sent
... received S0..1dateTimeWhen received
... recipient S0..*Reference(QICoreDevice | QICoreOrganization | QICorePatient | QICorePractitioner | QICoreRelatedPerson | Group)Message recipient
... sender S0..1Reference(QICoreDevice | QICoreOrganization | QICorePatient | QICorePractitioner | QICoreRelatedPerson)Message sender
... reasonCode SΣ0..*CodeableConceptIndication for message
Binding: SNOMEDCTClinicalFindings (example)
... reasonReference Σ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)Why was communication done?
... payload I0..*BackboneElementMessage payload
.... 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
.... content[x] 1..1Message part content
..... contentStringstring
..... contentAttachmentAttachment
..... contentReferenceReference(http://hl7.org/fhir/R4/resource.html)
... note 0..*AnnotationComments made about the communication

doco Documentation for this format

 

D.4.1.2 Terminology Bindings

Terminology Bindings

PathConformanceValueSet
Communication.languagepreferredCommonLanguages
Max Binding: AllLanguages
Communication.statusrequiredEventStatus
Communication.statusReasonexampleCommunicationNotDoneReason
Communication.categoryexampleCommunicationCategory
Communication.priorityrequiredRequestPriority
Communication.mediumexamplev3.ParticipationMode
Communication.topicexampleCommunicationTopic
Communication.reasonCodeexampleSNOMEDCTClinicalFindings

D.4.1.3 Constraints

Constraints

IdPathDetailsRequirements
dom-2CommunicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-4CommunicationIf 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-3CommunicationIf 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-6CommunicationA resource should have narrative for robust management
: text.div.exists()
dom-5CommunicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
ele-1Communication.payloadAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())