R4 Ballot #1 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.3.0: R4 Ballot 2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

8.23 Resource Communication - Content

Patient Care Work GroupMaturity Level: 2 Trial Use Compartments: Device, Encounter, Patient, Practitioner, RelatedPerson

An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency was notified about a reportable condition.

Communication is one of the event resources in the FHIR workflow specification.

This resource is a record of a communication even if it is planned or has failed. A communication is a 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 reminder or alert delivered to a responsible provider
  • A recorded notification from the nurse to the on call physician (or any other specified person) that a patient's temperature exceeds a value
  • A notification to a public health agency of a patient presenting with a communicable disease reportable to the public health agency
  • Patient educational material sent by a provider to a patient
  • Unable to deliver lab results to ordering physician

Non-patient specific communication use cases may include:

  • A nurse call from a hall bathroom
  • Advisory for battery service from a pump

This resource is a record of a communication that has occurred. It does not represent the actual flow of communication. While 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. As well, AuditEvents 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.

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.

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

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Communication TUDomainResourceA record of information transmitted from a sender to a receiver
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierUnique identifier
... instantiates Σ0..*uriInstantiates protocol or definition
... basedOn Σ0..*Reference(Any)Request fulfilled by this communication
... partOf Σ0..*Reference(Any)Part of this action
... inResponseTo 0..*Reference(Communication)Reply to
... status ?!Σ1..1codepreparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
EventStatus (Required)
... statusReason Σ0..1CodeableConceptReason for current status
CommunicationNotDoneReason (Example)
... category 0..*CodeableConceptMessage category
CommunicationCategory (Example)
... priority Σ0..1codeMessage urgency
RequestPriority (Required)
... medium 0..*CodeableConceptA channel of communication
v3 Code System ParticipationMode (Example)
... subject Σ0..1Reference(Patient | Group)Focus of message
... recipient 0..*Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam)Message recipient
... topic 0..1CodeableConceptDescription of the purpose/content
CommunicationTopic (Example)
... about 0..*Reference(Any)Resources that pertain to this communication
... context Σ0..1Reference(Encounter | EpisodeOfCare)Encounter or episode leading to message
... sent 0..1dateTimeWhen sent
... received 0..1dateTimeWhen received
... sender 0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Message sender
... reasonCode Σ0..*CodeableConceptIndication for message
SNOMED CT Clinical Findings (Example)
... reasonReference Σ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)Why was communication done?
... payload 0..*BackboneElementMessage payload
.... content[x] 1..1Message part content
..... contentStringstring
..... contentAttachmentAttachment
..... contentReferenceReference(Any)
... note 0..*AnnotationComments made about the communication

doco Documentation for this format

UML Diagram (Legend)

Communication (DomainResource)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 serveridentifier : Identifier [0..*]A protocol, guideline, or other definition that was adhered to in whole or in part by this communication eventinstantiates : uri [0..*]An order, proposal or plan fulfilled in whole or in part by this CommunicationbasedOn : Reference [0..*] « Any »Part of this actionpartOf : Reference [0..*] « Any »Prior communication that this communication is in response toinResponseTo : Reference [0..*] « Communication »The status of the transmission (this element modifies the meaning of other elements)status : code [1..1] « The status of the communication. (Strength=Required)EventStatus! »Captures the reason for the current state of the CommunicationstatusReason : CodeableConcept [0..1] « Codes for the reason why a communication was not done. (Strength=Example)CommunicationNotDoneReason?? »The type of message conveyed such as alert, notification, reminder, instruction, etccategory : CodeableConcept [0..*] « Codes for general categories of communications such as alerts, instruction, etc. (Strength=Example)CommunicationCategory?? »Characterizes how quickly the planned or in progress communication must be addressed. Includes concepts such as stat, urgent, routinepriority : code [0..1] « Codes indicating the relative importance of a communication. (Strength=Required)RequestPriority! »A channel that was used for this communication (e.g. email, fax)medium : CodeableConcept [0..*] « Codes for communication mediums such as phone, fax, email, in person, etc. (Strength=Example)v3 Code System ParticipationM...?? »The patient or group that was the focus of this communicationsubject : Reference [0..1] « Patient|Group »The entity (e.g. person, organization, clinical information system, care team or device) which was the target of the communication. If receipts need to be tracked by individual, a separate resource instance will need to be created for each recipient.  Multiple recipient communications are intended where either a receipt(s) is not tracked (e.g. a mass mail-out) or is captured in aggregate (all emails confirmed received by a particular time)recipient : Reference [0..*] « Device|Organization|Patient| Practitioner|PractitionerRole|RelatedPerson|Group|CareTeam »Description of the purpose/content, similar to a subject line in an emailtopic : CodeableConcept [0..1] « Codes describing the purpose or content of the communication. (Strength=Example)CommunicationTopic?? »Other resources that pertain to this communication and to which this communication should be associatedabout : Reference [0..*] « Any »The encounter within which the communication was sentcontext : Reference [0..1] « Encounter|EpisodeOfCare »The time when this communication was sentsent : dateTime [0..1]The time when this communication arrived at the destinationreceived : dateTime [0..1]The entity (e.g. person, organization, clinical information system, or device) which was the source of the communicationsender : Reference [0..1] « Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson »The reason or justification for the communicationreasonCode : CodeableConcept [0..*] « Codes for describing reasons for the occurrence of a communication. (Strength=Example)SNOMED CT Clinical Findings?? »Indicates another resource whose existence justifies this communicationreasonReference : Reference [0..*] « Condition|Observation| DiagnosticReport|DocumentReference »Additional notes or commentary about the communication by the sender, receiver or other interested partiesnote : Annotation [0..*]PayloadA communicated content (or for multi-part communications, one portion of the communication)content[x] : Type [1..1] « string|Attachment|Reference(Any) »Text, attachment(s), or resource(s) that was communicated to the recipientpayload[0..*]

XML Template

<Communication xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Unique identifier --></identifier>
 <instantiates value="[uri]"/><!-- 0..* Instantiates protocol or definition -->
 <basedOn><!-- 0..* Reference(Any) Request fulfilled by this communication --></basedOn>
 <partOf><!-- 0..* Reference(Any) Part of this action --></partOf>
 <inResponseTo><!-- 0..* Reference(Communication) Reply to --></inResponseTo>
 <status value="[code]"/><!-- 1..1 preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error -->
 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>
 <category><!-- 0..* CodeableConcept Message category --></category>
 <priority value="[code]"/><!-- 0..1 Message urgency -->
 <medium><!-- 0..* CodeableConcept A channel of communication --></medium>
 <subject><!-- 0..1 Reference(Patient|Group) Focus of message --></subject>
 <recipient><!-- 0..* Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson|Group|CareTeam) Message recipient --></recipient>
 <topic><!-- 0..1 CodeableConcept Description of the purpose/content --></topic>
 <about><!-- 0..* Reference(Any) Resources that pertain to this communication --></about>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Encounter or episode leading to message --></context>
 <sent value="[dateTime]"/><!-- 0..1 When sent -->
 <received value="[dateTime]"/><!-- 0..1 When received -->
 <sender><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Message sender --></sender>
 <reasonCode><!-- 0..* CodeableConcept Indication for message --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) Why was communication done? --></reasonReference>
 <payload>  <!-- 0..* Message payload -->
  <content[x]><!-- 1..1 string|Attachment|Reference(Any) Message part content --></content[x]>
 </payload>
 <note><!-- 0..* Annotation Comments made about the communication --></note>
</Communication>

JSON Template

{doco
  "resourceType" : "Communication",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Unique identifier
  "instantiates" : ["<uri>"], // Instantiates protocol or definition
  "basedOn" : [{ Reference(Any) }], // Request fulfilled by this communication
  "partOf" : [{ Reference(Any) }], // Part of this action
  "inResponseTo" : [{ Reference(Communication) }], // Reply to
  "status" : "<code>", // R!  preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
  "statusReason" : { CodeableConcept }, // Reason for current status
  "category" : [{ CodeableConcept }], // Message category
  "priority" : "<code>", // Message urgency
  "medium" : [{ CodeableConcept }], // A channel of communication
  "subject" : { Reference(Patient|Group) }, // Focus of message
  "recipient" : [{ Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson|Group|CareTeam) }], // Message recipient
  "topic" : { CodeableConcept }, // Description of the purpose/content
  "about" : [{ Reference(Any) }], // Resources that pertain to this communication
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or episode leading to message
  "sent" : "<dateTime>", // When sent
  "received" : "<dateTime>", // When received
  "sender" : { Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }, // Message sender
  "reasonCode" : [{ CodeableConcept }], // Indication for message
  "reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) }], // Why was communication done?
  "payload" : [{ // Message payload
    // content[x]: Message part content. One of these 3:
    "contentString" : "<string>"
    "contentAttachment" : { Attachment }
    "contentReference" : { Reference(Any) }
  }],
  "note" : [{ Annotation }] // Comments made about the communication
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Communication;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:Communication.identifier [ Identifier ], ... ; # 0..* Unique identifier
  fhir:Communication.instantiates [ uri ], ... ; # 0..* Instantiates protocol or definition
  fhir:Communication.basedOn [ Reference(Any) ], ... ; # 0..* Request fulfilled by this communication
  fhir:Communication.partOf [ Reference(Any) ], ... ; # 0..* Part of this action
  fhir:Communication.inResponseTo [ Reference(Communication) ], ... ; # 0..* Reply to
  fhir:Communication.status [ code ]; # 1..1 preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
  fhir:Communication.statusReason [ CodeableConcept ]; # 0..1 Reason for current status
  fhir:Communication.category [ CodeableConcept ], ... ; # 0..* Message category
  fhir:Communication.priority [ code ]; # 0..1 Message urgency
  fhir:Communication.medium [ CodeableConcept ], ... ; # 0..* A channel of communication
  fhir:Communication.subject [ Reference(Patient|Group) ]; # 0..1 Focus of message
  fhir:Communication.recipient [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Group|
  CareTeam) ], ... ; # 0..* Message recipient
  fhir:Communication.topic [ CodeableConcept ]; # 0..1 Description of the purpose/content
  fhir:Communication.about [ Reference(Any) ], ... ; # 0..* Resources that pertain to this communication
  fhir:Communication.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Encounter or episode leading to message
  fhir:Communication.sent [ dateTime ]; # 0..1 When sent
  fhir:Communication.received [ dateTime ]; # 0..1 When received
  fhir:Communication.sender [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Message sender
  fhir:Communication.reasonCode [ CodeableConcept ], ... ; # 0..* Indication for message
  fhir:Communication.reasonReference [ Reference(Condition|Observation|DiagnosticReport|DocumentReference) ], ... ; # 0..* Why was communication done?
  fhir:Communication.payload [ # 0..* Message payload
    # Communication.payload.content[x] : 1..1 Message part content. One of these 3
      fhir:Communication.payload.contentString [ string ]
      fhir:Communication.payload.contentAttachment [ Attachment ]
      fhir:Communication.payload.contentReference [ Reference(Any) ]
  ], ...;
  fhir:Communication.note [ Annotation ], ... ; # 0..* Comments made about the communication
]

Changes since R3

Communication
Communication.instantiates
  • Added Element
Communication.inResponseTo
  • Added Element
Communication.statusReason
  • Added Element
Communication.priority
  • Added Element
Communication.recipient
  • Type changed from Reference(Device|Organization|Patient|Practitioner|RelatedPerson|Group) to Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Group|CareTeam)
Communication.topic
  • Max Cardinality changed from * to 1
  • Type changed from Reference(Resource) to CodeableConcept
Communication.about
  • Added Element
Communication.sender
  • Type changed from Reference(Device|Organization|Patient|Practitioner|RelatedPerson) to Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson)
Communication.reasonReference
  • Type changed from Reference(Condition|Observation) to Reference(Condition|Observation|DiagnosticReport|DocumentReference)
Communication.payload.content[x]
  • Remove Reference(Resource), Add Reference(Resource)
Communication.definition
  • deleted
Communication.notDone
  • deleted
Communication.notDoneReason
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.). Note: these have note yet been updated to be R3 to R4

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Communication TUDomainResourceA record of information transmitted from a sender to a receiver
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierUnique identifier
... instantiates Σ0..*uriInstantiates protocol or definition
... basedOn Σ0..*Reference(Any)Request fulfilled by this communication
... partOf Σ0..*Reference(Any)Part of this action
... inResponseTo 0..*Reference(Communication)Reply to
... status ?!Σ1..1codepreparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
EventStatus (Required)
... statusReason Σ0..1CodeableConceptReason for current status
CommunicationNotDoneReason (Example)
... category 0..*CodeableConceptMessage category
CommunicationCategory (Example)
... priority Σ0..1codeMessage urgency
RequestPriority (Required)
... medium 0..*CodeableConceptA channel of communication
v3 Code System ParticipationMode (Example)
... subject Σ0..1Reference(Patient | Group)Focus of message
... recipient 0..*Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam)Message recipient
... topic 0..1CodeableConceptDescription of the purpose/content
CommunicationTopic (Example)
... about 0..*Reference(Any)Resources that pertain to this communication
... context Σ0..1Reference(Encounter | EpisodeOfCare)Encounter or episode leading to message
... sent 0..1dateTimeWhen sent
... received 0..1dateTimeWhen received
... sender 0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Message sender
... reasonCode Σ0..*CodeableConceptIndication for message
SNOMED CT Clinical Findings (Example)
... reasonReference Σ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)Why was communication done?
... payload 0..*BackboneElementMessage payload
.... content[x] 1..1Message part content
..... contentStringstring
..... contentAttachmentAttachment
..... contentReferenceReference(Any)
... note 0..*AnnotationComments made about the communication

doco Documentation for this format

UML Diagram (Legend)

Communication (DomainResource)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 serveridentifier : Identifier [0..*]A protocol, guideline, or other definition that was adhered to in whole or in part by this communication eventinstantiates : uri [0..*]An order, proposal or plan fulfilled in whole or in part by this CommunicationbasedOn : Reference [0..*] « Any »Part of this actionpartOf : Reference [0..*] « Any »Prior communication that this communication is in response toinResponseTo : Reference [0..*] « Communication »The status of the transmission (this element modifies the meaning of other elements)status : code [1..1] « The status of the communication. (Strength=Required)EventStatus! »Captures the reason for the current state of the CommunicationstatusReason : CodeableConcept [0..1] « Codes for the reason why a communication was not done. (Strength=Example)CommunicationNotDoneReason?? »The type of message conveyed such as alert, notification, reminder, instruction, etccategory : CodeableConcept [0..*] « Codes for general categories of communications such as alerts, instruction, etc. (Strength=Example)CommunicationCategory?? »Characterizes how quickly the planned or in progress communication must be addressed. Includes concepts such as stat, urgent, routinepriority : code [0..1] « Codes indicating the relative importance of a communication. (Strength=Required)RequestPriority! »A channel that was used for this communication (e.g. email, fax)medium : CodeableConcept [0..*] « Codes for communication mediums such as phone, fax, email, in person, etc. (Strength=Example)v3 Code System ParticipationM...?? »The patient or group that was the focus of this communicationsubject : Reference [0..1] « Patient|Group »The entity (e.g. person, organization, clinical information system, care team or device) which was the target of the communication. If receipts need to be tracked by individual, a separate resource instance will need to be created for each recipient.  Multiple recipient communications are intended where either a receipt(s) is not tracked (e.g. a mass mail-out) or is captured in aggregate (all emails confirmed received by a particular time)recipient : Reference [0..*] « Device|Organization|Patient| Practitioner|PractitionerRole|RelatedPerson|Group|CareTeam »Description of the purpose/content, similar to a subject line in an emailtopic : CodeableConcept [0..1] « Codes describing the purpose or content of the communication. (Strength=Example)CommunicationTopic?? »Other resources that pertain to this communication and to which this communication should be associatedabout : Reference [0..*] « Any »The encounter within which the communication was sentcontext : Reference [0..1] « Encounter|EpisodeOfCare »The time when this communication was sentsent : dateTime [0..1]The time when this communication arrived at the destinationreceived : dateTime [0..1]The entity (e.g. person, organization, clinical information system, or device) which was the source of the communicationsender : Reference [0..1] « Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson »The reason or justification for the communicationreasonCode : CodeableConcept [0..*] « Codes for describing reasons for the occurrence of a communication. (Strength=Example)SNOMED CT Clinical Findings?? »Indicates another resource whose existence justifies this communicationreasonReference : Reference [0..*] « Condition|Observation| DiagnosticReport|DocumentReference »Additional notes or commentary about the communication by the sender, receiver or other interested partiesnote : Annotation [0..*]PayloadA communicated content (or for multi-part communications, one portion of the communication)content[x] : Type [1..1] « string|Attachment|Reference(Any) »Text, attachment(s), or resource(s) that was communicated to the recipientpayload[0..*]

XML Template

<Communication xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Unique identifier --></identifier>
 <instantiates value="[uri]"/><!-- 0..* Instantiates protocol or definition -->
 <basedOn><!-- 0..* Reference(Any) Request fulfilled by this communication --></basedOn>
 <partOf><!-- 0..* Reference(Any) Part of this action --></partOf>
 <inResponseTo><!-- 0..* Reference(Communication) Reply to --></inResponseTo>
 <status value="[code]"/><!-- 1..1 preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error -->
 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>
 <category><!-- 0..* CodeableConcept Message category --></category>
 <priority value="[code]"/><!-- 0..1 Message urgency -->
 <medium><!-- 0..* CodeableConcept A channel of communication --></medium>
 <subject><!-- 0..1 Reference(Patient|Group) Focus of message --></subject>
 <recipient><!-- 0..* Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson|Group|CareTeam) Message recipient --></recipient>
 <topic><!-- 0..1 CodeableConcept Description of the purpose/content --></topic>
 <about><!-- 0..* Reference(Any) Resources that pertain to this communication --></about>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Encounter or episode leading to message --></context>
 <sent value="[dateTime]"/><!-- 0..1 When sent -->
 <received value="[dateTime]"/><!-- 0..1 When received -->
 <sender><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Message sender --></sender>
 <reasonCode><!-- 0..* CodeableConcept Indication for message --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) Why was communication done? --></reasonReference>
 <payload>  <!-- 0..* Message payload -->
  <content[x]><!-- 1..1 string|Attachment|Reference(Any) Message part content --></content[x]>
 </payload>
 <note><!-- 0..* Annotation Comments made about the communication --></note>
</Communication>

JSON Template

{doco
  "resourceType" : "Communication",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Unique identifier
  "instantiates" : ["<uri>"], // Instantiates protocol or definition
  "basedOn" : [{ Reference(Any) }], // Request fulfilled by this communication
  "partOf" : [{ Reference(Any) }], // Part of this action
  "inResponseTo" : [{ Reference(Communication) }], // Reply to
  "status" : "<code>", // R!  preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
  "statusReason" : { CodeableConcept }, // Reason for current status
  "category" : [{ CodeableConcept }], // Message category
  "priority" : "<code>", // Message urgency
  "medium" : [{ CodeableConcept }], // A channel of communication
  "subject" : { Reference(Patient|Group) }, // Focus of message
  "recipient" : [{ Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson|Group|CareTeam) }], // Message recipient
  "topic" : { CodeableConcept }, // Description of the purpose/content
  "about" : [{ Reference(Any) }], // Resources that pertain to this communication
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or episode leading to message
  "sent" : "<dateTime>", // When sent
  "received" : "<dateTime>", // When received
  "sender" : { Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }, // Message sender
  "reasonCode" : [{ CodeableConcept }], // Indication for message
  "reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) }], // Why was communication done?
  "payload" : [{ // Message payload
    // content[x]: Message part content. One of these 3:
    "contentString" : "<string>"
    "contentAttachment" : { Attachment }
    "contentReference" : { Reference(Any) }
  }],
  "note" : [{ Annotation }] // Comments made about the communication
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Communication;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:Communication.identifier [ Identifier ], ... ; # 0..* Unique identifier
  fhir:Communication.instantiates [ uri ], ... ; # 0..* Instantiates protocol or definition
  fhir:Communication.basedOn [ Reference(Any) ], ... ; # 0..* Request fulfilled by this communication
  fhir:Communication.partOf [ Reference(Any) ], ... ; # 0..* Part of this action
  fhir:Communication.inResponseTo [ Reference(Communication) ], ... ; # 0..* Reply to
  fhir:Communication.status [ code ]; # 1..1 preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error
  fhir:Communication.statusReason [ CodeableConcept ]; # 0..1 Reason for current status
  fhir:Communication.category [ CodeableConcept ], ... ; # 0..* Message category
  fhir:Communication.priority [ code ]; # 0..1 Message urgency
  fhir:Communication.medium [ CodeableConcept ], ... ; # 0..* A channel of communication
  fhir:Communication.subject [ Reference(Patient|Group) ]; # 0..1 Focus of message
  fhir:Communication.recipient [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Group|
  CareTeam) ], ... ; # 0..* Message recipient
  fhir:Communication.topic [ CodeableConcept ]; # 0..1 Description of the purpose/content
  fhir:Communication.about [ Reference(Any) ], ... ; # 0..* Resources that pertain to this communication
  fhir:Communication.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Encounter or episode leading to message
  fhir:Communication.sent [ dateTime ]; # 0..1 When sent
  fhir:Communication.received [ dateTime ]; # 0..1 When received
  fhir:Communication.sender [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Message sender
  fhir:Communication.reasonCode [ CodeableConcept ], ... ; # 0..* Indication for message
  fhir:Communication.reasonReference [ Reference(Condition|Observation|DiagnosticReport|DocumentReference) ], ... ; # 0..* Why was communication done?
  fhir:Communication.payload [ # 0..* Message payload
    # Communication.payload.content[x] : 1..1 Message part content. One of these 3
      fhir:Communication.payload.contentString [ string ]
      fhir:Communication.payload.contentAttachment [ Attachment ]
      fhir:Communication.payload.contentReference [ Reference(Any) ]
  ], ...;
  fhir:Communication.note [ Annotation ], ... ; # 0..* Comments made about the communication
]

Changes since DSTU2

Communication
Communication.instantiates
  • Added Element
Communication.inResponseTo
  • Added Element
Communication.statusReason
  • Added Element
Communication.priority
  • Added Element
Communication.recipient
  • Type changed from Reference(Device|Organization|Patient|Practitioner|RelatedPerson|Group) to Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Group|CareTeam)
Communication.topic
  • Max Cardinality changed from * to 1
  • Type changed from Reference(Resource) to CodeableConcept
Communication.about
  • Added Element
Communication.sender
  • Type changed from Reference(Device|Organization|Patient|Practitioner|RelatedPerson) to Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson)
Communication.reasonReference
  • Type changed from Reference(Condition|Observation) to Reference(Condition|Observation|DiagnosticReport|DocumentReference)
Communication.payload.content[x]
  • Remove Reference(Resource), Add Reference(Resource)
Communication.definition
  • deleted
Communication.notDone
  • deleted
Communication.notDoneReason
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.). Note: these have note yet been updated to be R3 to R4

 

Alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis

PathDefinitionTypeReference
Communication.status The status of the communication.RequiredEventStatus
Communication.statusReason Codes for the reason why a communication was not done.ExampleCommunicationNotDoneReason
Communication.category Codes for general categories of communications such as alerts, instruction, etc.ExampleCommunicationCategory
Communication.priority Codes indicating the relative importance of a communication.RequiredRequestPriority
Communication.medium Codes for communication mediums such as phone, fax, email, in person, etc.Examplev3 Code System ParticipationMode
Communication.topic Codes describing the purpose or content of the communication.ExampleCommunicationTopic
Communication.reasonCode Codes for describing reasons for the occurrence of a communication.ExampleSNOMED CT Clinical Findings

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 allow Patient|Practitioner|RelatedPerson - 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.

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
based-onreferenceRequest fulfilled by this communicationCommunication.basedOn
(Any)
categorytokenMessage categoryCommunication.category
contextreferenceEncounter or episode leading to messageCommunication.context
(EpisodeOfCare, Encounter)
encounterreferenceEncounter leading to messageCommunication.context
(Encounter)
identifiertokenUnique identifierCommunication.identifier
instantiatesuriInstantiates protocol or definitionCommunication.instantiates
mediumtokenA channel of communicationCommunication.medium
part-ofreferencePart of this actionCommunication.partOf
(Any)
patientreferenceFocus of messageCommunication.subject
(Patient)
receiveddateWhen receivedCommunication.received
recipientreferenceMessage recipientCommunication.recipient
(Practitioner, Group, Organization, CareTeam, Device, Patient, PractitionerRole, RelatedPerson)
senderreferenceMessage senderCommunication.sender
(Practitioner, Organization, Device, Patient, PractitionerRole, RelatedPerson)
sentdateWhen sentCommunication.sent
statustokenpreparation | in-progress | not-done | suspended | aborted | completed | entered-in-errorCommunication.status
subjectreferenceFocus of messageCommunication.subject
(Group, Patient)