A: Primary Flow

The following sequence diagram shows the primary messaging flow starting from the Requester HCP (Referring Provider) sending a service request to the CAT until the Performer HCP completes the service.

See Participants for more information.

aberec-sequence-primary-flow

Element and Value

The following table includes elements for Communication, DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole resources. The elements for remaining resources are listed in appropriate steps below.

Element Value
Communication.id UUID
Communication.basedOn.identifier.value ServiceRequest provincial identifier
Communication.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Communication.inResponseTo.reference Communication UUID - if applicable
Communication.inResponseTo.type "Communication" - if applicable
Communication.status "completed"
Communication.category as appropriate
Communication.subject.identifier.value Patient identifier
Communication.subject.identifier.system as appropriate
Communication.sent current date/time
Communication.recipient as appropriate
Communication.sender as appropriate
Communication.payload.contentString 1) string AND/OR
Communication.payload.contentReference 2) DocumentReference UUID
DocumentReference.id UUID
DocumentReference.meta.lastUpdated date/time
DocumentReference.identifier.value UUID
DocumentReference.identifier.system "urn:ietf:rfc:3986"
DocumentReference.status "current"
DocumentReference.type "57133-1" (Referral note)
DocumentReference.subject.reference Patient UUID
DocumentReference.subject.type "Patient"
DocumentReference.subject.identifier.value Patient identifier
DocumentReference.subject.identifier.type "JHN"
DocumentReference.subject.identifier.system as appropriate
DocumentReference.date date/time
DocumentReference.author.reference UUID
DocumentReference.author.type "Practitioner" or "PractitionerRole"
DocumentReference.author.identifier.value Practitioner identifier
DocumentReference.author.identifier.system as appropropriate
DocumentReference.content.attachment.contentType "application/pdf"
DocumentReference.content.attachment.data as appropriate
DocumentReference.content.attachment.title as appropriate
DocumentReference.context.related.reference ServiceRequest UUID
DocumentReference.context.related.type "ServiceRequest"
DocumentReference.context.related.identifier.value ServiceRequest UUID or provincial identifier
DocumentReference.context.related.identifier.system "urn:ietf:rfc:3986" or "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
HealthcareService.id UUID
HealthcareService.meta.lastUpdated date/time
HealthcareService.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
HealthcareService.identifier.value as appropriate
HealthcareService.type as appropriate
HealthcareService.name as appropriate
HealthcareService.telecom as appropriate
HealthcareService.providedBy.name same as HeathcareService.name
HealthcareService.providedBy.contact.name.family as appropriate
HealthcareService.providedBy.contact.name.given as appropriate
Location.id UUID
Location.meta.lastUpdated date/time
Location.identifier.type "FI"
Location.identfiier.system as appropriate
Location.identifier.value as appropriate
Location.name as appropriate
Location.telecom.system "phone" or "fax"
Location.telecom.value as appropriate
Location.address.type "physical"
Location.address.line as appropriate
Locaiton.address.city as appropriate
Location.address.state as appropriate
Location.address.postalCode as appropriate
Patient.id UUID
Patient.meta.lastUpdated date/time
Patient.identifier.type "JHN"
Patient.identifier.system as appropriate
Patient.identifier.assigner.display as appropriate
Patient.identifier.value as appropriate
Patient.name.text as appropriate
Patient.name.family as appropriate
Patient.name.given as appropriate
Patient.telecom.system "phone" or "fax"
Patient.telecom.value as appropriate
Patient.gender "other"
Patient.birthDate as appropriate
Patient.address.use as appropriate or defaults to "home"
Patient.address.type as appropriate or defaults to "both"
Patient.address.line as appropriate
Patient.address.city as appropriate
Patient.address.state as appropriate
Patient.address.postalCode as appropriate
Patient.address.country as appropriate
Patient.contact.relationship as appropriate
Patient.contact.name as appropriate
Patient.contact.telecom as appropriate
Patient.contact.address as appropriate
Patient.communication.language as appropriate
Patient.extension.individual-recordedSexOrGender as appropiate
Patient.extension.matureMinor as appropriate
Practitioner.id UUID
Practitioner.meta.lastUpdated date/time
Practitioner.identifier.type as appropriate
Practitioner.identifier.system as appropriate
Practitioner.identifier.assigner.display as appropriate
Practitioner.identifier.value as appropriate
Practitioner.name.family as appropriate
Practitioner.name.given as appropriate
PractitionerRole.id UUID
PractitionerRole.meta.lastUpdated date/time
PractitionerRole.practitioner.reference UUID
PractitionerRole.practitioner.type "Practitioner"
PractitionerRole.practitioner.identifier.type "PRN" or "LN"
PractitionerRole.practitioner.identifier.system as appropriate
PractitionerRole.practitioner.identifier.value as appropriate
PractitionerRole.code as appropriate
PractitionerRole.specialty as appropriate
PractitionerRole.location.reference UUID
PractitionerRole.location.type "Location"
PractitionerRole.location.identifier.type "FI"
PractitionerRole.location.identifier.system as appropriate
PractitionerRole.location.identifier.value as appropriate

Step 1: Requester HCP sends service request to CAT

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "add-service-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Requester HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Requester HCP endpoint
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value UUID
ServiceRequest.identifier.system "urn:ietf:rfc:3986"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as appropriate
ServiceRequest.priority "routine" (or "urgent" as appropriate)
ServiceRequest.priority.extension.subPriority "semi-urgent" as appropriate)
ServiceRequest.code as appropriate
ServiceRequest.orderDetail.text as appropriate
ServiceRequest.subject.reference UUID
ServiceRequest.subject.type "Patient"
ServiceRequest.authoredOn date/time when Requester EMR created service request
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.reference CAT UUID
ServiceRequest.performer.type "HealthcareService"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.reasonCode.text as appropriate
ServiceRequest.supportingInfo as appropriate/needed
ServiceRequest.bodySite.text as appropriate
ServiceRequest.note.text N/A
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType "service-provider" and/or "service-location"
ServiceRequest.extension.patientPreference.extension.preferenceValue as appropriate
ServiceRequest.extension.patientPreference.extension.rationale as appropriate

Step 2: CAT acknowledges service request from Requester HCP

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-add-process-request"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.system ServiceRequest UUID
Task.basedOn.identifier.value "urn:ietf:rfc:3986"
Task.status "received"
Task.businessStatus "received"
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference CAT UUID
Task.owner.type ("HealthcareService")

Step 4: CAT notifies Requester HCP of creation of referral record

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-add-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value 1) provincial identifier assigned by CAT
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.identifier.value 2) UUID assigned by Requester HCP EMR
ServiceRequest.identifier.system "urn:ietf:rfc:3986"
ServiceRequest.replaces.identifier.value UUID assigned by Requester HCP EMR
ServiceRequest.replaces.identifier.system "urn:ietf:rfc:3986"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Requester HCP
ServiceRequest.note.text N/A
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp.extension.timestampType "referral-received"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.rationale as received from Requester HCP

Step 6: CAT sends service request to Performer HCP

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.eventCoding "add-service-request"
MessageHeader.destination.endpoint Performer HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP or as assigned by CAT
ServiceRequest.orderDetail.text as received from Requester HCP
ServiceRequest.subject.reference UUID
ServiceRequest.subject.type "Patient"
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.reference Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"
ServiceRequest.performer.extension.role "receiving-provider" or "service-location"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Requester HCP
ServiceRequest.note.text N/A
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp "referral-received"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP

Step 7: CAT notifies Requester HCP of assignment of Performer HCP

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "service-request-assigned"
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP or as assigned by CAT
ServiceRequest.orderDetail.text as received from Requester HCP
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Request HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"
ServiceRequest.performer.extension.role "receiving-provider" or "service-location"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Request HCP
ServiceRequest.note.text N/A
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp.extension.timestampType "referral-received"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP

Step 8: Performer HCP acknowledges service request from CAT

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-add-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.system ServiceRequest UUID
Task.basedOn.identifier.value "urn:ietf:rfc:3986"
Task.status "received"
Task.businessStatus "received"
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference Performer HCP UUID
Task.owner.type "PractitionerRole" or "HealthcareService"

Step 10: Performer HCP notifies CAT of service request acceptance

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Task
Task.id.value UUID
Task.id.system "urn:ietf:rfc:3986"
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "accepted"
Task.businessStatus "accepted"
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference Performer HCP UUID
Task.owner.type "PractitionerRole"

Step 12: CAT notifies Requester HCP that performer accepts service request

Same as Step 10 above with changes as below:

Element Value
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.author.reference N/A
MessageHeader.author.type N/A
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 13: CAT notifies Requester HCP of update to referral record (accepted)

Same as Step 10 above with changes as below:

Element Value
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.author.reference N/A
MessageHeader.author.type N/A
MessageHeader.source.endpoint CAT RMS endpoint
Task.basedOn.reference UUID
Task.basedOn.type "ServiceRequest"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.id UUID
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.orderDetail.text as received from Requester HCP
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole"
ServiceRequest.performer.identifier.system as appropriate
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Request HCP
ServiceRequest.note.text N/A
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp.extension.timestampType 1) "referral-received" 2) "referral-accepted"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP

Step 15: Performer HCP notifies CAT of new appointment

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Appointment
MessageHeader.id UUID
MessageHader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-add-appointment"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Appointment
Appointment.id UUID
Appointment.meta.lastUpdated date/time
Appointment.identifier.value UUID
Appointment.identifier.system "urn:ietf:rfc:3986"
Appointment.status "booked"
Appointment.start as assigned by Performer HCP
Appointment.created date/time when Performer HCP created appointment
Appointment.comment as appropriate
Appointment.basedOn.identifier.value ServiceRequest provincial identifier
Appointment.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Appointment.participant.identifier.value 1) Patient identifier
Appointment.participant.identifier.system as appropriate
Appointment.participant.reference 2) Performer HCP UUID
Appointment.participant.type "PractitionerRole"
Appointment.extension.AppointmentClass as appropriate

Step 17: CAT notifies Requester HCP that appointment is booked

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "in-progress"
Task.businessStatus "booked"
Task.intent "proposal"
Task.authoredOn date/time
Task.lastModified date/time
Task.code "process-request"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 18: CAT notifies Requester HCP of update to referral record (appointment booked)

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Appointment
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "appointment-status-updated"
MessageHeader.focus Appointment
Appointment.id UUID
Appointment.meta.lastUpdated date/time
Appointment.identifier.value UUID
Appointment.identifier.system "urn:ietf:rfc:3986"
Appointment.status "booked"
Appointment.start as assigned by Performer HCP
Appointment.created date/time when Performer HCP created appointment
Appointment.comment as appropriate
Appointment.basedOn.reference ServiceRequest UUID
Appointment.basedOn.type "ServiceRequest"
Appointment.participant.identifier.value 1) Patient identifier
Appointment.participant.identifier.system as appropriate
Appointment.participant.reference 2) Performer HCP UUID
Appointment.participant.type "PractitionerRole"
Appointment.extension.AppointmentClass as appropriate
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole"
ServiceRequest.performer.extension.role "receiving-provider"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Request HCP
ServiceRequest.note.text N/A
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp.extension.timestampType 1) "referral-received" 2) "referral-accepted" 3) "appointment-booked"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP

Step 20: Performer HCP notifies CAT of appointment completion

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Appointment
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.reason "appointment-status-updated"
MessageHeader.focus Appointment
Appointment.id UUID
Appointment.meta.lastUpdated date/time
Appointment.identifier.value UUID
Appointment.identifier.system "urn:ietf:rfc:3986"
Appointment.status "fulfilled"
Appointment.start as assigned by Performer HCP
Appointment.created date/time when Performer HCP created appointment
Appointment.comment as appropriate
Appointment.basedOn.reference ServiceRequest UUID
Appointment.basedOn.type "ServiceRequest"
Appointment.participant.identifier.value 1) Patient identifier
Appointment.participant.identifier.system as appropriate
Appointment.participant.reference 2) Performer HCP UUID
Appointment.participant.type "PractitionerRole"
Appointment.extension.AppointmentClass as appropriate

Step 22: CAT notifies Requester HCP of appointment completion

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "appointment-status-updated"
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "in-progress"
Task.businessStatus "appointment-attended"
Task.intent "proposal"
Task.authoredOn date/time
Task.lastModified date/time
Task.code "process-request"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 23: CAT notifies Requester HCP of update to referral record (appointment attended)

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Appointment
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "appointment-status-updated"
MessageHeader.focus Appointment
Appointment.id UUID
Appointment.meta.lastUpdated date/time
Appointment.identifier.value UUID
Appointment.identifier.system "urn:ietf:rfc:3986"
Appointment.status "fulfilled"
Appointment.start as assigned by Performer HCP
Appointment.created date/time when Performer HCP created appointment
Appointment.comment as appropriate
Appointment.basedOn.reference ServiceRequest UUID
Appointment.basedOn.type "ServiceRequest"
Appointment.participant.identifier.value 1) Patient identifier
Appointment.participant.identifier.system as appropriate
Appointment.participant.reference 2) Performer HCP UUID
Appointment.participant.type "PractitionerRole"
Appointment.extension.AppointmentClass as appropriate
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole"
ServiceRequest.performer.extension.role "receiving-provider"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Request HCP
ServiceRequest.note.text N/A
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp.extension.timestampType 1) "referral-received" 2) "referral-accepted" 3) "appointment-booked" 4) "appointment-attended"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP

Step 25: Performer HCP notifies CAT of service request completion

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Task
Task.id.value UUID
Task.id.system "urn:ietf:rfc:3986"
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "completed"
Task.businessStatus "completed"
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference Performer HCP UUID
Task.owner.type "PractitionerRole"
Task.output.type as appropriate
Task.output.value[x].valueString 1) if with advise in string format OR
Task.output.value[x].valueReference 2) Communication UUID if with advise as a document (e.g. in pdf format)
Communication.category "advice" - if applicable
Communication.recipient.identifier.value CAT identifier (HealthcareService) - if applicable
Communication.recipient.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id" - if applicable
Communication.sender.reference Performer HCP UUID - if applicable
Communication.sender.type "PractitionerRole" - if applicable

Step 27: CAT notifies Requester HCP of service request completed

Same as Step 25 above with changes as below:

Element Value
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 28: CAT notifies Requester HCP of update to referral record

Same as Step 7 above with changes as below:

Element Value
MessageHeader.reason "service-request-status-updated"
ServiceRequest.status "completed"
ServiceRequest.extension.referralTimestamp.extension.timestampType 1) "referral-received" 2) "referral-accepted" 3) "appointment-booked" 4) "appointment-attended" 5) "referral-completed"

B: Requester HCP sends unsolicited update

The following sequence diagram shows the messaging flow when the Requester HCP sends unsolicited update on service request to the CAT.

See Participants for more information.

aberec-sequence-unsolicited-update

Business Rules

  • Only Open Referrals May Be Updated: A referral with a closed status in the Central RMS (that is, equivalent to ServiceRequest.status "completed" or "revoked") cannot be updated and resubmitted. (If a referral with such a closed status is resubmitted, it will be rejected as an invalid submission.) Only a referral with an open status in the Central RMS (equivalent to ServiceRequest.status "active") can be updated and resubmitted.

  • Send Patient AB ULI with Referral Update Request If the referral was originally submitted with an out-of-province PHN, an Alberta ULI for the patient will have been returned to the referring provider's EMR as part of the Service Record following the initial successful submission. The Alberta ULI shall be used in the referral update request.

  • Non-Updateable Elements: Certain information on a previously submitted referral cannot be updated on a referral update request. Non-updateable elements:

    • Patient identifier and demographics that would change the subject of the referral The updated referral must still refer to the same patient (that is, the submitted patient identifier and demographics must resolve in the Provincial Client Registry to the same patient). However it is not mandatory to submit exactly the same patient identifier and demographics as the original submission. For example, if the referral was initially submitted with the wrong patient birthdate, which has since been corrected in the EMR, the updated referral can be submitted with the correct birthdate.If the referral should have been for a different person, the previously submitted referral will need to be cancelled and a new referral submitted
    • Performer (triage site), including related service zone The updated referral cannot change the referral's Triage Site. If the referral should have been directed to a different Triage Site, the desired change will need to be communicated to the CAT unit through other means (e.g., by phone). Additional methods for electronic communication are expected to become available in later phases of the project.
  • Referral Identifier: The provincially-assigned referral identifier from the initial referral submission must be used in the updated version, so that the Central RMS can correctly identify the record to be updated.

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Requester HCP sends unsolicited update to CAT

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-service-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Requester HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Requester HCP endpoint
MessageHeader.reason as appropriate
MessageHeader.focus ServiceRequest
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as previously valued or updated
ServiceRequest.priority as previously valued or updated
ServiceRequest.priority.extension.subPriority as previously valued or updated
ServiceRequest.code as previously valued or updated
ServiceRequest.orderDetail.text as previously valued or updated
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as previously valued
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"
ServiceRequest.performer.extension.role "receiving-provider" or "service-location"
ServiceRequest.reasonCode.text as previously valued or updated
ServiceRequest.supportingInfo as previously valued or updated
ServiceRequest.bodySite.text as previously valued or updated
ServiceRequest.note.text as previously valued or updated
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as previously valued or updated
ServiceRequest.extension.patientPreference.extension.preferenceValue as previously valued or updated
ServiceRequest.extension.patientPreference.extension.rationale as previously valued or updated

Step 3: CAT sends unsolicited update from Requester HCP to Performer HCP

Same as Step 1 above with changes as below:

Element Value
MessageHeader.destination.endpoint Performer HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint

C: CAT requests information

The following sequence diagram shows the messaging flow when the CAT requests additional information from the Requester HCP (Referring Provider) and the Requester HCP responds to the request.

See Participants for more information.

aberec-sequence-request-info-cat

Element and Value

Refer to Primary Flow for Communication, DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: CAT requests Requester HCP for additional information

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Communication
MessageHeader.id UUID
MessageHeader.eventCoding "send-communication-from-provider"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus Communication
Communication.inResponseTo N/A
Communication.category "rfi"
Communication.recipient.reference Requester HCP UUID
Communication.recipient.type "PractitionerRole"
Communication.sender.identifier.value CAT identifier (HealthcareService)
Communication.sender.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
Communication.payload.contentString message (in string format) to indicate what information is requested

Step 2a: Requester HCP provides CAT additional information (through Communication)

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meat.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Communication
MessageHeader.id UUID
MessageHeader.eventCoding "send-communication-from-requester"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Requester HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Requester HCP endpoint
MessageHeader.focus Communication
Communication.category "rfi"
Communication.recipient.identifier.value CAT identifier (HealthcareService)
Communication.recipient.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
Communication.sender.reference Requester HCP UUID
Communication.sender.type "PractitionerRole"
Communication.payload.contentString 1) response (in string format) to requested information AND/OR
Communication.payload.contentReference 2) DocumentReference UUID as attached document/s

Step 2b: Requester HCP provides CAT additional information (through updated ServiceRequest)

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.eventCoding "notify-update-service-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Requester HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Requester HCP endpoint
MessageHeader.reason supporting-info-updated-rfi
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value ServiceRequest provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as previously valued
ServiceRequest.priority as previously valued
ServiceRequest.priority.extension.subPriority as previously valued
ServiceRequest.code as previously valued
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as previously valued
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"
ServiceRequest.performer.extension.role "receiving-provider" or "service-location"
ServiceRequest.reasonCode.text as previously valued
ServiceRequest.supportingInfo response to requested information
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceValue as previously valued
ServiceRequest.extension.patientPreference.extension.rationale as previously valued

D: Performer HCP requests information

The following sequence diagram shows the messaging flow when the Performer HCP requests additional information from the Requester HCP (Referring Provider) and the Requester HCP (Referring Provider) responds to the request.

See Participants for more information.

aberec-sequence-request-info-performer-hcp

Element and Value

Refer to Primary Flow for *Communication, DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP requests Requester HCP for additional information

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundel.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Communication
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "send-communication-from-provider"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Communication
Communication.inResponseTo N/A
Communication.category "rfi"
Communication.recipient.identifier.value CAT identifier (HealthcareService)
Communication.recipient.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
Communication.sender.reference Performer HCP UUID
Communication.sender.type "PractitionerRole"
Communication.payload.contentString message (in string format) to indicate what information is requested

Step 3: CAT sends requests for additional information to Requester HCP

See Step 1 in CAT requests information message flow

Step 4a: Requester HCP provides additional information (through Communication)

See Step 2a in CAT requests information message flow

Step 4.b: Requester HCP provides additional information (through updated ServiceRequest)

See Step 2b in CAT requests information message flow

Step 6a: CAT sends Performer HCP additional information

See Step 2a in CAT requests information message flow with changes as below:

Element Value
MessageHeader.destination.endpoint Performer HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Communication.recipient.reference Requester HCP UUID
Communication.recipient.type "PractitionerRole"
Communication.sender.identifier.value CAT identifier (HealthcareService)
Communication.sender.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 6b: CAT sends Performer HCP additional information

See Step 2b in CAT requests information message flow with changes as below:

Element Value
MessageHeader.destination.endpoint Performer HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint

E: CAT rejects service request

The following sequence diagram shows the messaging flow when the CAT rejects the service request as invalid or inappropriate.

See Participants for more information.

aberec-sequence-reject-cat

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 2: CAT notifies Requester HCP that service request is rejected

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdate date/time
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
Task.status "rejected"
Task.businessStatus "rejected-by-central-triage"
Task.businessStatus.extension.BusinessStatusReason as appropriate
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
Task.note as appropriate

Step 3: CAT notifies Requester HCP of update to referral record (rejected)

Same as Step 2 above with changes as below:

Element Value
MessageHeader.reason "service-request-status-updated"
MessageHeader.eventCoding "notify-update-service-record"
Task.basedOn.reference UUID
Task.basedOn.type "ServiceRequest"
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.status "revoked"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.subject.identifier Patient identifier
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Requester HCP
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued + "referral-rejected"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.rationale as received from Requester HCP

F: Performer HCP declines and CAT reassigns

The following sequence diagram shows the messaging flow when the Performer HCP (Service Provider) declines the service request and the CAT reassigns to another Performer HCP.

See Participants for more information.

aberec-sequence-decline-with-redirect

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT of decline of service request

See Step 10 in Primary Flow message flow with changes as below:

Element Value
Task.status "rejected"
Task.businessStatus "rejected-by-performer"
Task.businessStatus.extension.BusinessStatusReason as appropriate
Task.note as appropriate

Step 3: CAT sends service request to another Performer HCP

See Step 6 in Primary Flow message flow

Step 4: CAT notifies Requester HCP of assignment to another Performer HCP

See Step 7 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.reason "service-request-reassigned"

Step 5: Performer HCP acknowledges service request from CAT

See Step 8 in Primary Flow message flow

G: Performer HCP rejects service request

The following sequence diagram shows the messaging flow when the Performer HCP (Service Provider) rejects the service request as invalid or inappropriate. The service request is not reassigned.

See Participants for more information.

aberec-sequence-reject-performer-hcp

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT of rejection of service request

See Step 1 in Performer HCP declines and CAT reassigns message flow

Step 3: CAT notifies Requester HCP that service request is rejected

Same as Step 2 in CAT rejects service request message flow with changes as below:

Element Value
Task.businessStatus "rejected-by-performer"

Step 4: CAT notifies Requester HCP of update to referral record

See Step 3 in CAT rejects service request message flow with changes as below:

Element Value
Task.businessStatus "rejected-by-performer"

H: Requester HCP revokes service request

The following sequence diagram shows the messaging flow when the Requester HCP (Referring Provider) revokes the service request.

See Participants for more information.

aberec-sequence-revoke-requester-hcp

Business Rules

  • Only Open Referrals May Be Cancelled: A referral with a closed status in the Central RMS (that is, equivalent to ServiceRequest.status "completed" or "revoked") cannot be cancelled by the referring provider. (If an attempt is made to cancel a referral with such a closed status, it will be rejected as invalid.) Only a referral with an open status in the Central RMS (equivalent to ServiceRequest.status "active") can be cancelled.

  • Non-Updateable Elements: The information on a previously submitted referral cannot be changed as part of a cancellation action. This includes the patient, the referring provider, the referral reason, or any other previously submitted information.

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Requester HCP revokes service request

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "revoke-service-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Requester HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Requester HCP endpoint
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "revoked"
ServiceRequest.intent "proposal"
ServiceRequest.category as previously valued
ServiceRequest.priority as previously valued
ServiceRequest.priority.extension.subPriority as previously valued
ServiceRequest.code as previously valued
ServiceRequest.orderDetail.text as previously valued
ServiceRequest.subject.identifier Patient identifier
ServiceRequest.authoredOn as previously valued
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID (if previously assigned by CAT)
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"
ServiceRequest.performer.extension.role "receiving-provider" or "service-location"
ServiceRequest.reasonCode.text as previously valued
ServiceRequest.supportingInfo as previously valued
ServiceRequest.bodySite.text as previously valued
ServiceRequest.note.text as appropriate
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceValue as previously valued
ServiceRequest.extension.patientPreference.extension.rationale as previously valued
ServiceRequest.extension.RequestStatusReason appropriate revocation reason

Step 2.1: CAT notifies Requester HCP that service request was cancelled

See Step 10 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Task.status "cancelled"
Task.businessStatus "cancelled-by-requester"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 3: CAT sends service request cancellation to Performer HCP

Same as Step 1 above with changes as below:

Element Value
MessageHeader.eventCoding "notify-update-service-request"
MessageHeader.destination.endpoint Performer HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "service-request-status-updated"
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued + "referral-cancelled"

I: CAT cancels service request

The following sequence diagram shows the messaging flow when the CAT cancels the service request.

Note: The CAT only cancels the service request if it hasn't been sent to Performer HCP.

See Participants for more information.

aberec-sequence-cancel-cat

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 2: CAT notifies Requester HCP of service request cancellation

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "cancelled"
Task.businessStatus "cancelled-by-central-triage"
Task.businessStatus.extension.BusinessStatusReason as appropriate
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
Task.note as appropriate

Step 3: CAT notifies Requester HCP of update to referral record (cancelled)

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdatd date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "service-request-status-updated"
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "revoked"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.orderDetail.text as received from Requester HCP
ServiceRequest.subject.identifier Patient identifier
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Requester HCP
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued + "referral-cancelled"
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.rationale as received from Requester HCP

J: Performer HCP cancels service request

The following sequence diagram shows the messaging flow when the Performer HCP cancels the service request.

See Participants for more information.

aberec-sequence-cancel-performer-hcp

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT of service request cancellation

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "cancelled"
Task.businessStatus "cancelled-by-performer"
Task.businessStatus.extension.BusinessStatusReason as appropriate
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference Performer HCP UUID
Task.owner.type "PractitionerRole"
Task.note as appropriate

Step 3: CAT notifies Requester HCP of service request cancellation

Same as Step 2 in CAT cancels service request message flow with changes as below:

Element Value
Task.businessStatus "cancelled-by-performer"

Step 4: CAT notifies Requester HCP of update to referral record (cancelled)

See Step 3 in CAT cancels service request

K: Performer HCP defers service request

DEPRECATED - Not to be used

The following sequence diagram shows the messaging flow when the Performer HCP defers the service request.

See Participants for more information.

aberec-sequence-defer

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT that service request is deferred

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "on-hold"
Task.businessStatus "deferred-by-performer"
Task.businessStatus.extension.BusinessStatusReason as appropriate
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference Performer HCP UUID
Task.owner.type "PractitionerRole"

Step 3: CAT notifies Requester HCP that service request is deferred

See Step 1 with changes as below:

Element Value
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 4: CAT notifies Requester HCP of update to referral record (deferred)

See Step 1 with changes as below:

Resource & element Value
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Task.basedOn.reference UUID
Task.basedOn.type "ServiceRequest"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.orderDetail.text as received from Requester HCP
ServiceRequest.subject.identifier Patient identifier
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Requester HCP
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.rationale as received from Requester HCP

L: Performer HCP cancels appointment

The following sequence diagram shows the messaging flow when the Performer HCP cancels an appointment.

See Participants for more information.

aberec-sequence-appointment-cancel

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT of appointment cancellation

See Step 15 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.reason "appointment-status-updated"
Appointment.status "cancelled"
Appointment.cancellationReason as appropriate

Step 3: CAT notifies Requester HCP of appointment cancellation

See Step 17 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.reason "appointment-status-updated"
Task.businessStatus "appointment-cancelled"

Step 4: CAT notifies Requester HCP of update to referral record (appointment cancelled)

See Step 18 of Primary Flow message flow with changes as below:

Element Value
Appointment.status "cancelled"
Appointment.cancellationReason as appropriate
ServiceRequest.extension.referralTimestamp.extension.timestampType timestamp "appointment-booked" will or will not be included depending on the reason for cancellation

M: Performer HCP updates appointment

The following sequence diagram shows the messaging flow when the Performer HCP updates an appointment.

See Participants for more information.

aberec-sequence-appointment-update

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT of appointment update

See Step 15 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.reason "appointment-updated"

Step 3: CAT notifies Requester HCP of appointment update

See Step 17 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.reason "appointment-updated"

Step 4: CAT notifies Requester HCP of update to referral record

See Step 18 of Primary Flow message flow with changes as below:

Element Value
MessageHeader.reason "appointment-updated"

N: Peformer HCP places service request on waitlist

The following sequence diagram shows the messaging flow when the Performer HCP places the service request on a waitlist for an appointment.

See Participants for more information.

aberec-sequence-waitlist

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT that service request was placed on waitlist

Element Value
Bundle.meta.extension.submissionMetadata metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.sysetm "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus Task
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.destination.endpoint CAT RMS endpoint
MessageHeader.author.reference Performer HCP UUID
MessageHeader.author.type "PractitionerRole"
MessageHeader.source.endpoint Performer HCP endpoint
MessageHeader.focus Task
Task.id UUID
Task.meta.lastUpdated date/time
Task.identifier.value UUID
Task.identifier.system "urn:ietf:rfc:3986"
Task.basedOn.identifier.value ServiceRequest provincial identifier
Task.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
Task.status "in-progress"
Task.businessStatus "wait-listed"
Task.intent "proposal"
Task.code "process-request"
Task.authoredOn date/time
Task.lastModified date/time
Task.owner.reference Performer HCP UUID
Task.owner.type "PractitionerRole"
Task.note as appropriate

Step 3: CAT notifies Requester HCP that service request was placed on waitlist

Same as Step 1 above with changes as below:

Element Value
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 4: CAT notifies Requester HCP of update to referral record (waitlisted)

Same as Step 1 above with changes as below:

Element Value
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
Task.basedOn.reference UUID
Task.basedOn.type "ServiceRequest"
Task.owner.identifier.value CAT identifier (HealthcareService)
Task.owner.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP
ServiceRequest.priority as received from Requester HCP
ServiceRequest.priority.extension.subPriority as received from Requester HCP
ServiceRequest.code as received from Requester HCP
ServiceRequest.orderDetail.text as received from Requester HCP
ServiceRequest.subject.identifier Patient identifier
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Requester HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.extension.role "receiving-provider"
ServiceRequest.performer.type "PractitionerRole"
ServiceRequest.reasonCode.text as received from Requester HCP
ServiceRequest.supportingInfo as received from Requester HCP
ServiceRequest.bodySite.text as received from Requester HCP
ServiceRequest.extension.referralTimestamp.extension.timestamp as previously valued
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP
ServiceRequest.extension.patientPreference.extension.rationale as received from Requester HCP

O: CAT creates service request on behalf of Requester HCP

The message flow starting from Step 3 in Primary Flow shows the messaging flow when the CAT creates a follow-on service request (based on a preceding service request) on behalf of Requester HCP.

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 4: CAT notifies Requester HCP of creation of referral record

Element Value
MessageHeader.reason TBD
ServiceRequest.basedOn.identifier.value provincial identifier assigned by CAT
ServiceRequest.basedOn.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"

P: CAT assigns service request to another CAT

The following sequence diagram shows the messaging flow when the CAT assigns the service request to another CAT.

See Participants for more information.

aberec-sequence-assign-to-another-cat

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 2: CAT notifies Requester HCP of updated to referral record

See Step 7 in Primary Flow message flow with changes as below:

Element Value
ServiceRequest.performer.identifier.value CAT identifier (HealthcareService) (Note: This is the newly assigned CAT and replaces the CAT initially assigned by Requester HCP)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.type "HealthcareService"
ServiceRequest.performer.extension.role "central-intake"

Q: Performer HCP notifies missed appointment

The following sequence diagram shows the messaging flow when Performer HCP notifies CAT of missed appointment.

See Participants for more information.

aberec-sequence-appointment-missed

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 1: Performer HCP notifies CAT of missed appointment

See Step 15 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.eventCoding "notify-update-process-request"
MessageHeader.reason "appointment-status-updated"
Appointment.status "noshow"

Step 3: CAT notifies Requester HCP of missed appointment

See Step 17 in Primary Flow message flow with changes as below:

Element Value
MessageHeader.reason "appointment-status-updated"
Task.businessStatus "no-show"

Step 4: CAT notifies Requester HCP of update to referral record (appointment missed)

See Step 18 of Primary flow message flow with changes as below:

Element Value
Appointment.status "noshow"

R: CAT completes service request with advice

The following sequence diagram shows the messaging flow when CAT completes the service request with advice.

Note: This workflow takes place during clerical triage in the CAT.

See Participants for more information.

aberec-sequence-complete-with-advice

Element and Value

Refer to Primary Flow for Communication,DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 2: CAT notifies Requester HCP of service completion and advice

Same as Step 27 in Primary Flow message flow with changes as below:

Element Value
Task.businessStatus "completed-with-advice"
Task.output.type "advice"
Communication.inResponseTo N/A
Communication.category "advice"
Communication.recipient.reference Requester HCP UUID
Communication.recipient.type "PractitionerRole"
Communication.sender.identifier.value CAT identifier (HealthcareService)
Communication.sender.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"

Step 3: CAT notifies Requester HCP of update to referral record

See Step 28 in Primary Flow message flow with changes as below:

Element Value
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued + "referral-completed-with-advice"

S: CAT sends unsolicited update

The following sequence diagram shows the messaging flow when CAT sends unsolicited update to the service request.

See Participants for more information.

aberec-sequence-unsolicited-update-cat

Element and Value

Refer to Primary Flow for DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 2: CAT notifies Requester HCP of update to service request

See Step 17 in Primary Flow message flow with changes as below:

Element Value
Task.businessStatus as previously assigned
Task.note as appropriate
MessageHeader.reason "service-request-updated-other"

Step 3: CAT notifies Requester HCP of update to referral record

Element Value
Bundle.meta.extension.submissionMetadata Metadata for: Submitting Site; EMR Vendor Name; EMR Product Name; Submission Implementation Guide (IG) Type; Submission Implementation Guide (IG) Version; Service Delivery Site; Authoring Provider ID
Bundle.id UUID
Bundle.meta.lastUpdated date/time
Bundle.meta.security "R"
Bundle.identifier.value UUID
Bundle.identifier.system "urn:ietf:rfc:3986"
Bundle.type "message"
Bundle.timestamp current date/time
Bundle.entry:MessageHeader MessageHeader
Bundle.entry:Focus ServiceRequest
MessageHeader.id UUID
MessageHeader.meta.lastUpdated date/time
MessageHeader.eventCoding "notify-update-service-record"
MessageHeader.destination.endpoint Requester HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
MessageHeader.reason "service-request-updated-other"
MessageHeader.focus ServiceRequest
ServiceRequest.id UUID
ServiceRequest.meta.lastUpdated date/time
ServiceRequest.identifier.value provincial identifier
ServiceRequest.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-id"
ServiceRequest.identifier.use "official"
ServiceRequest.status "active"
ServiceRequest.intent "proposal"
ServiceRequest.category as received from Requester HCP or as updated by CAT
ServiceRequest.priority as received from Requester HCP or as updated by CAT
ServiceRequest.priority.extension.subPriority as received from Requester HCP or as updated by CAT
ServiceRequest.code as received from Requester HCP or as assigned by CAT or as updated by CAT
ServiceRequest.orderDetail.text as received from Requester HCP or as updated by CAT
ServiceRequest.subject.identifier.value Patient identifier
ServiceRequest.subject.identifier.system as appropriate
ServiceRequest.authoredOn as received from Requester HCP
ServiceRequest.requester.reference Request HCP UUID
ServiceRequest.requester.type "PractitionerRole"
ServiceRequest.performer.identifier.value 1) CAT identifier (HealthcareService)
ServiceRequest.performer.identifier.system "https://fhir.alberta.ca/NamingSystem/ca-ab-eref-healthcare-service-id"
ServiceRequest.performer.extension.role "central-intake"
ServiceRequest.performer.reference 2) Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"
ServiceRequest.performer.extension.role "receiving-provider" or "service-location"
ServiceRequest.reasonCode.text as received from Requester HCP or as updated by CAT
ServiceRequest.supportingInfo as received from Requester HCP or as updated by CAT
ServiceRequest.bodySite.text as received from Request HCP or as updated by CAT
ServiceRequest.note.text as received from Requester HCP or as updated by CAT
ServiceRequest.extension.referralTimestamp.extension.timestamp date/time
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously assigned
ServiceRequest.extension.patientPreference.extension.preferenceType "preferred"
ServiceRequest.extension.patientPreference.extension.preferenceValueType as received from Requester HCP or as updated by CAT
ServiceRequest.extension.patientPreference.extension.preferenceValue as received from Requester HCP or as updated by CAT

Step 4: CAT sends unsolicited update from Requester HCP to Performer HCP

Same as Step 3 above with changes as below:

Element Value
MessageHeader.destination.endpoint Performer HCP EMR endpoint
MessageHeader.source.endpoint CAT RMS endpoint
ServiceRequest.performer.reference Performer HCP UUID
ServiceRequest.performer.type "PractitionerRole" or "HealthcareService"

T: Performer HCP completes service request with advice

The following sequence diagram shows the messaging flow when Performer HCP completes the service request with advice. This is an alternate flow from the Primary Flow where a service request can be completed without scheduling and completing an appointment.

See Participants for more information.

aberec-sequence-complete-with-advice-performer-hcp

Element and Value

Refer to Primary Flow for Communication,DocumentReference, HealthcareService, Location, Patient, Practitioner, and PractitionerRole elements.

Step 2: Performer HCP notifies CAT of service completion and advice

Same as Step 25 in Primary Flow message flow with changes as below:

Element Value
Task.businessStatus "completed-with-advice"
Task.output.type "advice"

Step 4: CAT notifies Requester HCP of service completion and advice

Same as Step 27 in Primary Flow message flow with changes as below:

Element Value
Task.businessStatus "completed-with-advice"
Task.output.type "advice"

Step 5: CAT notifies Requester HCP of update to referral record

See Step 28 in Primary Flow message flow with changes as below:

Element Value
ServiceRequest.extension.referralTimestamp.extension.timestampType as previously valued + "referral-completed-with-advice"