NHS Booking and Referral Standard

Guide v1.7.0 | Core v1.1.3 | Package v1.32.0

Cancellation

The ability to reverse a digital request, by performing a cancellation, whether booking or referral, is a core workflow within BaRS. It completes the digital workflow, supports genuine interoperability and removes the need for manual intervention by service providers.

Cancellation, for any referral type or booking, is a stripped back request, containing only the specific resources a Receiver requires to the fulfil the request. There are separate MessageDefinitions involved when engaged in referral and booking cancellation workflows.

A prerequisite when performing a cancellation of any request is to perform a read (GET) of either the booking or referral to be cancelled. The Sender must only make a cancellation request if the entity has a status which means it is still current; 'active' in the case of a referral (ServiceRequest) and 'booked' for a booking (Appointment). This ensures the Sender has the latest version of the entity they are about to change or, if it is no longer current (because its been actioned by the Receiver), allows the Sender to advise the end user so an alternative (often manual) workflow can be started. The Receiver must not process a cancellation request for a booking or referral which is not current, instead they must return an appropriate error response.

Cancellation Referral Request Payload

MessageHeader Resource

Standard Patterns for BaRS Operations explains in detail how the MessageHeader resource must be used.

When cancelling a referral, in conjunction with the guidance provided under the Standard Patterns, the three important elements which drive workflow must be used as follows:

  • eventCoding - this must be the same code as used in the request.
  • reasonCode - a cancellation follows an initial request, therefore, this must always be 'update' for cancellation.
  • definition - cancellation has a unique MessageDefinition the request must adhere to.
  • focus - must point to the ServiceRequest resource.

ServiceRequest Resource

The 'focus' resource in a cancellation referral request is the ServiceRequest resource. When the payload is created by the Sender and processed by the Receiver, this is the starting point from which it (the bundle) is understood and provides either the detail or references to all key FHIR resources, for example, the Patient. The guidance for this resource below provides more granular, element level, detail.

When a Receiver processes the cancellation referral request, the two key elements used are the ServiceRequest.id and ServiceRequest.status. The .id must already exist as an 'active' (status) ServiceRequest on the Receiver system (this must have been confirmed by a prior read (GET) by the Sender) and the .status, in the request, must either be 'revoked' or 'entered-in-error'. There is a distinct difference between these two ServiceRequest.status(es). 'Revoked' should be used to denote the original request was intentional but, due to a change in circumstances, is no longer valid, whereas, 'entered-in-error' should be used when original request was in error. The purpose of this differentiation is to allow service providers to accurately report the reason for cancellations.

Patient Resource

Key patient demographics should be cross-referenced between the current 'active' referral and incoming cancellation referral request to ensure validity.

Payload for Referral Cancellation Request

This payload is used to transmit all the necessary information that is required to transmit the cancellation of a Referral.



> Bundle

The Bundle resource is the container for the event message.

typeΣ1..1codeBindingFixed Value
timestampΣ1..1instant
totalΣ I0..1unsignedInt

Bundle The Bundle resource is the container for the event message  https://simplifier.net/nhsbookingandreferrals/barsbundlemessage 1..1
Bundle.id This id is generated by the originating sender of the message, retained in subsequent messages.. MUST 1..1 79120f41-a431-4f08-bcc5-1e67006fcae0
Bundle.meta https://www.hl7.org/fhir/resource.html#Meta MUST 0..1
Bundle.meta.profile This MUST be populated with the structure definition for BaRSBundleMessage : 'https://fhir.nhs.uk/StructureDefinition/BARSBundleMessage' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/StructureDefinition/BARSBundleMessage
Bundle.meta.lastUpdated All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Bundle.type This must be populated with 'message' - FIXED VALUE MUST 1..1 message
Bundle.timestamp the date that the content of the message was assembled. This date is not changed by middleware engines unless they add additional data that changes the meaning of the time of the message MUST 0..1 2023-03-08T12:01:08.4677672+00:00
Bundle.entry(s) Follow BaRS profile guidance for populating this element MUST 1..*
Bundle.entry.fullUrl unique identifier for the resource entry. Transient id relative to the bundle MUST 0..1 urn:uuid:1cbdfb97-5859-48a4-8301-d54eab818d68
Bundle.entry.resourceType Resources detailed in the message definition. MUST 0..1 MessageHeader,Patient, Encounter

> Message Header

A resource that describes the BaRS message being exchanged between two systems.

definitionΣ0..1canonical(MessageDefinition)

MessageHeader A resource that describes the BaRS message being exchanged between two systems https://simplifier.net/nhsbookingandreferrals/barsmessageheaderservicerequestrequest 1..1
MessageHeader.meta https://www.hl7.org/fhir/resource.html#Meta MUST 0..1
MessageHeader.meta.profile This MUST be populated with the structure definition for BaRSMessageHeader-servicerequest-request. MUST 0..1 https://fhir.nhs.uk/StructureDefinition/BARSMEssageHeader-servicerequest-request
MessageHeader.meta.lastUpdated All resources MUST include 'lastUpdated' value, under the meta section which MUST be the same timestamp for each resource when created from new, but MUST be a later timestamp on updates to resources, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 0..1 2023-03-08T12:01:08.4677672+00:00
MessageHeader.extension This MUST be populated with details of the Clinical Decision Support System used MUST 0..*
MessageHeader.extension.url This MUST be populated with 'https://fhir.nhs.uk/StructureDefinition/CDSSExtension' - FIXED VALUE MUST 1..1 https://fhir.nhs.uk/StructureDefinition/CDSSExtension
MessageHeader.extension.extension MUST 0..*
MessageHeader.extension.extension.url This MUST be populated with the pre-defined Clinical Decision Support System software URL - FIXED VALUE MUST 1..1 requesterCDSSSoftware
MessageHeader.extension.extension.valueString This MUST be populated with the Clinical Decision Support System software name e.g. Pathways MUST 0..1 Pathways
MessageHeader.extension.extension MUST 0..*
MessageHeader.extension.extension.url This MUST be populated with the pre-defined Clinical Decision Support System software Version URL - FIXED VALUE MUST 1..1 requesterCDSSVersion
MessageHeader.extension.extension.valueString This MUST be populated with the Clinical Decision Support System software Version name e.g. 30.2.0 MUST 0..1 30.2.0
MessageHeader.eventcoding MUST 1..1
MessageHeader.eventcoding.system This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/message-events-bars' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/CodeSystem/message-events-bars
MessageHeader.eventcoding.code The status MUST be populated with 'servicerequest-request'. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars' - FIXED VALUE MUST 0..1 servicerequest-request
MessageHeader.destination MUST 0..1
MessageHeader.destination.receiver MUST 0..1
MessageHeader.destination.receiver.reference This MUST be populated with the full URL to the Receiving Organisation resource. MUST 0..1 urn:uuid:10397afd-479c-42ea-9d5d-e4024481e0f8
MessageHeader.destination.endpoint This MUST be populated with the system and Service ID separated by a pipe. for example https://fhir.nhs.uk/id/dos-service-id\|11111111, this is to ensure the receiver knows the intended destination. MUST 1..1 https://fhir.nhs.uk/id/dos-service-id\|1122334455
MessageHeader.sender MUST 0..1
MessageHeader.sender.reference This MUST be populated. Follow BaRS profile guidance for populating this element MUST 0..1 urn:uuid:07939a0c-2854-46ff-9282-ad906bc93679
MessageHeader.source MUST 1..1
MessageHeader.source.name This MUST be populated with the sending system supplier name MUST 0..1 NHS Trust
MessageHeader.source.software This SHOULD be populated with the sending software application name SHOULD 0..1 Supplier Software
MessageHeader.source.version This SHOULD be populated with the sending software version SHOULD 0..1 V1.0.0
MessageHeader.source.contact SHOULD 0..1
MessageHeader.source.contact.system This SHOULD be populated with the Contact Type - phone | fax | email | pager | url | sms | other SHOULD 0..1 phone
MessageHeader.source.contact.value This SHOULD be populated with the Contact Type value SHOULD 0..1 +44 (0123) 123 4567
MessageHeader.source.endpoint This MUST be populated with the system and Service ID separated by a pipe. for example https://fhir.nhs.uk/id/dos-service-id\|11111111, this is to ensure the receiver knows where any response messages SHOULD be addressed. MUST 1..1 https://fhir.nhs.uk/id/dos-service-id\|5566778899
MessageHeader.reason MUST 0..1
MessageHeader.reason.coding MUST 0..1
MessageHeader.reason.coding.system This MUST be populated with 'https://fhir.nhs.uk/CodeSystem/message-reason-bars' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/CodeSystem/message-reason-bars
MessageHeader.reason.coding.code This MUST be populated with "delete" for an cancellation. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars' MUST 0..1 delete
MessageHeader.reason.coding.display This MUST be populated with 'Delete' when cancelling a Service Request. SHOULD 0..1 Delete
MessageHeader.focus MUST 0..*
MessageHeader.focus.reference This MUST be populated with a reference to the ServiceRequest MUST 0..1 urn:uuid:236bb75d-90ef-461f-b71e-fde7f899802c
MessageHeader.definition This MUST be populated with the MessageDefinition the bundle is based on. This will be used for validation. Value - https://fhir.nhs.uk/MessageDefinition/bars-message-servicerequest-request-cancelled MUST 0..1 https://fhir.nhs.uk/MessageDefinition/bars-message-servicerequest-request-cancelled

> Service Request

A resource to carry a request for a service to be performed, in this case a Validation. This Resource is the focus of the Validation Request interaction.

instantiatesCanonicalΣ0..*canonical(ActivityDefinition | PlanDefinition)
instantiatesUriΣ0..*uri
statusΣ ?!1..1codeBinding
intentΣ ?!1..1codeBindingFixed Value
categoryΣ1..1CodeableConcept
priorityΣ0..1codeBinding
doNotPerformΣ ?!0..1boolean
codeΣ0..1CodeableConceptBinding
orderDetailΣ I0..*CodeableConcept
authoredOnΣ1..1dateTime
performerTypeΣ0..1CodeableConcept
locationCodeΣ0..*CodeableConcept
reasonCodeΣ0..*CodeableConceptBinding
bodySiteΣ0..*CodeableConceptBinding
note0..*Annotation
patientInstructionΣ0..1string

ServiceRequest A resource to carry a request for a service to be performed, in this case a Validation. This Resource is the focus of the Validation Request interaction https://simplifier.net/nhsbookingandreferrals/barsservicerequest-request-validation 1..1
ServiceRequest.id MUST only be generated by the Receiver as the id for the resource in the synchronous HTTP response. MUST 0..1 236bb75d-90ef-461f-b71e-fde7f899802c
ServiceRequest.meta https://www.hl7.org/fhir/resource.html#Meta MUST 0..1
ServiceRequest.meta.profile https://fhir.nhs.uk/StructureDefinition/BARSServiceRequest-request-validation MUST 0..1 https://fhir.nhs.uk/StructureDefinition/BARSServiceRequest-request-validation
ServiceRequest.meta.lastUpdated All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 0..1 2023-03-08T12:01:08.4677672+00:00
ServiceRequest.basedOn MUST 0..*
ServiceRequest.basedOnreference This MUST be populated with a reference to the CarePlan resource MUST 0..1 urn:uuid:236bb75d-90ef-461f-b71e-fde7f899802c
ServiceRequest.status Only use the following 2 values, as appropriate: revoked is used when a SR is legitimately cancelled, entered-in-error is used when sent to the by mistake and needs to be removed. MUST 1..1 entered-in-error
ServiceRequest.intent This MUST be populated with 'plan' - Fixed Value MUST 1..1 plan
ServiceRequest.category MUST 0..1
ServiceRequest.category.coding MUST 0..*
ServiceRequest.category.coding.system This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/message-category-servicerequest' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/CodeSystem/message-category-servicerequest
ServiceRequest.category.coding.code This MUST be populated with code value appropriate for the Application employed. MUST 0..1 validation
ServiceRequest.category.coding.display This MUST be populated with display value appropriate for the Application employed. MUST 0..1 For Validation
ServiceRequest.subject Follow BaRS profile guidance for populating this element MUST 1..1
ServiceRequest.subjectreference This MUST be populated with a Reference to the Patient resource MUST 0..1 urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
ServiceRequest.encounter MUST 0..1
ServiceRequest.encounter.reference This MUST be populated with a Reference to the Encounter MUST 0..1 urn:uuid:8c63d621-4d86-4f57-8699-e8e22d49935d
ServiceRequest.occurrencePeriod Validation Breach time MUST 0..1
ServiceRequest.occurrencePeriod.start The start of the period must be ‘now’. MUST 0..1 2023-03-08T12:01:08.4677672+00:00
ServiceRequest.occurrencePeriod.end The time by which the validation must be complete (validation breach time) MUST 0..1 2023-03-08T12:01:08.4677672+00:00
ServiceRequest.reasonCode This will ONLY be populated in a cancellation message with the reason for cancellation SHOULD 0..*
ServiceRequest.reasonCode.text This SHOULD be populated. This will ONLY be populated in a cancellation message with the reason for cancellation and SHOULD only be used in conjunction with a corresponding status - revoked or entered-in-error SHOULD 0..1 Revoked as patient has been dealt with.

> Patient

This resource is used to communicate details about the patient who is the subject of the referral.
It also includes contact information for third parties when required.

activeΣ ?!0..1boolean
nameΣ0..*HumanName
genderΣ0..1codeBinding
maritalStatus0..1CodeableConceptBinding
photoI0..*Attachment

Patient This resource is used to communicate details about the patient who is the subject of the referral.
It also includes contact information for third parties when required.

https://simplifier.net/hl7fhirukcorer4/ukcore-patient
1..1
Patient.id It also includes contact information for third parties when required. MUST 0..1 9589fb37-87a2-48d8-968f-b371429208a8
Patient.meta https://simplifier.net/hl7fhirukcorer4/ukcore-patient MUST 1..1
Patient.meta.profile This MUST be populated. Follow UK Core guidance for populating this element MUST 1..1 https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient
Patient.meta.LastUpdate All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Patient.identifier This is a human readable patient identifier. This MUST be populated with the NHS number when available. Additionally a Local Patient Identifier Should be populated where available. If no NHS number is available this Should be populated with the Local patient identifier. SHOULD 0..*
Patient.identifier.system https://simplifier.net/hl7fhirukcorer4/ukcore-nhsnumberverificationstatus-duplicate-2 SHOULD 1..1 https://fhir.nhs.uk/Id/nhs-number
Patient.identifier.value This SHOULD be populated with a human readable patient identifier. When used this MUST be populated with the NHS number when available.If no NHS number is available this SHOULD be populated with the Local patient identifier. SHOULD 1..1 3478526985
Patient.identifier.extension This extension is used to record the NHS number Verification status SHOULD 0..*
Patient.identifier.extension.url This SHOULD be populated. Where used this MUST be populated with Structure Definition 'https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus' - FIXED VALUE SHOULD 1..1 https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus
Patient.identifier.extension.valueCodeableConcept SHOULD 0..1
Patient.identifier.extension.valueCodeableConcept.coding SHOULD 0..1
Patient.identifier.extension.valueCodeableConcept.coding.system https://simplifier.net/hl7fhirukcorer4/extensionukcorenhsnumberverificationstatus SHOULD 0..1 https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus
Patient.identifier.extension.valueCodeableConcept.coding.code Follow UK Core guidance for populating this element SHOULD 0..1 number-present-and-verified
Patient.identifier.extension.valueCodeableConcept.coding.display Follow UK Core guidance for populating this element SHOULD 0..1 Number present and verified
Patient.name SHOULD 0..*
Patient.name.use Follow UK Core guidance for populating this element SHOULD 0..1 official
Patient.name.text Follow UK Core guidance for populating this element SHOULD 0..1 Mrs Julie Jones
Patient.name.family Follow UK Core guidance for populating this element SHOULD 0..1 Jones
Patient.name.given Follow UK Core guidance for populating this element SHOULD 0..1 Julie
Patient.name.prefix Follow UK Core guidance for populating this element SHOULD 0..1 Mrs
Patient.gender Follow UK Core guidance for populating this element SHOULD 0..1 female
Patient.birthDate Follow UK Core guidance for populating this element SHOULD 0..1 1959-05-04
Patient.address Follow UK Core guidance for populating this element SHOULD 0..*
Patient.address.use Follow UK Core guidance for populating this element SHOULD 0..1 home
Patient.address.type Follow UK Core guidance for populating this element SHOULD 0..1 both
Patient.address.text Follow UK Core guidance for populating this element SHOULD 0..1 22 Brightside Crescent, Overtown, West Yorkshire, LS10 4YU
Patient.address.line Follow UK Core guidance for populating this element SHOULD 0..* 22 Brightside Crescent
Patient.address.city Follow UK Core guidance for populating this element SHOULD 0..1 Overtown
Patient.address.district Follow UK Core guidance for populating this element SHOULD 0..1 West Yorkshire
Patient.address.postalCode Follow UK Core guidance for populating this element SHOULD 0..1 LS10 4YU
Patient.contact This should be used to record telecom information for the patient and/or the patient's representative for the encounter MUST 0..*
Patient.contact.extension MUST 0..*
Patient.contact.extension.url This MUST be populated with Structure Definition 'https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-ContactRank' - FIXED VALUE MUST 0..1 https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-ContactPreference
Patient.contact.extension.urlvaluePositiveInt This MUST be populated with the rank of the whole contact and MUST be populated with the value '1' for the primary person to contact for referral. There MUST be at least one contact for the referral. MUST 0..1 1
Patient.contact.relationship MUST 0..*
Patient.contact.relationship.coding MUST 0..*
Patient.contact.relationship.coding.system This MUST be populated with the CodeSystem from the ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PersonRelationshipType'.
Where the contact details relate to the patient this relationship MUST be populated with the value 'self'.
Where the contact details relate to a patient's representative this SHOULD be populated with their relationship to the patient.
If the relationship is not known this SHOULD be populated with the value 'Unknown'
MUST 0..1 https://simplifier.net/hl7fhirukcorer4/ukcore-personrelationshiptype-110
Patient.contact.relationship.coding.code This MUST be populated with Code of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PersonRelationshipType'. MUST 0..1 EP
Patient.contact.relationship.coding.display This MUST be populated with Display of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PersonRelationshipType'. MUST 0..1 EP
Patient.contact.name SHOULD 0..1
Patient.contact.name.family This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 Grayson
Patient.contact.name.given This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 Jack
Patient.contact.telecom MUST 0..*
Patient.contact.telecom.system This MUST be populated for the rank 1 contact. There MUST be at least one contact phone number for the referral MUST 0..1 phone
Patient.contact.telecom.value This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 0789 1234567
Patient.contact.gender This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 male
Patient.Communication SHOULD 0..*
Patient.Communication.Language MUST 1..1
Patient.Communication.Language.coding MUST 1..1
Patient.Communication.Language.coding.code This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 en
Patient.Communication.Language.coding.system This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 https://fhir.hl7.org.uk/CodeSystem/UKCore-HumanLanguage
Patient.Communication.Language.coding.display This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 English
Patient.Communication.Language.preferred This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 TRUE
Patient.extension This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..*
Patient.extension.url This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-EthnicCategory
Patient.extension.url.valueCodeableConcept This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1
Patient.extension.url.valueCodeableConcept.coding This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1
Patient.extension.url.valueCodeableConcept.coding.system This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 https://fhir.hl7.org.uk/CodeSystem/UKCore-EthnicCategory
Patient.extension.url.valueCodeableConcept.coding.code This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 A
Patient.extension.url.valueCodeableConcept.coding.display This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 British, Mixed British
Patient.generalPractitioner This SHOULD be populated with a reference to the GP Surgery ONLY rather than a specific practitioner SHOULD 0..*
Patient.generalPractitioner.reference This SHOULD be populated. Where populated this MUST reference to an Organisation resource SHOULD 0..1 urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4411

> Organization

This resource is used to communicate details about the sender and receiver organisations.

activeΣ ?!0..1boolean
typeΣ0..*CodeableConcept
nameΣ I0..1string
alias0..*string
telecomI0..*ContactPoint
addressI0..*Address

Organization This resource is used to communicate details about the sender organisations.

https://simplifier.net/hl7fhirukcorer4/ukcore-organization
2..*
Organization.id This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response. MUST 0..1 5d897313-c62d-4e7e-92b7-b2199804fed3
Organization.meta https://www.hl7.org/fhir/resource.html#Meta MUST 1..1
Organization.meta.profile This MUST be populated. Follow UK Core guidance for populating this element MUST 1..1 https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization
Organization.meta.lastUpdated This MUST be populated. All resources MUST include 'lastUpdated' value, under meta section which MUST be the same timestamp for each resource when created from new, but MUST be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Organization.identifier This MUST be populated with an organisation identifier e.g. ODS code MUST 0..*
Organization.identifier.system This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 https://fhir.nhs.uk/id/ods-organization-code
Organization.identifier.value This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 ABD01
Organization.name This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 Organisation name


Entity Relationship Diagram - Cancellation Referral Request



The below diagram details the Cancellation Referral Request



Cancellation Booking Request Payload

MessageHeader Resource

Standard Patterns for BaRS Operations explains in detail how the MessageHeader resource must be used.

When cancelling a booking, in conjunction with the guidance provided under the Standard Patterns, the three important elements which drive workflow must be used as follows:

  • eventCoding - this must be the same code as used in the request.
  • reasonCode - a cancellation follows an initial request, therefore, this must always be 'update' for cancellation.
  • definition - cancellation has a unique MessageDefinition the request must adhere to.
  • focus - must point to the Appointment resource.

Appointment Resource

The 'focus' resource in a cancellation booking request is the Appointment resource. When the payload is created by the Sender and processed by the Receiver, this is the starting point from which it (the bundle) is understood and provides either the detail or references to all key FHIR resources, for example, the Patient. The guidance for this resource below provides more granular, element level, detail.

When a Receiver processes the cancellation booking request, the two key elements used are the Appointment.id and Appointment.status. The .id must already exist as a 'booked' (status) booking on the Receiver system (this must have been confirmed by a prior read (GET) by the Sender) and the .status, in the request, must be 'cancelled'. No other status is valid in the cancellation booking request.

Patient Resource

Key patient demographics should be cross-referenced between the current 'booked' (status) booking and incoming cancellation booking request to ensure validity.

Payload for Booking Cancellation Request

This payload is used to transmit all the necessary information that is required to transmit the cancellation of a Booking.



> Bundle

The Bundle resource is the container for the event message.

typeΣ1..1codeBindingFixed Value
timestampΣ1..1instant
totalΣ I0..1unsignedInt

Bundle The Bundle resource is the container for the event message  https://simplifier.net/nhsbookingandreferrals/barsbundlemessage 1..1
Bundle.id This id is generated by the originating sender of the message, retained in subsequent messages.. MUST 1..1 79120f41-a431-4f08-bcc5-1e67006fcae0
Bundle.meta https://www.hl7.org/fhir/resource.html#Meta MUST 0..1
Bundle.meta.profile This MUST be populated with the structure definition for BaRSBundleMessage : 'https://fhir.nhs.uk/StructureDefinition/BARSBundleMessage' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/StructureDefinition/BARSBundleMessage
Bundle.meta.lastUpdated All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Bundle.type This must be populated with 'message' - FIXED VALUE MUST 1..1 message
Bundle.timestamp the date that the content of the message was assembled. This date is not changed by middleware engines unless they add additional data that changes the meaning of the time of the message MUST 0..1 2023-03-08T12:01:08.4677672+00:00
Bundle.entry(s) Follow BaRS profile guidance for populating this element MUST 1..*
Bundle.entry.fullUrl unique identifier for the resource entry. Transient id relative to the bundle MUST 0..1 urn:uuid:1cbdfb97-5859-48a4-8301-d54eab818d68
Bundle.entry.resourceType Resources detailed in the message definition. MUST 0..1 MessageHeader,Patient, Encounter

> Message Header

A resource that describes the BaRS message being exchanged between two systems.

definitionΣ0..1canonical(MessageDefinition)

MessageHeader A resource that describes the BaRS message being exchanged between two systems https://simplifier.net/nhsbookingandreferrals/barsmessageheaderservicerequestrequest 1..1
MessageHeader.meta https://www.hl7.org/fhir/resource.html#Meta MUST 0..1
MessageHeader.meta.profile This MUST be populated with the structure definition for BARSMessageHeader-booking-request MUST 0..1 https://fhir.nhs.uk/StructureDefinition/BARSMessageHeader-booking-request
MessageHeader.meta.lastUpdated All resources MUST include 'lastUpdated' value, under the meta section which MUST be the same timestamp for each resource when created from new, but MUST be a later timestamp on updates to resources, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 0..1 2023-03-08T12:01:08.4677672+00:00
MessageHeader.eventcoding MUST 1..1
MessageHeader.eventcoding.system This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/message-events-bars' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/CodeSystem/message-events-bars
MessageHeader.eventcoding.code The status MUST be populated with 'booking-request'. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars' - FIXED VALUE MUST 0..1 booking-request
MessageHeader.destination MUST 0..1
MessageHeader.destination.receiver MUST 0..1
MessageHeader.destination.receiver.reference This MUST be populated with the full URL to the Receiving Organisation resource. MUST 0..1 urn:uuid:10397afd-479c-42ea-9d5d-e4024481e0f8
MessageHeader.destination.endpoint This MUST be populated with the system and Service ID separated by a pipe. for example https://fhir.nhs.uk/id/dos-service-id\|11111111, this is to ensure the receiver knows the intended destination. MUST 1..1 https://fhir.nhs.uk/id/dos-service-id\|1122334455
MessageHeader.sender MUST 0..1
MessageHeader.sender.reference This MUST be populated. Follow BaRS profile guidance for populating this element MUST 0..1 urn:uuid:07939a0c-2854-46ff-9282-ad906bc93679
MessageHeader.source MUST 1..1
MessageHeader.source.name This MUST be populated with the sending system supplier name MUST 0..1 NHS Trust
MessageHeader.source.software This SHOULD be populated with the sending software application name SHOULD 0..1 Supplier Software
MessageHeader.source.version This SHOULD be populated with the sending software version SHOULD 0..1 V1.0.0
MessageHeader.source.contact SHOULD 0..1
MessageHeader.source.contact.system This SHOULD be populated with the Contact Type - phone | fax | email | pager | url | sms | other SHOULD 0..1 phone
MessageHeader.source.contact.value This SHOULD be populated with the Contact Type value SHOULD 0..1 +44 (0123) 123 4567
MessageHeader.source.endpoint This MUST be populated with the system and Service ID separated by a pipe. for example https://fhir.nhs.uk/id/dos-service-id\|11111111, this is to ensure the receiver knows where any response messages SHOULD be addressed. MUST 1..1 https://fhir.nhs.uk/id/dos-service-id\|5566778899
MessageHeader.reason MUST 0..1
MessageHeader.reason.coding MUST 0..1
MessageHeader.reason.coding.system This MUST be populated with 'https://fhir.nhs.uk/CodeSystem/message-reason-bars' - FIXED VALUE MUST 0..1 https://fhir.nhs.uk/CodeSystem/message-reason-bars
MessageHeader.reason.coding.code This MUST be populated with "delete" for an cancellation. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars' MUST 0..1 delete
MessageHeader.reason.coding.display This MUST be populated with 'Delete' when cancelling a Booking. SHOULD 0..1 Delete
MessageHeader.focus MUST 0..*
MessageHeader.focus.reference This MUST be populated with a reference to the ServiceRequest MUST 0..1 urn:uuid:236bb75d-90ef-461f-b71e-fde7f899802c
MessageHeader.definition This MUST be populated with the MessageDefinition the bundle is based on. This will be used for validation. Value - hhttps://fhir.nhs.uk/MessageDefinition/bars-message-booking-request-cancelled MUST 0..1 https://fhir.nhs.uk/MessageDefinition/bars-message-booking-request-cancelled

> Appointment

This resource will be used to communicate information about an Appointment and is the focus of the Booking interation.

statusΣ ?!1..1codeBinding
cancelationReasonΣ0..1CodeableConcept
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
appointmentTypeΣ0..1CodeableConceptBinding
reasonCodeΣ0..*CodeableConceptBinding
priority0..1unsignedInt
description0..1string
startΣ0..1instant
endΣ0..1instant
minutesDuration0..1positiveInt
created0..1dateTime
comment0..1string
patientInstruction0..1string
requestedPeriodI0..*Period

Appointment https://simplifier.net/hl7fhirukcorer4/ukcoreappointment

This resource will be used to communicate information about an appointment.
1..1
Appointment.id This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response. MUST 0..1 3713c8fc-dbcf-4f90-bacf-89d99e434e9b
Appointment.meta https://www.hl7.org/fhir/resource.html#Meta MUST 1..1
Appointment.meta.profile This MUST be populated. Follow UK Core guidance for populating this element MUST 1..1 https://fhir.hl7.org.uk/StructureDefinition/UKCore-Appointment
Appointment.meta.lastupdated This MUST be populated. All resources MUST include 'lastUpdated' value, under meta section which MUST be the same timestamp for each resource when created from new, but MUST be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Appointment.status This MUST be populated with 'booked' MUST 1..1 cencelled
Appointment.description This SHOULD be populated. It is the human readable description of the booking SHOULD 0..1 Reason for calling
Appointment.start This MUST be populated with the Start time of the booking MUST 0..1 2021-10-12T12:30:00+00:00
Appointment.end This MUST be populated with the End time of the booking MUST 0..1 2021-10-12T12:30:00+00:00
Appointment.slot MUST 0..*
Appointment.slot.reference This MUST be populated with the local logical bundle reference to the Slot resource MUST 0..1 urn:uuid:c3f6145e-1a26-4345-b3f2-dccbcba62049
Appointment.created This MUST only be populated with the date/time the booking was generated by the Receiver in the synchronous HTTP response. MUST 0..1 2021-10-11T15:01:30+00:00"
Appointment.basedOn This MAY be populated. When the Service Request is made before the booking in the workflow this MUST be populated. MAY 0..*
Appointment.basedOn.reference This MAY be populated. This is MUST be the relative reference to the Service Request when referral is made before booking in the workflow MAY 0..1 ServiceRequest/236bb75d-90ef-461f-b71e-fde7f899802c
Appointment.participant MUST 1..1
Appointment.participant.actor This MUST be populated with reference to the patient MUST 0..1
Appointment.participant.actor.reference This MUST be populated with the local logical bundle reference to the Patient resource MUST 0..1 urn:uuid:3a62607b-df65-4932-940c-14262787f62d
Appointment.participant.actor.status This MUST be populated with 'accepted' - FIXED VALUE MUST 1..1 accepted

> Patient

This resource is used to communicate details about the patient who is the subject of the referral.
It also includes contact information for third parties when required.

activeΣ ?!0..1boolean
nameΣ0..*HumanName
genderΣ0..1codeBinding
maritalStatus0..1CodeableConceptBinding
photoI0..*Attachment

Patient This resource is used to communicate details about the patient who is the subject of the referral.
It also includes contact information for third parties when required.

https://simplifier.net/hl7fhirukcorer4/ukcore-patient
1..1
Patient.id It also includes contact information for third parties when required. MUST 0..1 9589fb37-87a2-48d8-968f-b371429208a8
Patient.meta https://simplifier.net/hl7fhirukcorer4/ukcore-patient MUST 1..1
Patient.meta.profile This MUST be populated. Follow UK Core guidance for populating this element MUST 1..1 https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient
Patient.meta.LastUpdate All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Patient.identifier This is a human readable patient identifier. This MUST be populated with the NHS number when available. Additionally a Local Patient Identifier Should be populated where available. If no NHS number is available this Should be populated with the Local patient identifier. SHOULD 0..*
Patient.identifier.system https://simplifier.net/hl7fhirukcorer4/ukcore-nhsnumberverificationstatus-duplicate-2 SHOULD 1..1 https://fhir.nhs.uk/Id/nhs-number
Patient.identifier.value This SHOULD be populated with a human readable patient identifier. When used this MUST be populated with the NHS number when available.If no NHS number is available this SHOULD be populated with the Local patient identifier. SHOULD 1..1 3478526985
Patient.identifier.extension This extension is used to record the NHS number Verification status SHOULD 0..*
Patient.identifier.extension.url This SHOULD be populated. Where used this MUST be populated with Structure Definition 'https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus' - FIXED VALUE SHOULD 1..1 https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus
Patient.identifier.extension.valueCodeableConcept SHOULD 0..1
Patient.identifier.extension.valueCodeableConcept.coding SHOULD 0..1
Patient.identifier.extension.valueCodeableConcept.coding.system https://simplifier.net/hl7fhirukcorer4/extensionukcorenhsnumberverificationstatus SHOULD 0..1 https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus
Patient.identifier.extension.valueCodeableConcept.coding.code Follow UK Core guidance for populating this element SHOULD 0..1 number-present-and-verified
Patient.identifier.extension.valueCodeableConcept.coding.display Follow UK Core guidance for populating this element SHOULD 0..1 Number present and verified
Patient.name SHOULD 0..*
Patient.name.use Follow UK Core guidance for populating this element SHOULD 0..1 official
Patient.name.text Follow UK Core guidance for populating this element SHOULD 0..1 Mrs Julie Jones
Patient.name.family Follow UK Core guidance for populating this element SHOULD 0..1 Jones
Patient.name.given Follow UK Core guidance for populating this element SHOULD 0..1 Julie
Patient.name.prefix Follow UK Core guidance for populating this element SHOULD 0..1 Mrs
Patient.gender Follow UK Core guidance for populating this element SHOULD 0..1 female
Patient.birthDate Follow UK Core guidance for populating this element SHOULD 0..1 1959-05-04
Patient.address Follow UK Core guidance for populating this element SHOULD 0..*
Patient.address.use Follow UK Core guidance for populating this element SHOULD 0..1 home
Patient.address.type Follow UK Core guidance for populating this element SHOULD 0..1 both
Patient.address.text Follow UK Core guidance for populating this element SHOULD 0..1 22 Brightside Crescent, Overtown, West Yorkshire, LS10 4YU
Patient.address.line Follow UK Core guidance for populating this element SHOULD 0..* 22 Brightside Crescent
Patient.address.city Follow UK Core guidance for populating this element SHOULD 0..1 Overtown
Patient.address.district Follow UK Core guidance for populating this element SHOULD 0..1 West Yorkshire
Patient.address.postalCode Follow UK Core guidance for populating this element SHOULD 0..1 LS10 4YU
Patient.contact This should be used to record telecom information for the patient and/or the patient's representative for the encounter MUST 0..*
Patient.contact.extension MUST 0..*
Patient.contact.extension.url This MUST be populated with Structure Definition 'https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-ContactRank' - FIXED VALUE MUST 0..1 https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-ContactPreference
Patient.contact.extension.urlvaluePositiveInt This MUST be populated with the rank of the whole contact and MUST be populated with the value '1' for the primary person to contact for referral. There MUST be at least one contact for the referral. MUST 0..1 1
Patient.contact.relationship MUST 0..*
Patient.contact.relationship.coding MUST 0..*
Patient.contact.relationship.coding.system This MUST be populated with the CodeSystem from the ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PersonRelationshipType'.
Where the contact details relate to the patient this relationship MUST be populated with the value 'self'.
Where the contact details relate to a patient's representative this SHOULD be populated with their relationship to the patient.
If the relationship is not known this SHOULD be populated with the value 'Unknown'
MUST 0..1 https://simplifier.net/hl7fhirukcorer4/ukcore-personrelationshiptype-110
Patient.contact.relationship.coding.code This MUST be populated with Code of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PersonRelationshipType'. MUST 0..1 EP
Patient.contact.relationship.coding.display This MUST be populated with Display of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PersonRelationshipType'. MUST 0..1 EP
Patient.contact.name SHOULD 0..1
Patient.contact.name.family This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 Grayson
Patient.contact.name.given This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 Jack
Patient.contact.telecom MUST 0..*
Patient.contact.telecom.system This MUST be populated for the rank 1 contact. There MUST be at least one contact phone number for the referral MUST 0..1 phone
Patient.contact.telecom.value This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 0789 1234567
Patient.contact.gender This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 male
Patient.Communication SHOULD 0..*
Patient.Communication.Language MUST 1..1
Patient.Communication.Language.coding MUST 1..1
Patient.Communication.Language.coding.code This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 en
Patient.Communication.Language.coding.system This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 https://fhir.hl7.org.uk/CodeSystem/UKCore-HumanLanguage
Patient.Communication.Language.coding.display This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 English
Patient.Communication.Language.preferred This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 TRUE
Patient.extension This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..*
Patient.extension.url This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-EthnicCategory
Patient.extension.url.valueCodeableConcept This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1
Patient.extension.url.valueCodeableConcept.coding This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1
Patient.extension.url.valueCodeableConcept.coding.system This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 https://fhir.hl7.org.uk/CodeSystem/UKCore-EthnicCategory
Patient.extension.url.valueCodeableConcept.coding.code This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 A
Patient.extension.url.valueCodeableConcept.coding.display This SHOULD be populated. Follow UK Core guidance for populating this element SHOULD 0..1 British, Mixed British
Patient.generalPractitioner This SHOULD be populated with a reference to the GP Surgery ONLY rather than a specific practitioner SHOULD 0..*
Patient.generalPractitioner.reference This SHOULD be populated. Where populated this MUST reference to an Organisation resource SHOULD 0..1 urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4411

> Organization

This resource is used to communicate details about the sender and receiver organisations.

activeΣ ?!0..1boolean
typeΣ0..*CodeableConcept
nameΣ I0..1string
alias0..*string
telecomI0..*ContactPoint
addressI0..*Address

Organization This resource is used to communicate details about the sender organisations.

https://simplifier.net/hl7fhirukcorer4/ukcore-organization
2..*
Organization.id This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response. MUST 0..1 5d897313-c62d-4e7e-92b7-b2199804fed3
Organization.meta https://www.hl7.org/fhir/resource.html#Meta MUST 1..1
Organization.meta.profile This MUST be populated. Follow UK Core guidance for populating this element MUST 1..1 https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization
Organization.meta.lastUpdated This MUST be populated. All resources MUST include 'lastUpdated' value, under meta section which MUST be the same timestamp for each resource when created from new, but MUST be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. MUST 1..1 2023-03-08T12:01:08.4677672+00:00
Organization.identifier This MUST be populated with an organisation identifier e.g. ODS code MUST 0..*
Organization.identifier.system This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 https://fhir.nhs.uk/id/ods-organization-code
Organization.identifier.value This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 ABD01
Organization.name This MUST be populated. Follow UK Core guidance for populating this element MUST 0..1 Organisation name


Entity Relationship Diagram - Cancellation Booking Request



The below diagram details the Cancellation Booking Request




back to top