Current Build

8.21 Resource CommunicationRequest - Content

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

A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition.

CommunicationRequest is one of the request resources in the FHIR workflow specification.

This resource is a record of a request for a communication to be performed. 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, and devices. Uses of communication request include:

  • A computer-based decision-support system requesting a reminder or alert be delivered to a responsible provider
  • A physician requesting notification from the nurse if a patient's temperature exceeds a value
  • A monitoring system or a provider requesting a staff member or department to notify a public health agency of a patient presenting with a communicable disease reportable to the public health agency
  • A computer-based decision-support system proposes to send educational material to a patient

This resource is a record of a request. It does not represent the actual flow of communication.

The use of CommunicationRequest excludes requests for referrals and requests for therapy or counseling which would be handled by the ServiceRequest resource. The performance of a CommunicationRequest may result in a Communication resource.

This resource is referenced by CarePlan, ClaimResponse and ProcessResponse

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. CommunicationRequest DomainResourceA request for information to be sent to a receiver
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierUnique identifier
... basedOn Σ0..*Reference(Any)Fulfills plan or proposal
... replaces Σ0..*Reference(CommunicationRequest)Request(s) replaced by this request
... groupIdentifier Σ0..1IdentifierComposite request this is part of
... status ?!Σ1..1codedraft | active | suspended | cancelled | completed | entered-in-error | unknown
RequestStatus (Required)
... 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 | RelatedPerson | Group | CareTeam)Message recipient
... about 0..*Reference(Any)Resources that pertain to this communication request
... context Σ0..1Reference(Encounter | EpisodeOfCare)Encounter or episode leading to message
... payload 0..*BackboneElementMessage payload
.... content[x] 1..1Message part content
..... contentStringstring
..... contentAttachmentAttachment
..... contentReferenceReference(Any)
... occurrence[x] Σ0..1When scheduled
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
... authoredOn Σ0..1dateTimeWhen request transitioned to being actionable
... sender 0..1Reference(Device | Organization | Patient | Practitioner | RelatedPerson)Message sender
... requester ΣI0..1BackboneElementWho/what is requesting service
+ onBehalfOf can only be specified if agent is practitioner or device
.... agent Σ1..1Reference(Practitioner | Organization | Patient | RelatedPerson | Device)Individual making the request
.... onBehalfOf ΣI0..1Reference(Organization)Organization agent is acting for
... reasonCode Σ0..*CodeableConceptWhy is communication needed?
v3 Code System ActReason (Example)
... reasonReference Σ0..*Reference(Condition | Observation)Why is communication needed?
... note 0..*AnnotationComments made about communication request

doco Documentation for this format

UML Diagram (Legend)

CommunicationRequest (DomainResource)A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source systemidentifier : Identifier [0..*]A plan or proposal that is fulfilled in whole or in part by this requestbasedOn : Reference [0..*] « Any »Completed or terminated request(s) whose function is taken by this new requestreplaces : Reference [0..*] « CommunicationRequest »A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition, prescription or similar formgroupIdentifier : Identifier [0..1]The status of the proposal or order (this element modifies the meaning of other elements)status : code [1..1] « The status of the communication request. (Strength=Required)RequestStatus! »The type of message to be sent 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 proposed act must be initiated. Includes concepts such as stat, urgent, routinepriority : code [0..1] « Codes indicating the relative importance of a communication request. (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 is the focus of this communication requestsubject : Reference [0..1] « Patient|Group »The entity (e.g. person, organization, clinical information system, device, group, or care team) which is the intended target of the communicationrecipient : Reference [0..*] « Device|Organization|Patient| Practitioner|RelatedPerson|Group|CareTeam »Other resources that pertain to this communication request and to which this communication request should be associatedabout : Reference [0..*] « Any »The encounter or episode of care within which the communication request was createdcontext : Reference [0..1] « Encounter|EpisodeOfCare »The time when this communication is to occuroccurrence[x] : Type [0..1] « dateTime|Period »For draft requests, indicates the date of initial creation. For requests with other statuses, indicates the date of activationauthoredOn : dateTime [0..1]The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communicationsender : Reference [0..1] « Device|Organization|Patient|Practitioner| RelatedPerson »Describes why the request is being made in coded or textual formreasonCode : CodeableConcept [0..*] « Codes for describing reasons for the occurrence of a communication. (Strength=Example)v3 Code System ActReason?? »Indicates another resource whose existence justifies this requestreasonReference : Reference [0..*] « Condition|Observation »Comments made about the request by the requester, sender, recipient, subject or other participantsnote : Annotation [0..*]PayloadThe communicated content (or for multi-part communications, one portion of the communication)content[x] : Type [1..1] « string|Attachment|Reference(Any) »RequesterThe device, practitioner, etc. who initiated the requestagent : Reference [1..1] « Practitioner|Organization|Patient| RelatedPerson|Device »The organization the device or practitioner was acting on behalf ofonBehalfOf : Reference [0..1] « Organization »Text, attachment(s), or resource(s) to be communicated to the recipientpayload[0..*]The individual who initiated the request and has responsibility for its activationrequester[0..1]

XML Template

<CommunicationRequest 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>
 <basedOn><!-- 0..* Reference(Any) Fulfills plan or proposal --></basedOn>
 <replaces><!-- 0..* Reference(CommunicationRequest) Request(s) replaced by this request --></replaces>
 <groupIdentifier><!-- 0..1 Identifier Composite request this is part of --></groupIdentifier>
 <status value="[code]"/><!-- 1..1 draft | active | suspended | cancelled | completed | entered-in-error | unknown -->
 <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|
   RelatedPerson|Group|CareTeam) Message recipient --></recipient>
 <about><!-- 0..* Reference(Any) Resources that pertain to this communication request --></about>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Encounter or episode leading to message --></context>
 <payload>  <!-- 0..* Message payload -->
  <content[x]><!-- 1..1 string|Attachment|Reference(Any) Message part content --></content[x]>
 </payload>
 <occurrence[x]><!-- 0..1 dateTime|Period When scheduled --></occurrence[x]>
 <authoredOn value="[dateTime]"/><!-- 0..1 When request transitioned to being actionable -->
 <sender><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   RelatedPerson) Message sender --></sender>
 <requester>  <!-- 0..1 Who/what is requesting service -->
  <agent><!-- 1..1 Reference(Practitioner|Organization|Patient|RelatedPerson|
    Device) Individual making the request --></agent>
  <onBehalfOf><!-- ?? 0..1 Reference(Organization) Organization agent is acting for --></onBehalfOf>
 </requester>
 <reasonCode><!-- 0..* CodeableConcept Why is communication needed? --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation) Why is communication needed? --></reasonReference>
 <note><!-- 0..* Annotation Comments made about communication request --></note>
</CommunicationRequest>

JSON Template

{doco
  "resourceType" : "CommunicationRequest",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Unique identifier
  "basedOn" : [{ Reference(Any) }], // Fulfills plan or proposal
  "replaces" : [{ Reference(CommunicationRequest) }], // Request(s) replaced by this request
  "groupIdentifier" : { Identifier }, // Composite request this is part of
  "status" : "<code>", // R!  draft | active | suspended | cancelled | completed | entered-in-error | unknown
  "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|
   RelatedPerson|Group|CareTeam) }], // Message recipient
  "about" : [{ Reference(Any) }], // Resources that pertain to this communication request
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or episode leading to message
  "payload" : [{ // Message payload
    // content[x]: Message part content. One of these 3:
    "contentString" : "<string>"
    "contentAttachment" : { Attachment }
    "contentReference" : { Reference(Any) }
  }],
  // occurrence[x]: When scheduled. One of these 2:
  "occurrenceDateTime" : "<dateTime>",
  "occurrencePeriod" : { Period },
  "authoredOn" : "<dateTime>", // When request transitioned to being actionable
  "sender" : { Reference(Device|Organization|Patient|Practitioner|
   RelatedPerson) }, // Message sender
  "requester" : { // Who/what is requesting service
    "agent" : { Reference(Practitioner|Organization|Patient|RelatedPerson|
    Device) }, // R!  Individual making the request
    "onBehalfOf" : { Reference(Organization) } // C? Organization agent is acting for
  },
  "reasonCode" : [{ CodeableConcept }], // Why is communication needed?
  "reasonReference" : [{ Reference(Condition|Observation) }], // Why is communication needed?
  "note" : [{ Annotation }] // Comments made about communication request
}

Turtle Template

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


[ a fhir:CommunicationRequest;
  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:CommunicationRequest.identifier [ Identifier ], ... ; # 0..* Unique identifier
  fhir:CommunicationRequest.basedOn [ Reference(Any) ], ... ; # 0..* Fulfills plan or proposal
  fhir:CommunicationRequest.replaces [ Reference(CommunicationRequest) ], ... ; # 0..* Request(s) replaced by this request
  fhir:CommunicationRequest.groupIdentifier [ Identifier ]; # 0..1 Composite request this is part of
  fhir:CommunicationRequest.status [ code ]; # 1..1 draft | active | suspended | cancelled | completed | entered-in-error | unknown
  fhir:CommunicationRequest.category [ CodeableConcept ], ... ; # 0..* Message category
  fhir:CommunicationRequest.priority [ code ]; # 0..1 Message urgency
  fhir:CommunicationRequest.medium [ CodeableConcept ], ... ; # 0..* A channel of communication
  fhir:CommunicationRequest.subject [ Reference(Patient|Group) ]; # 0..1 Focus of message
  fhir:CommunicationRequest.recipient [ Reference(Device|Organization|Patient|Practitioner|RelatedPerson|Group|CareTeam) ], ... ; # 0..* Message recipient
  fhir:CommunicationRequest.about [ Reference(Any) ], ... ; # 0..* Resources that pertain to this communication request
  fhir:CommunicationRequest.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Encounter or episode leading to message
  fhir:CommunicationRequest.payload [ # 0..* Message payload
    # CommunicationRequest.payload.content[x] : 1..1 Message part content. One of these 3
      fhir:CommunicationRequest.payload.contentString [ string ]
      fhir:CommunicationRequest.payload.contentAttachment [ Attachment ]
      fhir:CommunicationRequest.payload.contentReference [ Reference(Any) ]
  ], ...;
  # CommunicationRequest.occurrence[x] : 0..1 When scheduled. One of these 2
    fhir:CommunicationRequest.occurrenceDateTime [ dateTime ]
    fhir:CommunicationRequest.occurrencePeriod [ Period ]
  fhir:CommunicationRequest.authoredOn [ dateTime ]; # 0..1 When request transitioned to being actionable
  fhir:CommunicationRequest.sender [ Reference(Device|Organization|Patient|Practitioner|RelatedPerson) ]; # 0..1 Message sender
  fhir:CommunicationRequest.requester [ # 0..1 Who/what is requesting service
    fhir:CommunicationRequest.requester.agent [ Reference(Practitioner|Organization|Patient|RelatedPerson|Device) ]; # 1..1 Individual making the request
    fhir:CommunicationRequest.requester.onBehalfOf [ Reference(Organization) ]; # 0..1 Organization agent is acting for
  ];
  fhir:CommunicationRequest.reasonCode [ CodeableConcept ], ... ; # 0..* Why is communication needed?
  fhir:CommunicationRequest.reasonReference [ Reference(Condition|Observation) ], ... ; # 0..* Why is communication needed?
  fhir:CommunicationRequest.note [ Annotation ], ... ; # 0..* Comments made about communication request
]

Changes since DSTU2

CommunicationRequest
CommunicationRequest.basedOn
  • Added Element
CommunicationRequest.replaces
  • Added Element
CommunicationRequest.groupIdentifier
  • Added Element
CommunicationRequest.status
  • Min Cardinality changed from 0 to 1
  • Change value set from http://hl7.org/fhir/ValueSet/communication-request-status to http://hl7.org/fhir/ValueSet/request-status
CommunicationRequest.category
  • Max Cardinality changed from 1 to *
CommunicationRequest.priority
  • Type changed from CodeableConcept to code
  • Add Binding http://hl7.org/fhir/ValueSet/request-priority (required)
CommunicationRequest.subject
  • Add Reference(Group)
CommunicationRequest.recipient
  • Add Reference(Group), Add Reference(CareTeam)
CommunicationRequest.about
  • Added Element
CommunicationRequest.context
  • Renamed from encounter to context
  • Add Reference(EpisodeOfCare)
CommunicationRequest.occurrence[x]
  • Added Element
CommunicationRequest.authoredOn
  • Renamed from requestedOn to authoredOn
CommunicationRequest.requester
  • Remove Reference(Practitioner), Remove Reference(Patient), Remove Reference(RelatedPerson)
CommunicationRequest.requester.agent
  • Added Element
CommunicationRequest.requester.onBehalfOf
  • Added Element
CommunicationRequest.reasonCode
  • Renamed from reason to reasonCode
CommunicationRequest.reasonReference
  • Added Element
CommunicationRequest.note
  • Added Element
CommunicationRequest.scheduled[x]
  • 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. 1 fail round-trip testing and 1 r3 resources are invalid (1 errors).).

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. CommunicationRequest DomainResourceA request for information to be sent to a receiver
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierUnique identifier
... basedOn Σ0..*Reference(Any)Fulfills plan or proposal
... replaces Σ0..*Reference(CommunicationRequest)Request(s) replaced by this request
... groupIdentifier Σ0..1IdentifierComposite request this is part of
... status ?!Σ1..1codedraft | active | suspended | cancelled | completed | entered-in-error | unknown
RequestStatus (Required)
... 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 | RelatedPerson | Group | CareTeam)Message recipient
... about 0..*Reference(Any)Resources that pertain to this communication request
... context Σ0..1Reference(Encounter | EpisodeOfCare)Encounter or episode leading to message
... payload 0..*BackboneElementMessage payload
.... content[x] 1..1Message part content
..... contentStringstring
..... contentAttachmentAttachment
..... contentReferenceReference(Any)
... occurrence[x] Σ0..1When scheduled
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
... authoredOn Σ0..1dateTimeWhen request transitioned to being actionable
... sender 0..1Reference(Device | Organization | Patient | Practitioner | RelatedPerson)Message sender
... requester ΣI0..1BackboneElementWho/what is requesting service
+ onBehalfOf can only be specified if agent is practitioner or device
.... agent Σ1..1Reference(Practitioner | Organization | Patient | RelatedPerson | Device)Individual making the request
.... onBehalfOf ΣI0..1Reference(Organization)Organization agent is acting for
... reasonCode Σ0..*CodeableConceptWhy is communication needed?
v3 Code System ActReason (Example)
... reasonReference Σ0..*Reference(Condition | Observation)Why is communication needed?
... note 0..*AnnotationComments made about communication request

doco Documentation for this format

UML Diagram (Legend)

CommunicationRequest (DomainResource)A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source systemidentifier : Identifier [0..*]A plan or proposal that is fulfilled in whole or in part by this requestbasedOn : Reference [0..*] « Any »Completed or terminated request(s) whose function is taken by this new requestreplaces : Reference [0..*] « CommunicationRequest »A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition, prescription or similar formgroupIdentifier : Identifier [0..1]The status of the proposal or order (this element modifies the meaning of other elements)status : code [1..1] « The status of the communication request. (Strength=Required)RequestStatus! »The type of message to be sent 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 proposed act must be initiated. Includes concepts such as stat, urgent, routinepriority : code [0..1] « Codes indicating the relative importance of a communication request. (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 is the focus of this communication requestsubject : Reference [0..1] « Patient|Group »The entity (e.g. person, organization, clinical information system, device, group, or care team) which is the intended target of the communicationrecipient : Reference [0..*] « Device|Organization|Patient| Practitioner|RelatedPerson|Group|CareTeam »Other resources that pertain to this communication request and to which this communication request should be associatedabout : Reference [0..*] « Any »The encounter or episode of care within which the communication request was createdcontext : Reference [0..1] « Encounter|EpisodeOfCare »The time when this communication is to occuroccurrence[x] : Type [0..1] « dateTime|Period »For draft requests, indicates the date of initial creation. For requests with other statuses, indicates the date of activationauthoredOn : dateTime [0..1]The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communicationsender : Reference [0..1] « Device|Organization|Patient|Practitioner| RelatedPerson »Describes why the request is being made in coded or textual formreasonCode : CodeableConcept [0..*] « Codes for describing reasons for the occurrence of a communication. (Strength=Example)v3 Code System ActReason?? »Indicates another resource whose existence justifies this requestreasonReference : Reference [0..*] « Condition|Observation »Comments made about the request by the requester, sender, recipient, subject or other participantsnote : Annotation [0..*]PayloadThe communicated content (or for multi-part communications, one portion of the communication)content[x] : Type [1..1] « string|Attachment|Reference(Any) »RequesterThe device, practitioner, etc. who initiated the requestagent : Reference [1..1] « Practitioner|Organization|Patient| RelatedPerson|Device »The organization the device or practitioner was acting on behalf ofonBehalfOf : Reference [0..1] « Organization »Text, attachment(s), or resource(s) to be communicated to the recipientpayload[0..*]The individual who initiated the request and has responsibility for its activationrequester[0..1]

XML Template

<CommunicationRequest 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>
 <basedOn><!-- 0..* Reference(Any) Fulfills plan or proposal --></basedOn>
 <replaces><!-- 0..* Reference(CommunicationRequest) Request(s) replaced by this request --></replaces>
 <groupIdentifier><!-- 0..1 Identifier Composite request this is part of --></groupIdentifier>
 <status value="[code]"/><!-- 1..1 draft | active | suspended | cancelled | completed | entered-in-error | unknown -->
 <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|
   RelatedPerson|Group|CareTeam) Message recipient --></recipient>
 <about><!-- 0..* Reference(Any) Resources that pertain to this communication request --></about>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Encounter or episode leading to message --></context>
 <payload>  <!-- 0..* Message payload -->
  <content[x]><!-- 1..1 string|Attachment|Reference(Any) Message part content --></content[x]>
 </payload>
 <occurrence[x]><!-- 0..1 dateTime|Period When scheduled --></occurrence[x]>
 <authoredOn value="[dateTime]"/><!-- 0..1 When request transitioned to being actionable -->
 <sender><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   RelatedPerson) Message sender --></sender>
 <requester>  <!-- 0..1 Who/what is requesting service -->
  <agent><!-- 1..1 Reference(Practitioner|Organization|Patient|RelatedPerson|
    Device) Individual making the request --></agent>
  <onBehalfOf><!-- ?? 0..1 Reference(Organization) Organization agent is acting for --></onBehalfOf>
 </requester>
 <reasonCode><!-- 0..* CodeableConcept Why is communication needed? --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation) Why is communication needed? --></reasonReference>
 <note><!-- 0..* Annotation Comments made about communication request --></note>
</CommunicationRequest>

JSON Template

{doco
  "resourceType" : "CommunicationRequest",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Unique identifier
  "basedOn" : [{ Reference(Any) }], // Fulfills plan or proposal
  "replaces" : [{ Reference(CommunicationRequest) }], // Request(s) replaced by this request
  "groupIdentifier" : { Identifier }, // Composite request this is part of
  "status" : "<code>", // R!  draft | active | suspended | cancelled | completed | entered-in-error | unknown
  "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|
   RelatedPerson|Group|CareTeam) }], // Message recipient
  "about" : [{ Reference(Any) }], // Resources that pertain to this communication request
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or episode leading to message
  "payload" : [{ // Message payload
    // content[x]: Message part content. One of these 3:
    "contentString" : "<string>"
    "contentAttachment" : { Attachment }
    "contentReference" : { Reference(Any) }
  }],
  // occurrence[x]: When scheduled. One of these 2:
  "occurrenceDateTime" : "<dateTime>",
  "occurrencePeriod" : { Period },
  "authoredOn" : "<dateTime>", // When request transitioned to being actionable
  "sender" : { Reference(Device|Organization|Patient|Practitioner|
   RelatedPerson) }, // Message sender
  "requester" : { // Who/what is requesting service
    "agent" : { Reference(Practitioner|Organization|Patient|RelatedPerson|
    Device) }, // R!  Individual making the request
    "onBehalfOf" : { Reference(Organization) } // C? Organization agent is acting for
  },
  "reasonCode" : [{ CodeableConcept }], // Why is communication needed?
  "reasonReference" : [{ Reference(Condition|Observation) }], // Why is communication needed?
  "note" : [{ Annotation }] // Comments made about communication request
}

Turtle Template

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


[ a fhir:CommunicationRequest;
  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:CommunicationRequest.identifier [ Identifier ], ... ; # 0..* Unique identifier
  fhir:CommunicationRequest.basedOn [ Reference(Any) ], ... ; # 0..* Fulfills plan or proposal
  fhir:CommunicationRequest.replaces [ Reference(CommunicationRequest) ], ... ; # 0..* Request(s) replaced by this request
  fhir:CommunicationRequest.groupIdentifier [ Identifier ]; # 0..1 Composite request this is part of
  fhir:CommunicationRequest.status [ code ]; # 1..1 draft | active | suspended | cancelled | completed | entered-in-error | unknown
  fhir:CommunicationRequest.category [ CodeableConcept ], ... ; # 0..* Message category
  fhir:CommunicationRequest.priority [ code ]; # 0..1 Message urgency
  fhir:CommunicationRequest.medium [ CodeableConcept ], ... ; # 0..* A channel of communication
  fhir:CommunicationRequest.subject [ Reference(Patient|Group) ]; # 0..1 Focus of message
  fhir:CommunicationRequest.recipient [ Reference(Device|Organization|Patient|Practitioner|RelatedPerson|Group|CareTeam) ], ... ; # 0..* Message recipient
  fhir:CommunicationRequest.about [ Reference(Any) ], ... ; # 0..* Resources that pertain to this communication request
  fhir:CommunicationRequest.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Encounter or episode leading to message
  fhir:CommunicationRequest.payload [ # 0..* Message payload
    # CommunicationRequest.payload.content[x] : 1..1 Message part content. One of these 3
      fhir:CommunicationRequest.payload.contentString [ string ]
      fhir:CommunicationRequest.payload.contentAttachment [ Attachment ]
      fhir:CommunicationRequest.payload.contentReference [ Reference(Any) ]
  ], ...;
  # CommunicationRequest.occurrence[x] : 0..1 When scheduled. One of these 2
    fhir:CommunicationRequest.occurrenceDateTime [ dateTime ]
    fhir:CommunicationRequest.occurrencePeriod [ Period ]
  fhir:CommunicationRequest.authoredOn [ dateTime ]; # 0..1 When request transitioned to being actionable
  fhir:CommunicationRequest.sender [ Reference(Device|Organization|Patient|Practitioner|RelatedPerson) ]; # 0..1 Message sender
  fhir:CommunicationRequest.requester [ # 0..1 Who/what is requesting service
    fhir:CommunicationRequest.requester.agent [ Reference(Practitioner|Organization|Patient|RelatedPerson|Device) ]; # 1..1 Individual making the request
    fhir:CommunicationRequest.requester.onBehalfOf [ Reference(Organization) ]; # 0..1 Organization agent is acting for
  ];
  fhir:CommunicationRequest.reasonCode [ CodeableConcept ], ... ; # 0..* Why is communication needed?
  fhir:CommunicationRequest.reasonReference [ Reference(Condition|Observation) ], ... ; # 0..* Why is communication needed?
  fhir:CommunicationRequest.note [ Annotation ], ... ; # 0..* Comments made about communication request
]

Changes since DSTU2

CommunicationRequest
CommunicationRequest.basedOn
  • Added Element
CommunicationRequest.replaces
  • Added Element
CommunicationRequest.groupIdentifier
  • Added Element
CommunicationRequest.status
  • Min Cardinality changed from 0 to 1
  • Change value set from http://hl7.org/fhir/ValueSet/communication-request-status to http://hl7.org/fhir/ValueSet/request-status
CommunicationRequest.category
  • Max Cardinality changed from 1 to *
CommunicationRequest.priority
  • Type changed from CodeableConcept to code
  • Add Binding http://hl7.org/fhir/ValueSet/request-priority (required)
CommunicationRequest.subject
  • Add Reference(Group)
CommunicationRequest.recipient
  • Add Reference(Group), Add Reference(CareTeam)
CommunicationRequest.about
  • Added Element
CommunicationRequest.context
  • Renamed from encounter to context
  • Add Reference(EpisodeOfCare)
CommunicationRequest.occurrence[x]
  • Added Element
CommunicationRequest.authoredOn
  • Renamed from requestedOn to authoredOn
CommunicationRequest.requester
  • Remove Reference(Practitioner), Remove Reference(Patient), Remove Reference(RelatedPerson)
CommunicationRequest.requester.agent
  • Added Element
CommunicationRequest.requester.onBehalfOf
  • Added Element
CommunicationRequest.reasonCode
  • Renamed from reason to reasonCode
CommunicationRequest.reasonReference
  • Added Element
CommunicationRequest.note
  • Added Element
CommunicationRequest.scheduled[x]
  • 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. 1 fail round-trip testing and 1 r3 resources are invalid (1 errors).).

 

Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron + JSON Schema, ShEx (for Turtle)

PathDefinitionTypeReference
CommunicationRequest.status The status of the communication request.RequiredRequestStatus
CommunicationRequest.category Codes for general categories of communications such as alerts, instruction, etc.ExampleCommunicationCategory
CommunicationRequest.priority Codes indicating the relative importance of a communication request.RequiredRequestPriority
CommunicationRequest.medium Codes for communication mediums such as phone, fax, email, in person, etc.Examplev3 Code System ParticipationMode
CommunicationRequest.reasonCode Codes for describing reasons for the occurrence of a communication.Examplev3 Code System ActReason

  • cmr-1: On CommunicationRequest.requester: onBehalfOf can only be specified if agent is practitioner or device (expression on CommunicationRequest.requester: (agent.resolve() is Practitioner) or (agent.resolve() is Device) or onBehalfOf.exists().not())

Notes to reviewers:

At this time, the code bindings are placeholders to be fleshed out upon further review by the community.

CommunicationRequest.sender and CommunicationRequest.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 request 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
authoreddateWhen request transitioned to being actionableCommunicationRequest.authoredOn
based-onreferenceFulfills plan or proposalCommunicationRequest.basedOn
(Any)
categorytokenMessage categoryCommunicationRequest.category
contextreferenceEncounter or episode leading to messageCommunicationRequest.context
(EpisodeOfCare, Encounter)
encounterreferenceEncounter leading to messageCommunicationRequest.context
(Encounter)
group-identifiertokenComposite request this is part ofCommunicationRequest.groupIdentifier
identifiertokenUnique identifierCommunicationRequest.identifier
mediumtokenA channel of communicationCommunicationRequest.medium
occurrencedateWhen scheduledCommunicationRequest.occurrence.as(DateTime)
patientreferenceFocus of messageCommunicationRequest.subject
(Patient)
prioritytokenMessage urgencyCommunicationRequest.priority
recipientreferenceMessage recipientCommunicationRequest.recipient
(Practitioner, Group, Organization, CareTeam, Device, Patient, RelatedPerson)
replacesreferenceRequest(s) replaced by this requestCommunicationRequest.replaces
(CommunicationRequest)
requesterreferenceIndividual making the requestCommunicationRequest.requester.agent
(Practitioner, Organization, Device, Patient, RelatedPerson)
senderreferenceMessage senderCommunicationRequest.sender
(Practitioner, Organization, Device, Patient, RelatedPerson)
statustokendraft | active | suspended | cancelled | completed | entered-in-error | unknownCommunicationRequest.status
subjectreferenceFocus of messageCommunicationRequest.subject
(Group, Patient)