FHIR Implementation Guide for ABDM
5.0.0 - active
India
FHIR Implementation Guide for ABDM - Local Development build (v5.0.0). See the Directory of published versions
Official URL: https://nrces.in/ndhm/fhir/r4/StructureDefinition/CommunicationRequest | Version: 5.0.0 | |||
Draft as of 2023-12-22 | Computable Name: CommunicationRequest |
This profile sets the minimum requirement for a communication to be carried out, serving as a record of the communication request. In this context, a communication refers to the transmission of information from a sender to a receiver. The requester initiates the communication by asking the sender to convey the payload to the intended recipient. The sender and receivers involved in this process can encompass patients, practitioners, related persons, organizations, and devices.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from CommunicationRequest
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | CommunicationRequest | A request for information to be sent to a receiver | |
![]() ![]() ![]() | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request | |
![]() ![]() ![]() | 0..1 | Reference(RelatedPerson | Device | Practitioner | PractitionerRole | Organization | Patient) | Who/what is requesting service | |
![]() ![]() ![]() | 0..* | Reference(Device | RelatedPerson | Group | CareTeam | HealthcareService | Organization | Patient | Practitioner | PractitionerRole) | Message recipient | |
![]() |
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | CommunicationRequest | A request for information to be sent to a receiver | |
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | Σ | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request |
![]() ![]() ![]() | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of the communication request. |
![]() ![]() ![]() | ?!Σ | 0..1 | boolean | True if request is prohibiting action |
![]() ![]() ![]() | Σ | 0..1 | Reference(RelatedPerson | Device | Practitioner | PractitionerRole | Organization | Patient) | Who/what is requesting service |
![]() ![]() ![]() | 0..* | Reference(Device | RelatedPerson | Group | CareTeam | HealthcareService | Organization | Patient | Practitioner | PractitionerRole) | Message recipient | |
![]() |
Path | Conformance | ValueSet |
CommunicationRequest.status | required | RequestStatus |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | CommunicationRequest | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Name | Flags | Card. | Type | Description & Constraints![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() | 0..* | CommunicationRequest | A request for information to be sent to a receiver | |||||
![]() ![]() ![]() | Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() | Σ | 0..* | Identifier | Unique identifier | ||||
![]() ![]() ![]() | Σ | 0..* | Reference(Resource) | Fulfills plan or proposal | ||||
![]() ![]() ![]() | Σ | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request | ||||
![]() ![]() ![]() | Σ | 0..1 | Identifier | Composite request this is part of | ||||
![]() ![]() ![]() | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of the communication request. | ||||
![]() ![]() ![]() | 0..1 | CodeableConcept | Reason for current status Binding: (unbound) (example): Codes identifying the reason for the current state of a request. | |||||
![]() ![]() ![]() | 0..* | CodeableConcept | Message category Binding: CommunicationCategory (example): Codes for general categories of communications such as alerts, instruction, etc. | |||||
![]() ![]() ![]() | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Codes indicating the relative importance of a communication request. | ||||
![]() ![]() ![]() | ?!Σ | 0..1 | boolean | True if request is prohibiting action | ||||
![]() ![]() ![]() | 0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc. | |||||
![]() ![]() ![]() | 0..1 | Reference(Patient | Group) | Focus of message | |||||
![]() ![]() ![]() | 0..* | Reference(Resource) | Resources that pertain to this communication request | |||||
![]() ![]() ![]() | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
![]() ![]() ![]() | 0..* | BackboneElement | Message payload | |||||
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() | 1..1 | Message part content | ||||||
![]() ![]() ![]() ![]() ![]() | string | |||||||
![]() ![]() ![]() ![]() ![]() | Attachment | |||||||
![]() ![]() ![]() ![]() ![]() | Reference(Resource) | |||||||
![]() ![]() ![]() | Σ | 0..1 | When scheduled | |||||
![]() ![]() ![]() ![]() | dateTime | |||||||
![]() ![]() ![]() ![]() | Period | |||||||
![]() ![]() ![]() | Σ | 0..1 | dateTime | When request transitioned to being actionable | ||||
![]() ![]() ![]() | Σ | 0..1 | Reference(RelatedPerson | Device | Practitioner | PractitionerRole | Organization | Patient) | Who/what is requesting service | ||||
![]() ![]() ![]() | 0..* | Reference(Device | RelatedPerson | Group | CareTeam | HealthcareService | Organization | Patient | Practitioner | PractitionerRole) | Message recipient | |||||
![]() ![]() ![]() | Σ | 0..1 | Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService) | Message sender | ||||
![]() ![]() ![]() | Σ | 0..* | CodeableConcept | Why is communication needed? Binding: v3 Code System ActReason (example): Codes for describing reasons for the occurrence of a communication. | ||||
![]() ![]() ![]() | Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Why is communication needed? | ||||
![]() ![]() ![]() | 0..* | Annotation | Comments made about communication request | |||||
![]() |
Path | Conformance | ValueSet | ||||
CommunicationRequest.language | preferred | CommonLanguages
| ||||
CommunicationRequest.status | required | RequestStatus | ||||
CommunicationRequest.statusReason | example | |||||
CommunicationRequest.category | example | CommunicationCategory | ||||
CommunicationRequest.priority | required | RequestPriority | ||||
CommunicationRequest.medium | example | ParticipationMode | ||||
CommunicationRequest.reasonCode | example | ActReason |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | CommunicationRequest | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
This structure is derived from CommunicationRequest
Summary
Structures
This structure refers to these other structures:
Differential View
This structure is derived from CommunicationRequest
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | CommunicationRequest | A request for information to be sent to a receiver | |
![]() ![]() ![]() | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request | |
![]() ![]() ![]() | 0..1 | Reference(RelatedPerson | Device | Practitioner | PractitionerRole | Organization | Patient) | Who/what is requesting service | |
![]() ![]() ![]() | 0..* | Reference(Device | RelatedPerson | Group | CareTeam | HealthcareService | Organization | Patient | Practitioner | PractitionerRole) | Message recipient | |
![]() |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | CommunicationRequest | A request for information to be sent to a receiver | |
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | Σ | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request |
![]() ![]() ![]() | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of the communication request. |
![]() ![]() ![]() | ?!Σ | 0..1 | boolean | True if request is prohibiting action |
![]() ![]() ![]() | Σ | 0..1 | Reference(RelatedPerson | Device | Practitioner | PractitionerRole | Organization | Patient) | Who/what is requesting service |
![]() ![]() ![]() | 0..* | Reference(Device | RelatedPerson | Group | CareTeam | HealthcareService | Organization | Patient | Practitioner | PractitionerRole) | Message recipient | |
![]() |
Path | Conformance | ValueSet |
CommunicationRequest.status | required | RequestStatus |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | CommunicationRequest | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() | 0..* | CommunicationRequest | A request for information to be sent to a receiver | |||||
![]() ![]() ![]() | Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() | Σ | 0..* | Identifier | Unique identifier | ||||
![]() ![]() ![]() | Σ | 0..* | Reference(Resource) | Fulfills plan or proposal | ||||
![]() ![]() ![]() | Σ | 0..* | Reference(CommunicationRequest) | Request(s) replaced by this request | ||||
![]() ![]() ![]() | Σ | 0..1 | Identifier | Composite request this is part of | ||||
![]() ![]() ![]() | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of the communication request. | ||||
![]() ![]() ![]() | 0..1 | CodeableConcept | Reason for current status Binding: (unbound) (example): Codes identifying the reason for the current state of a request. | |||||
![]() ![]() ![]() | 0..* | CodeableConcept | Message category Binding: CommunicationCategory (example): Codes for general categories of communications such as alerts, instruction, etc. | |||||
![]() ![]() ![]() | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Codes indicating the relative importance of a communication request. | ||||
![]() ![]() ![]() | ?!Σ | 0..1 | boolean | True if request is prohibiting action | ||||
![]() ![]() ![]() | 0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc. | |||||
![]() ![]() ![]() | 0..1 | Reference(Patient | Group) | Focus of message | |||||
![]() ![]() ![]() | 0..* | Reference(Resource) | Resources that pertain to this communication request | |||||
![]() ![]() ![]() | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
![]() ![]() ![]() | 0..* | BackboneElement | Message payload | |||||
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() | 1..1 | Message part content | ||||||
![]() ![]() ![]() ![]() ![]() | string | |||||||
![]() ![]() ![]() ![]() ![]() | Attachment | |||||||
![]() ![]() ![]() ![]() ![]() | Reference(Resource) | |||||||
![]() ![]() ![]() | Σ | 0..1 | When scheduled | |||||
![]() ![]() ![]() ![]() | dateTime | |||||||
![]() ![]() ![]() ![]() | Period | |||||||
![]() ![]() ![]() | Σ | 0..1 | dateTime | When request transitioned to being actionable | ||||
![]() ![]() ![]() | Σ | 0..1 | Reference(RelatedPerson | Device | Practitioner | PractitionerRole | Organization | Patient) | Who/what is requesting service | ||||
![]() ![]() ![]() | 0..* | Reference(Device | RelatedPerson | Group | CareTeam | HealthcareService | Organization | Patient | Practitioner | PractitionerRole) | Message recipient | |||||
![]() ![]() ![]() | Σ | 0..1 | Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | HealthcareService) | Message sender | ||||
![]() ![]() ![]() | Σ | 0..* | CodeableConcept | Why is communication needed? Binding: v3 Code System ActReason (example): Codes for describing reasons for the occurrence of a communication. | ||||
![]() ![]() ![]() | Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Why is communication needed? | ||||
![]() ![]() ![]() | 0..* | Annotation | Comments made about communication request | |||||
![]() |
Path | Conformance | ValueSet | ||||
CommunicationRequest.language | preferred | CommonLanguages
| ||||
CommunicationRequest.status | required | RequestStatus | ||||
CommunicationRequest.statusReason | example | |||||
CommunicationRequest.category | example | CommunicationCategory | ||||
CommunicationRequest.priority | required | RequestPriority | ||||
CommunicationRequest.medium | example | ParticipationMode | ||||
CommunicationRequest.reasonCode | example | ActReason |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | CommunicationRequest | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | CommunicationRequest | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | CommunicationRequest | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
This structure is derived from CommunicationRequest
Summary
Structures
This structure refers to these other structures:
Other representations of profile: CSV, Excel, Schematron