---
type: "resource"
title: "Communication"
resource: "Communication"
---
# Communication
## Introduction
## Scope and Usage
The purpose of a Communication resource is to surface that data was shared to track adherence to guidelines or protocols or to provide business documentation of actions taken. Communication can also be used as part of an information exchange to provide context about the information sharing occurring. Please see [below](#wrapping) for guidance on when this is appropriate.
Communication is one of the [event](workflow#event) resources in the FHIR [workflow](workflow) specification.
This resource is a record of a communication even if it is planned or has failed. A communication is a record of the conveyance of information from one entity, a sender, to another entity, a receiver. The sender and receivers may be patients, practitioners, related persons, organizations, or devices. Communication use cases include:
- A record or receipt of the reminder or alert delivered to a responsible provider
- A record or receipt of notification from the nurse to the on-call physician (or any other specified person) that a patient's temperature exceeds a value
- A record or receipt of response from a public health agency to a provider caring for a patient presenting with a communicable disease reportable to the public health agency
- A record or receipt of patient educational material sent by a provider to a patient
- Notification of inability to deliver lab results to ordering physician
- A record or receipt of submission of supplementary health information to a payer in support of a claim
Non-patient specific communication use cases may include:
- A record or receipt of nurse call from a hall bathroom
- A record or receipt of advisory for battery service from a pump
## Boundaries and Relationships
This resource represents a communication that has been or will be presented to a human being or where the communication process has at least initiated. It does not have to represent the actual flow of communication, but in some use cases could represent the actual flow of communication (for example secure messaging between provider and patient). If your use case does not require presenting information to a recipient, consider a more structured and automated exchange protocol (see [Approaches to Exchanging FHIR Data](exchanging)). While [AuditEvent](auditevent) can track electronic disclosures of information, it cannot track conversations, phone calls, letters and other interactions that are not system-to-system. And even for system-to-system communications, the specific end recipients might not be known. Furthermore, [AuditEvent](auditevent) resources are not considered to be "part" of the patient record, while **Communication** instances are. The **Communication** resource is not used as a general audit mechanism to track every disclosure of every record. Rather, it is used when a clinician or other user wants to ensure a record of a particular communication is itself maintained as part of the reviewable health record.
[DeviceAlert](devicealert) resources are not necessarily (or even usually) targeted at a specific intended receiver, and they are often continuous and ongoing. In Communication there is a specific intended sender and receiver, and the information is delivered only once. Another difference is that [DeviceAlert](devicealert) is not sent with the purpose of “adherence to guidelines or protocols or to provide business documentation of actions taken.”
[Flag](flag) resources represent a continuous ongoing "communication" alerting anyone dealing with the patient of certain precautions to take or issues to be aware of. The flags are continuously present as an ongoing reminder. This is distinct from **Communication** where there is a specific intended sender and receiver and the information is delivered only once.
When there is a need to organize clinical and administrative content into sections, the [Composition](composition) resource should be used instead. For example, an initial case report to a public health agency may include organized sections for vital signs, immunizations, social history, etc.
**Communication and Encounter**
The Communication is about the transfer of information (which might or might not occur as part of an encounter), while Encounter is about the coming together (in person or virtually) of a Patient with a Practitioner. Communication does not deal with the duration of a call, it represents the fact that information was transferred at a particular point in time.
The phone calls involving the Patient should be handled using [Encounter](encounter). Phone calls not involving the patient (e.g. between practitioners or practitioner to relative) that are tracked for billing or other purposes can use Communication to represent the information transferred but are not ideal to represent the call itself. A better mechanism for handling such calls will be explored in a future release.
## Background and Context
Provides additional detail on exactly how the resource is to be used
## Notes
**Notes to reviewers:**
_At this time, the code bindings are placeholders to be fleshed out upon further review by the community._
### Communication.sender and Communication.recipient
Communication.sender allows Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService and Communication.recipient allows Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam | HealthcareService - but it is not unusual to have a communication target - even a defined one - where it is unknown what kind of role the person is playing.
If the communication is to or from an individual whose role is not known (practitioner, patient or related person) - for example, only email address is captured in the system - then RelatedPerson should be used by default.
### Using Communication to wrap or accompany data
In FHIR, data is typically shared between systems without any need for the Communication resource to accompany or contain the data being shared, i.e. all FHIR exchanges are communications of some form, but that doesn't mean they need the Communication resource. However, in some cases, when data is shared there is a need to provide context about why the data is being conveyed and Communication is one of the mechanisms that FHIR provides that can share this context. Specifically, Communication allows conveying information about reasons for sharing, encounter that provides context for sharing, order or protocol that drove the need to share, etc. Note that some contextual information is expected to be captured by most FHIR systems even in absence of Communication, such as where did the data come from and when was the data received. This metadata is generally captured in Provenance. In addition to Communication, MessageHeader can capture similar metadata and Composition in FHIR documents can also serve a similar purpose. Refer to the [decision tree](exchanging#decision-tree) in [Approaches to Exchanging FHIR Data](exchanging) for guidance on which data sharing mechanism is appropriate in which circumstances. If mixing multiple mechanisms to convey communication metadata, care should be taken to ensure that each mechanism is necessary and the information conveyed in each layer is appropriately consistent.
### Communication and CommunicationRequest
There is no requirement that Communication and CommunicationRequest always go together. Communication can exist without there having been a CommunicationRequest. For example, a practitioner might capture that they have provided a smoking cessation pamphlet to a patient that would be a Communication instance, but there would have been no "request" that led to the action (unsolicited). As well, a CommunicationRequest can be fulfilled in many ways, e.g. by phone call, email, system to system data sharing and there might not be a requirement to surface this data sharing at the clinical / business level, i.e. no need for a Communication instance.
Where there is a need to explicitly track fulfillment of a CommunicationRequest, Communication is the most natural resource to establish this linkage. The event can be tied to the request using Communication.basedOn.
## StructureDefinition
### Elements (Simplified)
- **[Communication](/communication-definitions#Communication)** [0..*]: - A clinical or business level record of information being transmitted or shared
- **[Communication.identifier](/communication-definitions#Communication.identifier)** [0..*]: [Identifier](/Identifier) Unique identifier
- **[Communication.basedOn](/communication-definitions#Communication.basedOn)** [0..*]: [Reference(CarePlan](/Reference(CarePlan), [CommunicationRequest](/CommunicationRequest), [DeviceRequest](/DeviceRequest), [MedicationRequest](/MedicationRequest), [NutritionOrder](/NutritionOrder), [ServiceRequest](/ServiceRequest), [Task](/Task), [VisionPrescription)](/VisionPrescription)) Request fulfilled by this communication
- **[Communication.partOf](/communication-definitions#Communication.partOf)** [0..*]: Reference([Resource](/Resource)) Part of referenced event (e.g. Communication, Procedure)
- **[Communication.inResponseTo](/communication-definitions#Communication.inResponseTo)** [0..*]: Reference([Communication](/Communication)) Reply to
- **[Communication.status](/communication-definitions#Communication.status)** [1..1]: [code](/code) required:[event-status](/valueset-event-status) preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
- **[Communication.statusReason](/communication-definitions#Communication.statusReason)** [0..1]: [CodeableConcept](/CodeableConcept) example:[communication-not-done-reason](/valueset-communication-not-done-reason) Reason for current status
- **[Communication.category](/communication-definitions#Communication.category)** [0..*]: [CodeableConcept](/CodeableConcept) example:[communication-category](/valueset-communication-category) Message category
- **[Communication.priority](/communication-definitions#Communication.priority)** [0..1]: [code](/code) required:[request-priority](/valueset-request-priority) routine | urgent | asap | stat
- **[Communication.medium](/communication-definitions#Communication.medium)** [0..*]: [CodeableConcept](/CodeableConcept) example:[v3-ParticipationMode](/valueset-v3-ParticipationMode) A channel of communication
- **[Communication.subject](/communication-definitions#Communication.subject)** [0..1]: [Reference(Patient](/Reference(Patient), [Group)](/Group)) Focus of message
- **[Communication.topic](/communication-definitions#Communication.topic)** [0..1]: [CodeableConcept](/CodeableConcept) example:[communication-topic](/valueset-communication-topic) Description of the purpose/content
- **[Communication.about](/communication-definitions#Communication.about)** [0..*]: Reference([Resource](/Resource)) Resources that pertain to this communication
- **[Communication.encounter](/communication-definitions#Communication.encounter)** [0..1]: Reference([Encounter](/Encounter)) The Encounter during which this Communication was created
- **[Communication.sent](/communication-definitions#Communication.sent)** [0..1]: [dateTime](/dateTime) When sent
- **[Communication.received](/communication-definitions#Communication.received)** [0..1]: [dateTime](/dateTime) When received
- **[Communication.recipient](/communication-definitions#Communication.recipient)** [0..*]: [Reference(CareTeam](/Reference(CareTeam), [Device](/Device), [Group](/Group), [HealthcareService](/HealthcareService), [Location](/Location), [Organization](/Organization), [Patient](/Patient), [Practitioner](/Practitioner), [PractitionerRole](/PractitionerRole), [RelatedPerson](/RelatedPerson), [Endpoint)](/Endpoint)) Who the information is shared with
- **[Communication.sender](/communication-definitions#Communication.sender)** [0..1]: [Reference(Device](/Reference(Device), [Organization](/Organization), [Patient](/Patient), [Practitioner](/Practitioner), [PractitionerRole](/PractitionerRole), [RelatedPerson](/RelatedPerson), [HealthcareService](/HealthcareService), [Endpoint](/Endpoint), [CareTeam)](/CareTeam)) Who shares the information
- **[Communication.reason](/communication-definitions#Communication.reason)** [0..*]: [CodeableReference](/CodeableReference) example:[clinical-findings](/valueset-clinical-findings) Indication for message
- **[Communication.payload](/communication-definitions#Communication.payload)** [0..*]: [BackboneElement](/BackboneElement) Message payload
- **[Communication.payload.content[x]](/communication-definitions#Communication.payload.content%5Bx%5D)** [1..1]: [Attachment](/Attachment), Reference([Resource](/Resource)), [CodeableConcept](/CodeableConcept) Message part content
- **[Communication.note](/communication-definitions#Communication.note)** [0..*]: [Annotation](/Annotation) Comments made about the communication
## Mappings
- [Communication Mappings](/communication-mappings) — 29 mapping entries
## Implementation Guide
### implementationguide-Communication-core.xml
```xml
```
## Resource Packs
### list-Communication-packs.xml
```xml
-
```
## Search Parameters
- [based-on](/communication-search#based-on) — **reference** — Request fulfilled by this communication — `Communication.basedOn`
- [category](/communication-search#category) — **token** — Message category — `Communication.category`
- [encounter](/communication-search#encounter) — **reference** — The Encounter during which this Communication was created — `Communication.encounter`
- [identifier](/communication-search#identifier) — **token** — Unique identifier — `Communication.identifier`
- [medium](/communication-search#medium) — **token** — A channel of communication — `Communication.medium`
- [part-of](/communication-search#part-of) — **reference** — Part of referenced event (e.g. Communication, Procedure) — `Communication.partOf`
- [patient](/communication-search#patient) — **reference** — Focus of message — `Communication.subject.where(resolve() is Patient)`
- [received](/communication-search#received) — **date** — When received — `Communication.received`
- [recipient](/communication-search#recipient) — **reference** — Who the information is shared with — `Communication.recipient`
- [sender](/communication-search#sender) — **reference** — Who shares the information — `Communication.sender`
- [sent](/communication-search#sent) — **date** — When sent — `Communication.sent`
- [status](/communication-search#status) — **token** — preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown — `Communication.status`
- [subject](/communication-search#subject) — **reference** — Focus of message — `Communication.subject`
- [topic](/communication-search#topic) — **token** — Description of the purpose/content — `Communication.topic`
- [reason-code](/communication-search#reason-code) — **token** — Indication for the message — `Communication.reason.concept`
- [reason-reference](/communication-search#reason-reference) — **reference** — Indication for the message — `Communication.reason.reference`
- [in-response-to](/communication-search#in-response-to) — **reference** — Reply to — `Communication.inResponseTo`
[Full Search Parameters](/communication-search)
## Examples
- [communication-example](/communication-example-communication-example) — communication-example
- [communication-example-fm-attachment](/communication-example-communication-example-fm-attachment) — communication-example-fm-attachment
- [communication-example-fm-solicited-attachment](/communication-example-communication-example-fm-solicited-attachment) — communication-example-fm-solicited-attachment
- [communication-examples-header](/communication-example-communication-examples-header) — communication-examples-header
- [example](/communication-example-example) — communication-example — An example of an alert message
- [fm-attachment](/communication-example-fm-attachment) — communication-example-fm-attachment — An example of an unsolicited attachment - provision of additional information
- [fm-solicited](/communication-example-fm-solicited) — communication-example-fm-solicited-attachment — An example of a response to a request for additional information
[Full Examples](/communication-examples)
## Mapping Exceptions
### communication-event-mapping-exceptions.xml
### Divergent Elements
- **Event.identifier** → **Communication.identifier**
- shortUnmatched | reason=Unknown | pattern=Business identifier for communication | resource=Unique identifier
- definitionUnmatched | reason=Unknown | pattern=Business identifiers assigned to this communication by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server. | resource=Business identifiers assigned to this communication by the performer or other systems which remain constant as the resource is updated and propagates from server to server.
- commentsUnmatched | reason=Unknown | pattern=Note: This is a business identifier, not a resource identifier (see [discussion](resource.html#identifiers)). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number. | resource=This is a business identifier, not a resource identifier (see [discussion](resource.html#identifiers)). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number.
- **Event.basedOn** → **Communication.basedOn**
- missingTypes | reason=Unknown | pattern=Reference(Request)
- extraTypes | reason=Unknown
- shortUnmatched | reason=Unknown | pattern=Fulfills plan, proposal or order | resource=Request fulfilled by this communication
- definitionUnmatched | reason=Unknown | pattern=A plan, proposal or order that is fulfilled in whole or in part by this communication. | resource=An order, proposal or plan fulfilled in whole or in part by this Communication.
- requirementsUnmatched | reason=Unknown | pattern=Allows tracing of authorization for the communication and tracking whether proposals/recommendations were acted upon.
- **Event.partOf** → **Communication.partOf**
- missingTypes | reason=Unknown | pattern=Reference(Event)
- extraTypes | reason=Unknown
- definitionUnmatched | reason=Unknown | pattern=A larger event of which this particular communication is a component or step. | resource=A larger event (e.g. Communication, Procedure) of which this particular communication is a component or step.
- commentsUnmatched | reason=Unknown | pattern=Not to be used to link an communication to an Encounter - use 'context' for that. | resource=The event the communication was part of - e.g. if you disclosed as "part" of counselling, it would be partOf that Procedure.
- **Event.status** → **Communication.status**
- shortUnmatched | reason=Unknown | pattern=preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error | unknown | resource=preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
- definitionUnmatched | reason=Unknown | pattern=The current state of the communication. | resource=The status of the transmission.
- commentsUnmatched | reason=Unknown | pattern=A nominal state-transition diagram can be found in the (Event pattern documentation
Unknown does not represent "other" - one of the defined statuses must apply. Unknown is used when the authoring system is not sure what the current status is. | resource=This element is labeled as a modifier because the status contains the codes aborted and entered-in-error that mark the communication as not currently valid.
- **Event.statusReason** → **Communication.statusReason**
- summary | reason=Unknown | pattern=false
- definitionUnmatched | reason=Unknown | pattern=Captures the reason for the current state of the communication. | resource=Captures the reason for the current state of the Communication.
- commentsUnmatched | reason=Unknown | pattern=This is generally only used for "exception" statuses such as "not-done", "suspended" or "cancelled". The reason for performing the event at all is captured in reasonCode, not here.
. | resource=This is generally only used for "exception" statuses such as "not-done", "suspended" or "aborted". The reason for performing the event at all is captured in reasonCode, not here.
- **Event.subject** → **Communication.subject**
- shortUnmatched | reason=Unknown | pattern=Individual service was done for/to | resource=Focus of message
- definitionUnmatched | reason=Unknown | pattern=The individual or set of individuals the action is being or was performed on. | resource=The patient or group that was the focus of this communication.
- requirementsUnmatched | reason=Unknown | pattern=Links the communication to the Patient context. May also affect access control.
- **Event.encounter** → **Communication.encounter**
- shortUnmatched | reason=Unknown | pattern=Encounter the communication is part of | resource=The Encounter during which this Communication was created
- definitionUnmatched | reason=Unknown | pattern=The Encounter during which this communication was created or to which the creation of this record is tightly associated. | resource=The Encounter during which this Communication was created or to which the creation of this record is tightly associated.
- commentsUnmatched | reason=Unknown | pattern=This will typically be the encounter the communication was created during, but some communications may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission lab tests). | resource=This will typically be the encounter the event occurred within, but some activities may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter.
- requirementsUnmatched | reason=Unknown | pattern=Links the communication to the Encounter context. May also affect access control.
- **Event.occurrence[x]** → **Communication.sent**
- missingTypes | reason=Unknown | pattern=Period, Timing
- summary | reason=Unknown | pattern=true
- shortUnmatched | reason=Unknown | pattern=When communication occurred/is occurring | resource=When sent
- definitionUnmatched | reason=Unknown | pattern=The date, period or timing when the communication did occur or is occurring. | resource=The time when this communication was sent.
- commentsUnmatched | reason=Unknown | pattern=This indicates when the activity actually occurred or is occurring, not when it was asked/requested/ordered to occur. For the latter, look at the occurence element of the Request this {{event}} is "basedOn". The status code allows differentiation of whether the timing reflects a historic event or an ongoing event. Ongoing events should not include an upper bound in the Period or Timing.bounds.
.
- **Event.occurrence[x]** → **Communication.received**
- missingTypes | reason=Unknown | pattern=Period, Timing
- summary | reason=Unknown | pattern=true
- shortUnmatched | reason=Unknown | pattern=When communication occurred/is occurring | resource=When received
- definitionUnmatched | reason=Unknown | pattern=The date, period or timing when the communication did occur or is occurring. | resource=The time when this communication arrived at the destination.
- commentsUnmatched | reason=Unknown | pattern=This indicates when the activity actually occurred or is occurring, not when it was asked/requested/ordered to occur. For the latter, look at the occurence element of the Request this {{event}} is "basedOn". The status code allows differentiation of whether the timing reflects a historic event or an ongoing event. Ongoing events should not include an upper bound in the Period or Timing.bounds.
.
- **Event.performer.actor** → **Communication.recipient**
- extraTypes | reason=Unknown
- summary | reason=Unknown | pattern=true
- shortUnmatched | reason=Unknown | pattern=Who performed communication | resource=Who the information is shared with
- definitionUnmatched | reason=Unknown | pattern=Indicates who or what performed the communication. | resource=The entity (e.g. person, organization, clinical information system, care team or device) which is the target of the communication.
- **Event.performer.actor** → **Communication.sender**
- extraTypes | reason=Unknown
- summary | reason=Unknown | pattern=true
- shortUnmatched | reason=Unknown | pattern=Who performed communication | resource=Who shares the information
- definitionUnmatched | reason=Unknown | pattern=Indicates who or what performed the communication. | resource=The entity (e.g. person, organization, clinical information system, or device) which is the source of the communication.
- **Event.reason** → **Communication.reason**
- shortUnmatched | reason=Unknown | pattern=Why was communication performed? | resource=Indication for message
- definitionUnmatched | reason=Unknown | pattern=Describes why the communication occurred in coded or textual form or Indicates another resource whose existence justifies this communication. | resource=The reason or justification for the communication.
- commentsUnmatched | reason=Unknown | pattern=Textual reasons can be captured using reasonCode.text. | resource=Textual reasons can be captured using reason.concept.text.
- **Event.note** → **Communication.note**
- shortUnmatched | reason=Unknown | pattern=Comments made about the event | resource=Comments made about the communication
- definitionUnmatched | reason=Unknown | pattern=Comments made about the communication by the performer, subject or other participants. | resource=Additional notes or commentary about the communication by the sender, receiver or other interested parties.
### Unmapped Elements
- **Event.reported** — Unknown
- **Event.relevantHistory** — Unknown
- **Event.code** — Unknown
- **Event.location** — Unknown
- **Event.performer.function** — Unknown
- **Event.category** — Unknown
- **Event.recorded** — Unknown
- **Event.product** — Unknown
- **Event.performer** — Unknown
- **Event.researchStudy** — Unknown
### communication-fivews-mapping-exceptions.xml
### Divergent Elements
- **FiveWs.context** → **Communication.about**
### Unmapped Elements
- **FiveWs.what** — Unknown
- **FiveWs.recorded** — Unknown
- **FiveWs.author** — Unknown
- **FiveWs.cause** — Unknown
- **FiveWs.version** — Unknown
- **FiveWs.witness** — Unknown
- **FiveWs.where** — Unknown
- **FiveWs.init** — Unknown
- **FiveWs.source** — Unknown
- **FiveWs.who** — Unknown
- **FiveWs.planned** — Unknown