Qi-Core Implementation Guide (Release 2.1 Trial-Use Ballot)

This page is part of the Quality Improvement Core Framework (v2.1.0: STU 3 Ballot 1) based on FHIR R3. The current version which supercedes this version is 4.1.1. For a full list of available versions, see the Directory of published versions

D.4.1 StructureDefinition: qicore-communicationrequest

Examples:

CommunicationRequest 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-communicationrequest

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

This profile builds on CommunicationRequest.

This profile was published on Mon Aug 21 00:00:00 AEST 2017 as a draft by Health Level Seven International (Clinical Quality Information - QICore).

Description of Profiles, Differentials, and Snapshots.

NameFlagsCard.TypeDescription & Constraintsdoco
.. CommunicationRequest 0..*A request for information to be sent to a receiver
... status S1..1codedraft | active | suspended | cancelled | completed | entered-in-error | unknown
Binding: RequestStatus (required)
... category S0..*CodeableConceptMessage category
Binding: CommunicationCategory (example)
... medium 0..*CodeableConceptA channel of communication
Binding: v3 Code System ParticipationMode (example)
... subject S0..1Reference(QICore-Patient), Reference(Group)Encounter or episode leading to message
... recipient S0..*Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson), Reference(Group), Reference(CareTeam)Message receipient
... context S0..1Reference(QICore-Encounter), Reference(EpisodeOfCare)Encounter or episode leading to message
... occurrence[x] 0..1dateTime, PeriodWhen scheduled
... sender S0..1Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson)Message sender
... requester 0..1BackboneElementWho/what us requesting service
... reasonCode 0..*CodeableConceptWhy is communication needed?
Binding: v3 Code System ActReason (example)
... communicationrequest-orderedBy 0..1Reference(Practitioner), Reference(Organization), Reference(Device), Reference(Patient)Agent that ordered the communication
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-orderedBy
... procedurerequest-authorizedBy 0..1Reference(Practitioner)Practitioner who authorized request
URL: http://hl7.org/fhir/StructureDefinition/procedurerequest-authorizedBy
... communicationrequest-reasonRejected 0..1CodeableConceptReason why request was rejected
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-reasonRejected
Binding: Communication reason not performed codes (example)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. CommunicationRequest I0..*A request for information to be sent 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: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... communicationrequest-orderedBy I0..1Reference(Practitioner), Reference(Organization), Reference(Device), Reference(Patient)Agent that ordered the communication
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-orderedBy
... procedurerequest-authorizedBy I0..1Reference(Practitioner)Practitioner who authorized request
URL: http://hl7.org/fhir/StructureDefinition/procedurerequest-authorizedBy
... communicationrequest-reasonRejected I0..1CodeableConceptReason why request was rejected
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-reasonRejected
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierUnique identifier
... basedOn Σ0..*Reference(Resource)Fulfills plan or proposal
... replaces Σ0..*Reference(CommunicationRequest)Request(s) replaced by this request
... groupIdentifier Σ0..1IdentifierComposite request this is part of
... status ?!SΣ1..1codedraft | active | suspended | cancelled | completed | entered-in-error | unknown
Binding: RequestStatus (required)
... category S0..*CodeableConceptMessage category
Binding: CommunicationCategory (example)
... priority Σ0..1codeMessage urgency
Binding: RequestPriority (required)
... medium 0..*CodeableConceptA channel of communication
Binding: v3 Code System ParticipationMode (example)
... subject S0..1Reference(QICore-Patient), Reference(Group)Encounter or episode leading to message
... recipient S0..*Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson), Reference(Group), Reference(CareTeam)Message receipient
... topic 0..*Reference(Resource)Focal resources
... context SΣ0..1Reference(QICore-Encounter), Reference(EpisodeOfCare)Encounter or episode leading to message
... payload I0..*BackboneElementMessage payload
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... content[x] 1..1string, Attachment, Reference(Resource)Message part content
... occurrence[x] Σ0..1dateTime, PeriodWhen scheduled
... authoredOn Σ0..1dateTimeWhen request transitioned to being actionable
... sender S0..1Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson)Message sender
... requester ΣI0..1BackboneElementWho/what us requesting service
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... agent Σ1..1Reference(Practitioner), Reference(Organization), Reference(Patient), Reference(RelatedPerson), Reference(Device)Individual making the request
.... onBehalfOf ΣI0..1Reference(Organization)Organization agent is acting for
... reasonCode Σ0..*CodeableConceptWhy is communication needed?
Binding: v3 Code System ActReason (example)
... reasonReference Σ0..*Reference(Condition), Reference(Observation)Why is communication needed?
... note 0..*AnnotationComments made about communication request

doco Documentation for this format

Differential View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CommunicationRequest 0..*A request for information to be sent to a receiver
... status S1..1codedraft | active | suspended | cancelled | completed | entered-in-error | unknown
Binding: RequestStatus (required)
... category S0..*CodeableConceptMessage category
Binding: CommunicationCategory (example)
... medium 0..*CodeableConceptA channel of communication
Binding: v3 Code System ParticipationMode (example)
... subject S0..1Reference(QICore-Patient), Reference(Group)Encounter or episode leading to message
... recipient S0..*Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson), Reference(Group), Reference(CareTeam)Message receipient
... context S0..1Reference(QICore-Encounter), Reference(EpisodeOfCare)Encounter or episode leading to message
... occurrence[x] 0..1dateTime, PeriodWhen scheduled
... sender S0..1Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson)Message sender
... requester 0..1BackboneElementWho/what us requesting service
... reasonCode 0..*CodeableConceptWhy is communication needed?
Binding: v3 Code System ActReason (example)
... communicationrequest-orderedBy 0..1Reference(Practitioner), Reference(Organization), Reference(Device), Reference(Patient)Agent that ordered the communication
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-orderedBy
... procedurerequest-authorizedBy 0..1Reference(Practitioner)Practitioner who authorized request
URL: http://hl7.org/fhir/StructureDefinition/procedurerequest-authorizedBy
... communicationrequest-reasonRejected 0..1CodeableConceptReason why request was rejected
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-reasonRejected
Binding: Communication reason not performed codes (example)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CommunicationRequest I0..*A request for information to be sent 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: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... communicationrequest-orderedBy I0..1Reference(Practitioner), Reference(Organization), Reference(Device), Reference(Patient)Agent that ordered the communication
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-orderedBy
... procedurerequest-authorizedBy I0..1Reference(Practitioner)Practitioner who authorized request
URL: http://hl7.org/fhir/StructureDefinition/procedurerequest-authorizedBy
... communicationrequest-reasonRejected I0..1CodeableConceptReason why request was rejected
URL: http://hl7.org/fhir/StructureDefinition/communicationrequest-reasonRejected
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierUnique identifier
... basedOn Σ0..*Reference(Resource)Fulfills plan or proposal
... replaces Σ0..*Reference(CommunicationRequest)Request(s) replaced by this request
... groupIdentifier Σ0..1IdentifierComposite request this is part of
... status ?!SΣ1..1codedraft | active | suspended | cancelled | completed | entered-in-error | unknown
Binding: RequestStatus (required)
... category S0..*CodeableConceptMessage category
Binding: CommunicationCategory (example)
... priority Σ0..1codeMessage urgency
Binding: RequestPriority (required)
... medium 0..*CodeableConceptA channel of communication
Binding: v3 Code System ParticipationMode (example)
... subject S0..1Reference(QICore-Patient), Reference(Group)Encounter or episode leading to message
... recipient S0..*Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson), Reference(Group), Reference(CareTeam)Message receipient
... topic 0..*Reference(Resource)Focal resources
... context SΣ0..1Reference(QICore-Encounter), Reference(EpisodeOfCare)Encounter or episode leading to message
... payload I0..*BackboneElementMessage payload
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... content[x] 1..1string, Attachment, Reference(Resource)Message part content
... occurrence[x] Σ0..1dateTime, PeriodWhen scheduled
... authoredOn Σ0..1dateTimeWhen request transitioned to being actionable
... sender S0..1Reference(QICore-Device), Reference(QICore-Organization), Reference(QICore-Patient), Reference(QICore-Practitioner), Reference(QICore-RelatedPerson)Message sender
... requester ΣI0..1BackboneElementWho/what us requesting service
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... agent Σ1..1Reference(Practitioner), Reference(Organization), Reference(Patient), Reference(RelatedPerson), Reference(Device)Individual making the request
.... onBehalfOf ΣI0..1Reference(Organization)Organization agent is acting for
... reasonCode Σ0..*CodeableConceptWhy is communication needed?
Binding: v3 Code System ActReason (example)
... reasonReference Σ0..*Reference(Condition), Reference(Observation)Why is communication needed?
... note 0..*AnnotationComments made about communication request

doco Documentation for this format

 

D.4.1.2 Terminology Bindings

Terminology Bindings

PathNameConformanceValueSet
CommunicationRequest.languageCommon LanguagesextensibleCommon Languages
CommunicationRequest.statusRequestStatusrequiredRequestStatus
CommunicationRequest.categoryCommunicationCategoryexampleCommunicationCategory
CommunicationRequest.priorityRequestPriorityrequiredRequestPriority
CommunicationRequest.mediumv3 Code System ParticipationModeexamplev3 Code System ParticipationMode
CommunicationRequest.reasonCodev3 Code System ActReasonexamplev3 Code System ActReason

D.4.1.3 Constraints

Constraints

IdPathDetailsRequirements
dom-2CommunicationRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-1CommunicationRequestIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-4CommunicationRequestIf 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-3CommunicationRequestIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
ele-1CommunicationRequest.extensionAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1CommunicationRequest.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CommunicationRequest.extensionAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1CommunicationRequest.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CommunicationRequest.extensionAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1CommunicationRequest.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CommunicationRequest.extensionAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1CommunicationRequest.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CommunicationRequest.payloadAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1CommunicationRequest.requesterAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
cmr-1CommunicationRequest.requesteronBehalfOf can only be specified if agent is practitioner or device
: (agent.resolve() is Practitioner) or (agent.resolve() is Device) or onBehalfOf.exists().not()