DRAFT - The specification is currently in development and subject to significant change. It is not ready for limited roll-out or production level use.

Artifacts

FHIR Artifacts

This implementation guide defines conformance criteria for different roles that a system participating in an eReferral integrations may perform.

Behaviour: Message Definitions

MessageDefinitions are referenced within CapabilityStatements within this IG to define the conformance requirements for different systems.

Note: Links to MessageDefinitions are currently provided on pages with an overview of the bundle.

Event Payload Source Description
add-service-request MessageBundle - Appointment (CA:eReC) eReC Source Request that a new ServiceRequest be performed on the eReC Target
revoke-service-request MessageBundle - ServiceRequest (CA:eReC) eReC Source Notify systems that a ServiceRequest has been terminated and request that the ServiceRequest and related information be removed
notify-add-service-request MessageBundle - ServiceRequest (CA:eReC) eReC Source Notify systems other than the eReC Target that a new ServiceRequest has been created
notify-update-service-request MessageBundle - ServiceRequest (CA:eReC) eReC Source Notify systems that a ServiceRequest or its status has been updated
notify-data-correction MessageBundle - ServiceRequest (CA:eReC) eReC Target Notify systems that the eReC Target has corrected information in a ServiceRequest or related resource
notify-add-process-request MessageBundle - Task (CA:eReC) eReC Target Notify systems that a Process Request Task has been created to perform a ServiceRequest
notify-update-process-request MessageBundle - Task (CA:eReC) eReC Target Notify systems that a Process Request Task, its status or related information has changed
notify-add-appointment MessageBundle - Appointment (CA:eReC) eReC Target Notify systems that an appointment has been created in response to a ServiceRequest
add-communication MessageBundle - Communication (CA:eReC) eReC Source or eReC Target Send a question or additional information (Communication) about a ServiceRequest
send-communication-from-requester MessageBundle - Communication (CA:eReC) eReC Source or eReC Target Send a question or additional information (Communication) about a ServiceRequest
send-communication-from-provider MessageBundle - Communication (CA:eReC) eReC Target Request for additional information about a ServiceRequest

Profiles

Structures: Resource Profiles

These define constraints on FHIR resources used within messages and/or RESTful interactions defined in this implementation guide.

Messaging Support

FHIR Messaging uses bundles of Resources with MessageHeaders to exchange information between systems.

Resource Type Description
Bundle (CA:eReC) Used to exchange a series of Resources (entries) to another system in FHIR Messaging.
MessageHeader (CA:eReC) The first entry in the Bundle is used to specify the trigger event, the focus of the message and provides information for message routing.

In Focus Resources

The focus of a message varies between events and reflects the key Resource being acted upon. These resources will contain references to other Resources representing the entities (people and organizations) participating in the request as well as supporting information.

Resource Type Description
ServiceRequest (CA:eReC) The eReferral Request (ServiceRequest) itself is the focus of most messages being sent from a eReC Source to eReC Target.
Task (CA:eReC) A Task is used to track work done
Appointment (CA:eReC) The Appointment is used to provide information about a planned meeting that may be in the future/past
Communication (CA:eReC) Communications (questions or information) may be exchanged between the eReC Source and eReC Target.

Entities

Resources representing the entities (people and organizations) participating in the request.

Resource Type Description
Patient (CA:eReC) The subject of the referral request
PractitionerRole (CA:eReC) Defines the requester or targeted service provider. Should reference one Practitioner or one Organization resource. Also referenced in other resources.
Practitioner (CA:eReC) Provides the requester or service provider identity (PractitionerRole.practitioner). Also, in case the author is not the requester the author reference in the MessageHeader may refer to a second Practitioner resource.
Organization (CA:eReC) Identifies the recipient HCC (PractitionerRole.organization) in the MessageHeader. Can also appear in other PractitionerRole.organization references.
Location (CA:eReC) Location includes both incidental locations (a place which is used for healthcare without prior designation or authorization) and dedicated, formally appointed locations.

Supporting Information

Resources used to provide supporting information for the request.

Resource Type Description
DocumentReference (CA:eReC) Any additional PDF forms/documents that have to be included as documents.
Communication (CA:eReC) Communications (questions or information) may be exchanged between the eReC Source and eReC Target.
QuestionnaireResponse (CA:eReC) A list of nested Questions and Answers items that complement the Service Request order details.

Extensions Defined in This Guide

These define extensions to FHIR resources created for use within the Resource Profiles defined in this guide. Extension specific business rules can be found below the table.

Extension Description Related Profile(s)
Communication Barrier The extension is required to identify if the patient speaks/understands an official language (English/French), or if she/he does not an interpreter is required. Patient (CA:eReC): Patient.communication.extension
CopiedParticipants The extension is used to copy updates to the ServiceRequest in cases of forwarding referrals. ServiceRequest (CA:eReC): ServiceRequest.extension
DARC The extension is required to identify the dates affecting a patient's readiness to consult. ServiceRequest (CA:eReC): ServiceRequest.extension
DART The extension is required to identify the dates affecting a patient's readiness to treat. ServiceRequest (CA:eReC): ServiceRequest.extension
ReasonForNoHCN This extension is used to convey the reason for not providing the patient's health card number as a business identifier. Patient (CA:eReC): Patient.identifier.extension
HealthCardNumberVersionCode An assigned sequence code, uniquely identifying a Health Card issued (or potentially issued) to a Registered Person Patient (CA:eReC): Patient.identifier.extension
PatientNeedsToBeSeen A boolean value (True or False) indicating if a patient needs to be seen, when a Performer (Specialist) responds to a consult request suggesting an eReferral. Task (CA:eReC): Task.extension
PatientPresentLocation Extension is used to communicate the present location of the patient if it is different than the patient's home address. ServiceRequest (CA:eReC): ServiceRequest.extension
PerformerIdentifier This extension allows additional identifiers to be included under ServiceRequest.performer. ServiceRequest (CA:eReC): ServiceRequest.performer.extension
RoutingOptions This is an extension required for Referral Source Type identification. Only one referral routing object expected. MessageHeader (CA:eReC): MessageHeader.extension, ServiceRequest (CA:eReC): ServiceRequest.extension
ReferralIdentifier For requisitions this extension is used to convey the ServiceRequest.requisition identifier in the message header. MessageHeader (CA:eReC): MessageHeader.extension

Note: Extensions applied to the HealthcareService payload (e.g., AccessInstructions, DeliveryMethod, Facet, IsPrimary, Media, UsageLicense) have not been included in this version of the guide. Future versions may expand the guidance related to interacting with endpoints and payloads for HealthcareService information (either as a section in this guide or through a separate guide). In the meantime, implementers in need of further guidance on the HealthcareService characteristics and design practices should refer to the HealthcareService Directories Section under the Business Rules page the Ontario eServices v0.11.1 Guide.

Routing Options Business Rules

Some referral processes may ask the referrer to provide some data that impacts the performer's automated referral processing rules. The rules for how a performer processes their referrals can be unique to the performer. Some examples include routing based on:

  • The type of referrer (from the hospital, primary care, out of province, etc...)
  • The patient's Postal Code FSA (e.g., K8N, L0L, etc...)
  • The first letter of the patient's last name (e.g., A-J, K-Z)

To handle this, use the Routing Options extension, which is included in both the ServiceRequest AND MessageHeader (for add-service-request event) resources. By also including the extension in the MessageHeader, it makes it easier for implementers to find the key routing-related data fields without needing to dig further into the referral payload.

Note: When the eReferral process is combined with a service directory, the directory should be able to publish the valueSet of referral options that are available for a selected service.

Patient Present Location Business Rules

Sometimes a referral needs to communicate where the patient is at the time of the referral (e.g., in Ward X of Hospital Y), which may be different from the patient's home address. To communicate this, use the PatientPresentLocation extension, which references a Location resource.

Present location can be nested using Location.partOf to communicate locations with multiple levels, e.g., Location.partOf > Location for WardX > HospitalY.

Extensions Defined Externally

Gender, Birth Sex, & Gender Identity Business Rules

Patient.gender is to be used to specify the observed patient gender at the time of the referral (regardless of the gender presentation at birth). This is also referred to as "administrative gender", which is the gender that the patient is considered to have for administration and record keeping purposes. This property is often used as an input to patient matching algorithms.

Due to its importance in patient matching algorithms, gender is a mandatory element. In the case where a referral does not need to know gender, set "Patient.gender" = "unknown".

Note that the FHIR Patient resource documentation discusses patient.gender in depth.

Regarding more detailed tracking of gender identity there are ongoing discussions in the standards community, this implementation guide is waiting on a community consensus. If more detailed gender values are required, an implementer may consider using the FHIR individual-genderIdentity extension. To specify birth sex, consider using the US Core birthSex extension or the CIHI IRRS FHIR Implementation Guide.


Terminology: Value Sets

Various coded values which are used to describe clinical concepts within health records as well as codes used within messages to meet the structural requirements of interfaces. See Terminology for information about terminology used in this IG.