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.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.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"