Release 4 5 Preview #2
This page is part of the FHIR Specification (v4.0.1: R4 - Mixed Normative and STU ). This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

8.21 Resource CommunicationRequest - Content

Patient Care Work Group Maturity Level : 2   Trial Use Security Category : Patient Compartments : 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 requester requests the sender to send the payload to the recipient. 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 itself itself.

This resource implements the Request pattern.

Structure

reasonReference Σ 0..* Reference ( Condition | Observation | DiagnosticReport | DocumentReference ) Why is communication needed?
Name Flags Card. Type Description & Constraints doco
. . CommunicationRequest TU DomainResource A request for information to be sent to a receiver
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier Σ 0..* Identifier Unique identifier
. . . basedOn Σ 0..* Reference ( Any ) Fulfills plan or proposal
. . . replaces Σ 0..* Reference ( CommunicationRequest ) Request(s) replaced by this request
. . . status ?! Σ 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
RequestStatus ( Required )
. . . statusReason 0..1 CodeableConcept Reason for current status
CommunicationRequest Status Reason ( Example )
. . . category 0..* CodeableConcept Message category
CommunicationCategory ( Example )
. . . priority Σ 0..1 code routine | urgent | asap | stat
Request priority ( Required )
. . . doNotPerform ?! Σ 0..1 boolean True if request is prohibiting action
. . . medium 0..* CodeableConcept A channel of communication
v3 Code System ParticipationMode ( Example )
. . . subject 0..1 Reference ( Patient | Group ) Focus of message
. . . about 0..* Reference ( Any ) Resources that pertain to this communication request
. . . encounter Σ 0..1 Reference ( Encounter ) The Encounter during which this CommunicationRequest was created as part of
. . . payload 0..* BackboneElement Message payload
. . . . content[x] 1..1 Message part content
. . . . contentString . contentAttachment string Attachment
. . . . contentAttachment . contentReference Attachment Reference ( Any )
. . . . contentReference . contentCodeableConcept Reference ( Any CodeableConcept )
. . . occurrence[x] Σ 0..1 When scheduled
. . . . occurrenceDateTime dateTime
. . . . occurrencePeriod Period
. . . authoredOn Σ 0..1 dateTime When request transitioned to being actionable
. . . requester Σ 0..1 Reference ( Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device ) Who/what is requesting service Who asks for the information to be shared
. . . recipient 0..* Reference ( Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam | HealthcareService | Endpoint ) Message recipient Who to share the information with
. . . sender informationProvider Σ 0..1 0..* Reference ( Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService | Endpoint ) Message sender Who should share the information
. . reasonCode . reason Σ 0..* CodeableConcept CodeableReference ( Any ) Why is communication needed?
v3 Code System ActReason ( Example )
. . . note 0..* Annotation Comments made about communication request

doco Documentation for this format

UML Diagram ( Legend )

CommunicationRequest ( DomainResource ) Business identifiers assigned to this communication request by the performer or other systems which remain constant as the resource is updated and propagates from server to server identifier : Identifier [0..*] A plan or proposal that is fulfilled in whole or in part by this request basedOn : Reference [0..*] « Any » Completed or terminated request(s) whose function is taken by this new request replaces : 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 form groupIdentifier : 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 ! » Captures the reason for the current state of the CommunicationRequest statusReason : CodeableConcept [0..1] « Codes identifying the reason for the current state of a request. (Strength=Example) CommunicationRequestStatusRea... ?? » The type of message to be sent such as alert, notification, reminder, instruction, etc category : 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, routine priority : code [0..1] « Codes indicating the relative importance of a communication request. (Strength=Required) RequestPriority ! » If true indicates that the CommunicationRequest is asking for the specified action to *not* occur (this element modifies the meaning of other elements) doNotPerform : boolean [0..1] 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.ParticipationMode ?? » The patient or group that is the focus of this communication request subject : Reference [0..1] « Patient | Group » Other resources that pertain to this communication request and to which this communication request should be associated about : Reference [0..*] « Any » The Encounter during which this CommunicationRequest was created or to which the creation of this record is tightly associated encounter : Reference [0..1] « Encounter » The time when this communication is to occur occurrence[x] : Type DataType [0..1] « dateTime | Period » For draft requests, indicates the date of initial creation. For requests with other statuses, indicates the date of activation authoredOn : dateTime [0..1] The device, individual, or organization who initiated the request and has responsibility asks for its activation the information to be shared requester : Reference [0..1] « Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device » The entity (e.g. person, organization, clinical information system, device, group, or care team) which is the intended target of the communication recipient : Reference [0..*] « Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam | HealthcareService | Endpoint » The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication sender informationProvider : Reference [0..1] [0..*] « Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService | Endpoint » Describes why the request is being made in coded or textual form reasonCode reason : CodeableConcept DataType [0..*] « Any ; Codes for describing reasons for the occurrence of a communication. (Strength=Example) v3.ActReason ?? » Indicates another resource whose existence justifies this request reasonReference : Reference [0..*] « Condition | Observation | DiagnosticReport | DocumentReference » Comments made about the request by the requester, sender, recipient, subject or other participants note : Annotation [0..*] Payload The communicated content (or for multi-part communications, one portion of the communication) content[x] : Type DataType [1..1] « string | Attachment | Reference ( Any ) )| CodeableConcept » Text, attachment(s), or resource(s) to be communicated to the recipient payload [0..*]

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 | on-hold | revoked | completed | entered-in-error | unknown -->
 <</statusReason>

 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>

 <category><!-- 0..* CodeableConcept Message category --></category>
 <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat -->
 <doNotPerform value="[boolean]"/><!-- 0..1 True if request is prohibiting action -->
 <medium><!-- 0..* CodeableConcept A channel of communication --></medium>
 <</subject>

 <subject><!-- 0..1 Reference(Group|Patient) Focus of message --></subject>

 <about><!-- 0..* Reference(Any) Resources that pertain to this communication request --></about>
 <</encounter>

 <encounter><!-- 0..1 Reference(Encounter) The Encounter during which this CommunicationRequest was created --></encounter>

 <payload>  <!-- 0..* Message payload -->
  <</content[x]>

  <content[x]><!-- 1..1 Attachment|Reference(Any)|CodeableConcept 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 -->
 <|
   </requester>
 <|
   </recipient>
 <|
   </sender>
 <</reasonCode>
 <|
   </reasonReference>

 <requester><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Who asks for the information to be shared --></requester>
 <recipient><!-- 0..* Reference(CareTeam|Device|Endpoint|Group|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) Who to share the information with --></recipient>
 <informationProvider><!-- 0..* Reference(Device|Endpoint|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) Who should share the information --></informationProvider>
 <reason><!-- 0..* CodeableReference(Any) Why is communication needed? --></reason>

 <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 | on-hold | revoked | completed | entered-in-error | unknown
  "

  "statusReason" : { CodeableConcept }, // Reason for current status

  "category" : [{ CodeableConcept }], // Message category
  "priority" : "<code>", // routine | urgent | asap | stat
  "doNotPerform" : <boolean>, // True if request is prohibiting action
  "medium" : [{ CodeableConcept }], // A channel of communication
  "

  "subject" : { Reference(Group|Patient) }, // Focus of message

  "about" : [{ Reference(Any) }], // Resources that pertain to this communication request
  "

  "encounter" : { Reference(Encounter) }, // The Encounter during which this CommunicationRequest was created

  "payload" : [{ // Message payload
    // content[x]: Message part content. One of these 3:
    ">"

    "contentAttachment" : { Attachment }
    "contentReference" : { Reference(Any) }
    "contentCodeableConcept" : { CodeableConcept }

  }],
  // occurrence[x]: When scheduled. One of these 2:
  "occurrenceDateTime" : "<dateTime>",
  "occurrencePeriod" : { Period },
  "authoredOn" : "<dateTime>", // When request transitioned to being actionable
  "|
   
  "|
   
  "|
   
  "
  "|
   

  "requester" : { Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }, // Who asks for the information to be shared
  "recipient" : [{ Reference(CareTeam|Device|Endpoint|Group|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who to share the information with
  "informationProvider" : [{ Reference(Device|Endpoint|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who should share the information
  "reason" : [{ CodeableReference(Any) }], // 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 | on-hold | revoked | completed | entered-in-error | unknown
  fhir:CommunicationRequest.statusReason [ CodeableConcept ]; # 0..1 Reason for current status
  fhir:CommunicationRequest.category [ CodeableConcept ], ... ; # 0..* Message category
  fhir:CommunicationRequest.priority [ code ]; # 0..1 routine | urgent | asap | stat
  fhir:CommunicationRequest.doNotPerform [ boolean ]; # 0..1 True if request is prohibiting action
  fhir:CommunicationRequest.medium [ CodeableConcept ], ... ; # 0..* A channel of communication
  fhir:

  fhir:CommunicationRequest.subject [ Reference(Group|Patient) ]; # 0..1 Focus of message

  fhir:CommunicationRequest.about [ Reference(Any) ], ... ; # 0..* Resources that pertain to this communication request
  fhir:

  fhir:CommunicationRequest.encounter [ Reference(Encounter) ]; # 0..1 The Encounter during which this CommunicationRequest was created

  fhir:CommunicationRequest.payload [ # 0..* Message payload
    # CommunicationRequest.payload.content[x] : 1..1 Message part content. One of these 3
      fhir: ]

      fhir:CommunicationRequest.payload.contentAttachment [ Attachment ]
      fhir:CommunicationRequest.payload.contentReference [ Reference(Any) ]
      fhir:CommunicationRequest.payload.contentCodeableConcept [ CodeableConcept ]

  ], ...;
  # 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:
  fhir:|
  
  fhir:|
  
  fhir:
  fhir:

  fhir:CommunicationRequest.requester [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who asks for the information to be shared
  fhir:CommunicationRequest.recipient [ Reference(CareTeam|Device|Endpoint|Group|HealthcareService|Organization|Patient|
  Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 0..* Who to share the information with
  fhir:CommunicationRequest.informationProvider [ Reference(Device|Endpoint|HealthcareService|Organization|Patient|Practitioner|
  PractitionerRole|RelatedPerson) ], ... ; # 0..* Who should share the information
  fhir:CommunicationRequest.reason [ CodeableReference(Any) ], ... ; # 0..* Why is communication needed?

  fhir:CommunicationRequest.note [ Annotation ], ... ; # 0..* Comments made about communication request
]

Changes since R3

CommunicationRequest
CommunicationRequest.status
  • Change value set from http://hl7.org/fhir/ValueSet/request-status http://hl7.org/fhir/ValueSet/request-status|4.0.0 to http://hl7.org/fhir/ValueSet/request-status|4.0.1 CommunicationRequest.statusReason Added Element http://hl7.org/fhir/ValueSet/request-status|4.4.0
CommunicationRequest.priority
  • Change value set from http://hl7.org/fhir/ValueSet/request-priority http://hl7.org/fhir/ValueSet/request-priority|4.0.0 to http://hl7.org/fhir/ValueSet/request-priority|4.0.1 CommunicationRequest.doNotPerform Added Element CommunicationRequest.about Added Element CommunicationRequest.encounter Added Element http://hl7.org/fhir/ValueSet/request-priority|4.4.0
CommunicationRequest.requester CommunicationRequest.payload.content[x]
  • Add Type changed from BackboneElement to Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) CodeableConcept
  • CommunicationRequest.recipient
  • Remove Type Reference: Added Target Types PractitionerRole, HealthcareService string
CommunicationRequest.sender CommunicationRequest.recipient
  • Type Reference: Added Target Types PractitionerRole, HealthcareService Type Endpoint
CommunicationRequest.reasonReference CommunicationRequest.informationProvider
  • Type Reference: Added Target Types DiagnosticReport, DocumentReference Element
CommunicationRequest.topic CommunicationRequest.reason
  • deleted Added Element
CommunicationRequest.context CommunicationRequest.sender
  • deleted
CommunicationRequest.requester.agent CommunicationRequest.reasonCode
  • deleted
CommunicationRequest.requester.onBehalfOf CommunicationRequest.reasonReference
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R3 <--> R4 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and 1 r3 resources are invalid (0 errors). )

Structure

reasonReference Σ 0..* Reference ( Condition | Observation | DiagnosticReport | DocumentReference ) Why is communication needed?
Name Flags Card. Type Description & Constraints doco
. . CommunicationRequest TU DomainResource A request for information to be sent to a receiver
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier Σ 0..* Identifier Unique identifier
. . . basedOn Σ 0..* Reference ( Any ) Fulfills plan or proposal
. . . replaces Σ 0..* Reference ( CommunicationRequest ) Request(s) replaced by this request
. . . status ?! Σ 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
RequestStatus ( Required )
. . . statusReason 0..1 CodeableConcept Reason for current status
CommunicationRequest Status Reason ( Example )
. . . category 0..* CodeableConcept Message category
CommunicationCategory ( Example )
. . . priority Σ 0..1 code routine | urgent | asap | stat
Request priority ( Required )
. . . doNotPerform ?! Σ 0..1 boolean True if request is prohibiting action
. . . medium 0..* CodeableConcept A channel of communication
v3 Code System ParticipationMode ( Example )
. . . subject 0..1 Reference ( Patient | Group ) Focus of message
. . . about 0..* Reference ( Any ) Resources that pertain to this communication request
. . . encounter Σ 0..1 Reference ( Encounter ) The Encounter during which this CommunicationRequest was created as part of
. . . payload 0..* BackboneElement Message payload
. . . . content[x] 1..1 Message part content
. . . . contentString . contentAttachment string Attachment
. . . . contentAttachment . contentReference Attachment Reference ( Any )
. . . . contentReference . contentCodeableConcept Reference ( Any CodeableConcept )
. . . occurrence[x] Σ 0..1 When scheduled
. . . . occurrenceDateTime dateTime
. . . . occurrencePeriod Period
. . . authoredOn Σ 0..1 dateTime When request transitioned to being actionable
. . . requester Σ 0..1 Reference ( Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device ) Who/what is requesting service Who asks for the information to be shared
. . . recipient 0..* Reference ( Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam | HealthcareService | Endpoint ) Message recipient Who to share the information with
. . . sender informationProvider Σ 0..1 0..* Reference ( Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService | Endpoint ) Message sender Who should share the information
. . reasonCode . reason Σ 0..* CodeableConcept CodeableReference ( Any ) Why is communication needed?
v3 Code System ActReason ( Example )
. . . note 0..* Annotation Comments made about communication request

doco Documentation for this format

UML Diagram ( Legend )

CommunicationRequest ( DomainResource ) Business identifiers assigned to this communication request by the performer or other systems which remain constant as the resource is updated and propagates from server to server identifier : Identifier [0..*] A plan or proposal that is fulfilled in whole or in part by this request basedOn : Reference [0..*] « Any » Completed or terminated request(s) whose function is taken by this new request replaces : 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 form groupIdentifier : 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 ! » Captures the reason for the current state of the CommunicationRequest statusReason : CodeableConcept [0..1] « Codes identifying the reason for the current state of a request. (Strength=Example) CommunicationRequestStatusRea... ?? » The type of message to be sent such as alert, notification, reminder, instruction, etc category : 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, routine priority : code [0..1] « Codes indicating the relative importance of a communication request. (Strength=Required) RequestPriority ! » If true indicates that the CommunicationRequest is asking for the specified action to *not* occur (this element modifies the meaning of other elements) doNotPerform : boolean [0..1] 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.ParticipationMode ?? » The patient or group that is the focus of this communication request subject : Reference [0..1] « Patient | Group » Other resources that pertain to this communication request and to which this communication request should be associated about : Reference [0..*] « Any » The Encounter during which this CommunicationRequest was created or to which the creation of this record is tightly associated encounter : Reference [0..1] « Encounter » The time when this communication is to occur occurrence[x] : Type DataType [0..1] « dateTime | Period » For draft requests, indicates the date of initial creation. For requests with other statuses, indicates the date of activation authoredOn : dateTime [0..1] The device, individual, or organization who initiated the request and has responsibility asks for its activation the information to be shared requester : Reference [0..1] « Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device » The entity (e.g. person, organization, clinical information system, device, group, or care team) which is the intended target of the communication recipient : Reference [0..*] « Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Group | CareTeam | HealthcareService | Endpoint » The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication sender informationProvider : Reference [0..1] [0..*] « Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService | Endpoint » Describes why the request is being made in coded or textual form reasonCode reason : CodeableConcept DataType [0..*] « Any ; Codes for describing reasons for the occurrence of a communication. (Strength=Example) v3.ActReason ?? » Indicates another resource whose existence justifies this request reasonReference : Reference [0..*] « Condition | Observation | DiagnosticReport | DocumentReference » Comments made about the request by the requester, sender, recipient, subject or other participants note : Annotation [0..*] Payload The communicated content (or for multi-part communications, one portion of the communication) content[x] : Type DataType [1..1] « string | Attachment | Reference ( Any ) )| CodeableConcept » Text, attachment(s), or resource(s) to be communicated to the recipient payload [0..*]

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 | on-hold | revoked | completed | entered-in-error | unknown -->
 <</statusReason>

 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>

 <category><!-- 0..* CodeableConcept Message category --></category>
 <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat -->
 <doNotPerform value="[boolean]"/><!-- 0..1 True if request is prohibiting action -->
 <medium><!-- 0..* CodeableConcept A channel of communication --></medium>
 <</subject>

 <subject><!-- 0..1 Reference(Group|Patient) Focus of message --></subject>

 <about><!-- 0..* Reference(Any) Resources that pertain to this communication request --></about>
 <</encounter>

 <encounter><!-- 0..1 Reference(Encounter) The Encounter during which this CommunicationRequest was created --></encounter>

 <payload>  <!-- 0..* Message payload -->
  <</content[x]>

  <content[x]><!-- 1..1 Attachment|Reference(Any)|CodeableConcept 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 -->
 <|
   </requester>
 <|
   </recipient>
 <|
   </sender>
 <</reasonCode>
 <|
   </reasonReference>

 <requester><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Who asks for the information to be shared --></requester>
 <recipient><!-- 0..* Reference(CareTeam|Device|Endpoint|Group|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) Who to share the information with --></recipient>
 <informationProvider><!-- 0..* Reference(Device|Endpoint|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) Who should share the information --></informationProvider>
 <reason><!-- 0..* CodeableReference(Any) Why is communication needed? --></reason>

 <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 | on-hold | revoked | completed | entered-in-error | unknown
  "

  "statusReason" : { CodeableConcept }, // Reason for current status

  "category" : [{ CodeableConcept }], // Message category
  "priority" : "<code>", // routine | urgent | asap | stat
  "doNotPerform" : <boolean>, // True if request is prohibiting action
  "medium" : [{ CodeableConcept }], // A channel of communication
  "

  "subject" : { Reference(Group|Patient) }, // Focus of message

  "about" : [{ Reference(Any) }], // Resources that pertain to this communication request
  "

  "encounter" : { Reference(Encounter) }, // The Encounter during which this CommunicationRequest was created

  "payload" : [{ // Message payload
    // content[x]: Message part content. One of these 3:
    ">"

    "contentAttachment" : { Attachment }
    "contentReference" : { Reference(Any) }
    "contentCodeableConcept" : { CodeableConcept }

  }],
  // occurrence[x]: When scheduled. One of these 2:
  "occurrenceDateTime" : "<dateTime>",
  "occurrencePeriod" : { Period },
  "authoredOn" : "<dateTime>", // When request transitioned to being actionable
  "|
   
  "|
   
  "|
   
  "
  "|
   

  "requester" : { Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }, // Who asks for the information to be shared
  "recipient" : [{ Reference(CareTeam|Device|Endpoint|Group|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who to share the information with
  "informationProvider" : [{ Reference(Device|Endpoint|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who should share the information
  "reason" : [{ CodeableReference(Any) }], // 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 | on-hold | revoked | completed | entered-in-error | unknown
  fhir:CommunicationRequest.statusReason [ CodeableConcept ]; # 0..1 Reason for current status
  fhir:CommunicationRequest.category [ CodeableConcept ], ... ; # 0..* Message category
  fhir:CommunicationRequest.priority [ code ]; # 0..1 routine | urgent | asap | stat
  fhir:CommunicationRequest.doNotPerform [ boolean ]; # 0..1 True if request is prohibiting action
  fhir:CommunicationRequest.medium [ CodeableConcept ], ... ; # 0..* A channel of communication
  fhir:

  fhir:CommunicationRequest.subject [ Reference(Group|Patient) ]; # 0..1 Focus of message

  fhir:CommunicationRequest.about [ Reference(Any) ], ... ; # 0..* Resources that pertain to this communication request
  fhir:

  fhir:CommunicationRequest.encounter [ Reference(Encounter) ]; # 0..1 The Encounter during which this CommunicationRequest was created

  fhir:CommunicationRequest.payload [ # 0..* Message payload
    # CommunicationRequest.payload.content[x] : 1..1 Message part content. One of these 3
      fhir: ]

      fhir:CommunicationRequest.payload.contentAttachment [ Attachment ]
      fhir:CommunicationRequest.payload.contentReference [ Reference(Any) ]
      fhir:CommunicationRequest.payload.contentCodeableConcept [ CodeableConcept ]

  ], ...;
  # 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:
  fhir:|
  
  fhir:|
  
  fhir:
  fhir:

  fhir:CommunicationRequest.requester [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who asks for the information to be shared
  fhir:CommunicationRequest.recipient [ Reference(CareTeam|Device|Endpoint|Group|HealthcareService|Organization|Patient|
  Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 0..* Who to share the information with
  fhir:CommunicationRequest.informationProvider [ Reference(Device|Endpoint|HealthcareService|Organization|Patient|Practitioner|
  PractitionerRole|RelatedPerson) ], ... ; # 0..* Who should share the information
  fhir:CommunicationRequest.reason [ CodeableReference(Any) ], ... ; # 0..* Why is communication needed?

  fhir:CommunicationRequest.note [ Annotation ], ... ; # 0..* Comments made about communication request
]

Changes since Release 3

CommunicationRequest
CommunicationRequest.status
  • Change value set from http://hl7.org/fhir/ValueSet/request-status http://hl7.org/fhir/ValueSet/request-status|4.0.0 to http://hl7.org/fhir/ValueSet/request-status|4.0.1 CommunicationRequest.statusReason Added Element http://hl7.org/fhir/ValueSet/request-status|4.4.0
CommunicationRequest.priority
  • Change value set from http://hl7.org/fhir/ValueSet/request-priority http://hl7.org/fhir/ValueSet/request-priority|4.0.0 to http://hl7.org/fhir/ValueSet/request-priority|4.0.1 CommunicationRequest.doNotPerform Added Element CommunicationRequest.about Added Element CommunicationRequest.encounter Added Element http://hl7.org/fhir/ValueSet/request-priority|4.4.0
CommunicationRequest.requester CommunicationRequest.payload.content[x]
  • Add Type changed from BackboneElement to Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) CodeableConcept
  • CommunicationRequest.recipient
  • Remove Type Reference: Added Target Types PractitionerRole, HealthcareService string
CommunicationRequest.sender CommunicationRequest.recipient
  • Type Reference: Added Target Types PractitionerRole, HealthcareService Type Endpoint
CommunicationRequest.reasonReference CommunicationRequest.informationProvider
  • Type Reference: Added Target Types DiagnosticReport, DocumentReference Element
CommunicationRequest.topic CommunicationRequest.reason
  • deleted Added Element
CommunicationRequest.context CommunicationRequest.sender
  • deleted
CommunicationRequest.requester.agent CommunicationRequest.reasonCode
  • deleted
CommunicationRequest.requester.onBehalfOf CommunicationRequest.reasonReference
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R3 <--> R4 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and 1 r3 resources are invalid (0 errors). )

 

See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON , XML Schema / Schematron + JSON Schema , ShEx (for Turtle ) + see the extensions , the spreadsheet version & the dependency analysis a

Path Definition Type Reference
CommunicationRequest.status The status of the communication request. Required RequestStatus
CommunicationRequest.statusReason Codes identifying the reason for the current state of a request. Unknown Example No details provided yet CommunicationRequestStatusReason
CommunicationRequest.category Codes for general categories of communications such as alerts, instruction, etc. Example CommunicationCategory
CommunicationRequest.priority Codes indicating the relative importance of a communication request. Required RequestPriority
CommunicationRequest.medium Codes for communication mediums such as phone, fax, email, in person, etc. Example v3.ParticipationMode
CommunicationRequest.reasonCode CommunicationRequest.reason Codes for describing reasons for the occurrence of a communication. Example v3.ActReason

Notes to reviewers:

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

CommunicationRequest.sender allows Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService and CommunicationRequest.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 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.

Name Type Description Expression In Common
authored N date When request transitioned to being actionable CommunicationRequest.authoredOn
based-on reference Fulfills plan or proposal CommunicationRequest.basedOn
(Any)
category token Message category CommunicationRequest.category
encounter reference The Encounter during which this CommunicationRequest was created as part of CommunicationRequest.encounter
( Encounter )
group-identifier token Composite request this is part of CommunicationRequest.groupIdentifier
identifier token Unique identifier CommunicationRequest.identifier
information-provider reference Who should share the information CommunicationRequest.informationProvider
( Practitioner , Organization , Endpoint , Device , Patient , HealthcareService , PractitionerRole , RelatedPerson )
medium token A channel of communication CommunicationRequest.medium
occurrence date When scheduled (CommunicationRequest.occurrence as dateTime) CommunicationRequest.occurrence.as(dateTime) | CommunicationRequest.occurrence.as(Period)
patient reference Focus of message CommunicationRequest.subject.where(resolve() is Patient)
( Patient )
priority N token routine | urgent | asap | stat CommunicationRequest.priority
recipient reference Message recipient Who to share the information with CommunicationRequest.recipient
( Practitioner , Group , Organization , CareTeam , Endpoint , Device , Patient , HealthcareService , PractitionerRole , RelatedPerson )
replaces reference Request(s) replaced by this request CommunicationRequest.replaces
( CommunicationRequest )
requester reference Who/what is requesting service Who asks for the information to be shared CommunicationRequest.requester
( Practitioner , Organization , Device , Patient , PractitionerRole , RelatedPerson )
sender reference Message sender CommunicationRequest.sender ( Practitioner , Organization , Device , Patient , HealthcareService , PractitionerRole , RelatedPerson ) status N token draft | active | on-hold | revoked | completed | entered-in-error | unknown CommunicationRequest.status
subject reference Focus of message CommunicationRequest.subject
( Group , Patient )