The CommunicationRequest resource allows for change in the way eHealth automated processing creates Communication (of profile ehealth-message
) as a result of a submitted measurement or lack thereof for a particular Patient and context.
In the eHealth Infrastructure, automated processing generates Communication (of profile ehealth-message
) in the following cases:
By default, the Communication is created with recipient set to the one or more CareTeam associated with the CarePlan referencing the ProcedureRequest for which the measurement was made.
The CommunicationRequest is used to customize how and when Communications are created by automated processing:
If multiple CommunicationRequests for the same recipient are found, then only the newest is considered valid.
When automated processing creates Communication about a specific ProcedureRequest and Patient, the CareTeam is not set as recipient when a CommunicationRequest exists where:
basedOn
references the ProcedureRequestrecipient
references the CareTeamreasonCode
matches the Communication reasonCode (of the Communication created for CareTeam).priority
matches the Task priority (of the Task created for CareTeam).status
is ‘suspended’Setting the status
to any other value than ‘suspended’ disables the specified suppression of Communication with the CareTeam as recipient. The Communication is created with recipient set as the
remaining one or more CareTeam referenced from the CarePlan referencing the ProcedureRequest. In case no remaining CareTeam are referenced from the CarePlan, no Communication is created.
When automated processing creates Communication about a specific ProcedureRequest and Patient, additional Communication with the Patient as recipient is created if a CommunicationRequest exists where:
basedOn
references the ProcedureRequestrecipient
references the PatientreasonCode
matches the Communication reasonCode (of the Communication created for CareTeam).priority
matches the Task priority (of the Task created for CareTeam).status
is ‘active’Setting the status
to ‘suspended’ disables the specified creation of Communication with the Patient as recipient.
It is possible to use CommunicationRequest to override some default values of the Communication:
medium
of the Communication (created for the Patient or Careteam) overrides the Communication medium (of the Communication created for CareTeam).payload
of the Communication (created for the Patient) overrides the Communication payload (of the Communication created for CareTeam).A CommunicationRequest is related to Communication (ehealth-message
), Task (ehealth-task
), and ProcedureRequest (ehealth-procedureRequest
).
The official URL for this profile is:
http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-communication-request
This profile builds on CommunicationRequest.
This profile was published on Tue Mar 31 08:26:16 UTC 2020 as a draft by ehealth.sundhed.dk.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from CommunicationRequest
This structure is derived from CommunicationRequest
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
CommunicationRequest | 0..* | CommunicationRequest | ||
basedOn | 1..1 | Reference(ProcedureRequest) | ||
category | 0..* | CodeableConcept | Binding: MessageCategory (example) | |
priority | 0..1 | code | Binding: RequestPriority (required) | |
medium | 0..* | CodeableConcept | Binding: MessageMedium (example) | |
subject | 1..1 | Reference(Patient) | ||
recipient | 0..* | Reference(Patient | CareTeam) | ||
context | 1..1 | Reference(EpisodeOfCare) | ||
Documentation for this format |
This structure is derived from CommunicationRequest
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
CommunicationRequest | I | 0..* | CommunicationRequest | A request for information to be sent to a receiver |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: Common Languages (extensible) Max Binding: All Languages | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Unique identifier |
basedOn | Σ | 1..1 | Reference(ProcedureRequest) | Fulfills plan or proposal |
replaces | Σ | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request |
groupIdentifier | Σ | 0..1 | Identifier | Composite request this is part of |
status | ?!Σ | 1..1 | code | draft | active | suspended | cancelled | completed | entered-in-error | unknown Binding: RequestStatus (required) |
category | 0..* | CodeableConcept | Message category Binding: MessageCategory (example) | |
priority | Σ | 0..1 | code | Message urgency Binding: RequestPriority (required) |
medium | 0..* | CodeableConcept | A channel of communication Binding: MessageMedium (example) | |
subject | 1..1 | Reference(Patient) | Focus of message | |
recipient | 0..* | Reference(Patient | CareTeam) | Message recipient | |
topic | 0..* | Reference(Resource) | Focal resources | |
context | Σ | 1..1 | Reference(EpisodeOfCare) | Encounter or episode leading to message |
payload | I | 0..* | BackboneElement | Message payload |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
content[x] | 1..1 | Message part content | ||
contentString | string | |||
contentAttachment | Attachment | |||
contentReference | Reference(Resource) | |||
occurrence[x] | Σ | 0..1 | When scheduled | |
occurrenceDateTime | dateTime | |||
occurrencePeriod | Period | |||
authoredOn | Σ | 0..1 | dateTime | When request transitioned to being actionable |
sender | 0..1 | Reference(Device | Organization | Patient | Practitioner | RelatedPerson) | Message sender | |
requester | ΣI | 0..1 | BackboneElement | Who/what is requesting service cmr-1: onBehalfOf can only be specified if agent is practitioner or device |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
agent | Σ | 1..1 | Reference(Practitioner | Organization | Patient | RelatedPerson | Device) | Individual making the request |
onBehalfOf | ΣI | 0..1 | Reference(Organization) | Organization agent is acting for |
reasonCode | Σ | 0..* | CodeableConcept | Why is communication needed? Binding: ActReason (example) |
reasonReference | Σ | 0..* | Reference(Condition | Observation) | Why is communication needed? |
note | 0..* | Annotation | Comments made about communication request | |
Documentation for this format |
This structure is derived from CommunicationRequest
Differential View
This structure is derived from CommunicationRequest
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
CommunicationRequest | 0..* | CommunicationRequest | ||
basedOn | 1..1 | Reference(ProcedureRequest) | ||
category | 0..* | CodeableConcept | Binding: MessageCategory (example) | |
priority | 0..1 | code | Binding: RequestPriority (required) | |
medium | 0..* | CodeableConcept | Binding: MessageMedium (example) | |
subject | 1..1 | Reference(Patient) | ||
recipient | 0..* | Reference(Patient | CareTeam) | ||
context | 1..1 | Reference(EpisodeOfCare) | ||
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
CommunicationRequest | I | 0..* | CommunicationRequest | A request for information to be sent to a receiver |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: Common Languages (extensible) Max Binding: All Languages | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Unique identifier |
basedOn | Σ | 1..1 | Reference(ProcedureRequest) | Fulfills plan or proposal |
replaces | Σ | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request |
groupIdentifier | Σ | 0..1 | Identifier | Composite request this is part of |
status | ?!Σ | 1..1 | code | draft | active | suspended | cancelled | completed | entered-in-error | unknown Binding: RequestStatus (required) |
category | 0..* | CodeableConcept | Message category Binding: MessageCategory (example) | |
priority | Σ | 0..1 | code | Message urgency Binding: RequestPriority (required) |
medium | 0..* | CodeableConcept | A channel of communication Binding: MessageMedium (example) | |
subject | 1..1 | Reference(Patient) | Focus of message | |
recipient | 0..* | Reference(Patient | CareTeam) | Message recipient | |
topic | 0..* | Reference(Resource) | Focal resources | |
context | Σ | 1..1 | Reference(EpisodeOfCare) | Encounter or episode leading to message |
payload | I | 0..* | BackboneElement | Message payload |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
content[x] | 1..1 | Message part content | ||
contentString | string | |||
contentAttachment | Attachment | |||
contentReference | Reference(Resource) | |||
occurrence[x] | Σ | 0..1 | When scheduled | |
occurrenceDateTime | dateTime | |||
occurrencePeriod | Period | |||
authoredOn | Σ | 0..1 | dateTime | When request transitioned to being actionable |
sender | 0..1 | Reference(Device | Organization | Patient | Practitioner | RelatedPerson) | Message sender | |
requester | ΣI | 0..1 | BackboneElement | Who/what is requesting service cmr-1: onBehalfOf can only be specified if agent is practitioner or device |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
agent | Σ | 1..1 | Reference(Practitioner | Organization | Patient | RelatedPerson | Device) | Individual making the request |
onBehalfOf | ΣI | 0..1 | Reference(Organization) | Organization agent is acting for |
reasonCode | Σ | 0..* | CodeableConcept | Why is communication needed? Binding: ActReason (example) |
reasonReference | Σ | 0..* | Reference(Condition | Observation) | Why is communication needed? |
note | 0..* | Annotation | Comments made about communication request | |
Documentation for this format |
Path | Conformance | ValueSet |
CommunicationRequest.language | extensible | Common Languages Max Binding: All Languages |
CommunicationRequest.status | required | RequestStatus |
CommunicationRequest.category | example | MessageCategory |
CommunicationRequest.priority | required | RequestPriority |
CommunicationRequest.medium | example | MessageMedium |
CommunicationRequest.reasonCode | example | v3 Code System ActReason |
Id | Path | Details | Requirements |
dom-2 | CommunicationRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-1 | CommunicationRequest | If the resource is contained in another resource, it SHALL NOT contain any narrative : contained.text.empty() | |
dom-4 | CommunicationRequest | If 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-3 | CommunicationRequest | If 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-1 | CommunicationRequest.payload | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ele-1 | CommunicationRequest.requester | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
cmr-1 | CommunicationRequest.requester | onBehalfOf can only be specified if agent is practitioner or device : (agent.resolve() is Practitioner) or (agent.resolve() is Device) or onBehalfOf.exists().not() |