Bookings and Referrals into UEC (Application 1)
| Application Version | Minimum Core Version | Minimum Guide Version | Minimum API Spec Version |
|---|---|---|---|
| Application 1 v2.0.0 | v1.0.x | v1.10.0 | v1.0.0 |
Use Cases Supported
This Application supports the use of the following use cases:
| Use Case | Name | Code |
|---|---|---|
| 111 (telephony) to ED (Emergency Department) | 111 to ED | A1T1 |
| 111 (telephony) to UTC (Urgent Treatment Centre) | 111 to UTC | A1T2 |
| IUC CAS (Integrated Urgent Care Clinical Assessment Service) to ED (Emergency Department) | IUC CAS to ED | A1T3 |
| IUC CAS (Integrated Urgent Care Clinical Assessment Service) to UTC (Urgent Treatment Centre) | IUC CAS to UTC | A1T4 |
| AST (999 Ambulance Service Trust) to ED (Emergency Department) | 999 to ED | A1T5 |
| AST (999 Ambulance Service Trust) to UTC (Urgent Treatment Centre) | 999 to UTC | A1T6 |
| 111 (telephony) to SDEC (Same Day Emergency Care) | 111 to SDEC | A1T7 |
| IUC CAS (Integrated Urgent Care Clinical Assessment Service) to SDEC (Same Day Emergency Care) | IUC CAS to SDEC | A1T8 |
| AST (999 Ambulance Service Trust) to SDEC (Same Day Emergency Care) | 999 to SDEC | A1T9 |
note: for use cases where the sending system is 111 Online, please see Bookings and Referrals into UEC Application 2
Introduction
Overview
This page provides guidance for implementing the Booking and Referral Standard (BaRS) specifically for the use cases listed above. It should be used alongside the BaRS Core implementation guide and Payload Definitions when developing to the standard.
Data model endorsements
The referral information data model is based on user research with NHS 111 service providers, 999 Ambulance Service Trusts (AST) and clinical and administrative Emergency Department staff. We carried out this research in parallel with the Professional Records Standards Body (PRSB) who examined the wider brief of 'referrals from NHS 111 to any other care setting'.
We worked alongside PRSB to ensure data transferred from 111 to ED is clinically relevant and safe. PRSB have defined and endorsed an information model which works for both the senders (111) and receivers (ED) when referrals are made between the respective services. This endorsement provides the necessary confidence that solutions built to the standard will be both fit for purpose and safe.
For more information see Bookings and Referrals into UEC Application 1
Scope and Requirements
Scope Overview
This BaRS Application (Application 1) covers only use cases:
- 111 (telephony) to ED
- 111 (telephony) to UTC
- IUC CAS to ED
- IUC CAS to UTC
- AST to ED (Pathways only)
- AST to UTC (Pathways only)
- 111 to SDEC
- CAS to SDEC
- AST to SDEC (Pathways only)
The payloads and workflow have been designed to support these services. Other BaRS Applications offer scope for alternative use cases.
Functional Scope
Service Discovery
- Establishing a service to direct requests to is a mandatory step in the workflow
- There is no restriction on the service discovery tools used. Any are capable of being supported whether national or proprietary
- The service must be configured within the BaRS infrastructure (Endpoint Catalogue) before requests can be made
Slot Management
- Booking slots are the responsibility and ownership of Receivers to maintain and offer to Senders
- All slot requests must occur in real-time without caching by either Senders or Receivers
- The returned slots should contain sufficient information for Senders to know what they are booking i.e. have a clear 'type', indicate the role and/or gender of the individual performing on behalf of the service, within any given slot
Booking
- Allowing bookings for a service is a method of managing capacity
- A booking may indicate the exact time an individual can expect to be seen by or is expected to arrive at the service, as is traditionally understood when an 'appointment' is made. Alternatively, the booking timeframe could indicate a range through which the individual may be seen by the service
- The slot the booking is made against may also indicate the type of booking e.g. face-to-face or over the phone and the role of the person who will engage with the individual on behalf of the service
- Bookings are an administrative aspect of the workflow and should not contain clinically pertinent information
Referral
- A referral is a request for care on behalf of an individual from one service to another
- The referral can be sent without having to establish the capacity the service offers
- The referral will contain primarily clinical information, indicating the need of the individual and should state the anticipated action required by the Receiving service
- A referral can be made independent of booking but, where a booking is made as part of the same workflow, they must be linked
- Supporting information, other than the assessment, is expected to be included in a referral, if collected, including:
- new or existing safeguarding concerns
- locally held Special Patient Notes
- external information sources used during initial assessment prior to referral
- list of any services rejected prior to the Receiving service being selected, including reason for rejection
API-M
- All requests and response associated with BaRS must occur through the BaRS API Proxy
Constraints
- Supporting use of NHS Pathways and NHS Pathways Clinical Content Support (PaCCS) Clinical Decision Support Systems only
- All Service IDs in First of Type (FoT) will be those of Urgent and Emergency Care (UEC) Directory of Services (DoS)
- DoS 'attributes' for controlling Booking into services are to remain honoured (see "how does it work" section below for more information)
- No guidance provided on display of referral information beyond the Principles for rendering BaRS Payload.
- No additional guidance provided on Slot display for Booking
- Consent within BaRS will be for Direct-Care only
- Certificates for Receiving messages to use nhs.uk domains only.
- Receiving endpoints are to be internet facing.
- Limited Search Slot parameters for Booking - Schedule.actor:healthcareService, Start (range), (slot) status
- Clincial Constraints exist - See Hazard Log
- No element level 'updates' to requests. A new request must be generated to change information in a booking or referral request
Requirements
Service Discovery
- The service must support a unique identifier which the Sender extracts to engage in booking and referral workflows
Slot display
- The schedule and related slot(s) must contain the actual geographic location (e.g address) of the booking, rather than generic details of the location of the overall service provider.
- The slot must contain details of the start/end times of the available slots
- The available slot(s) must be capable of being retrieved from any booking Receiver, regardless of the relationship that the sending user’s organisation has with the receiving service
- Where there are no available slots, the booking Receiver must send an appropriate response to indicate this not merely reply with an empty response
- Where there are no available slots, the booking Sender must present an appropriate message to the end user
- The booking Receiver must return available slots without requiring to know the potential patient details
- Where the booking Receiver has a number of schedules available to fulfil a request (say, when 2 or more clinicians are delivering surgeries at the same site) they must return all of those slots as part of the initial response
- If provided, in addition to Healthcare Service, Schedule and Slot, the booking Sender must display Delivery Channel and Practitioner Role, Name and Gender
- Booking Receivers must not default the Delivery Channel value
- A booking Sender must not assume a booking Receiver will return requested _includes e.g. Location
- Booking Sender must handle a Slot response without non mandatory FHIR resources
- Booking Sender must handle a Slot response with FHIR resources not requested
Booking
- The booking Receiver must accept the booking request regardless of whether the patient is known to the service provider
- The booking Receiver must accept potential patients who do not have a national validated identifier e.g. NHS Number.
- Where a national identifier is included, it must have a verification status of 'Number present and verified' or 'Number present but not traced', otherwise, the referral Sender must not include it in the request
- Where the booking was not successful, the Receiver must send an appropriate response. See failure scenarios for more detail.
- Where the booking was not successful, the Sender must present an appropriate message to the end user. See failure scenarios for more detail.
- If included in the synchronous HTTP response, the booking Sender must make available the human readable identifier for the booking to the end user
- The booking Sender must send accompanying clinical information in a BaRS referral request
- The booking Sender must reference the booking in the BaRS referral request (where the booking is made first in the workflow)
- The booking Receiver must link the explicitly related booking and referral requests
- Update to amend a booking request is not supported. If a booking Sender wishes to change information in a request they must follow the re-book workflow
Cancel booking
- The booking Sender must be capable of cancelling any booking made by them, within the current consultation or after the consultation event
- The booking Sender must retrieve the booking to be cancelled from the booking Receiver prior to cancellation to ensure they are working with the most up to date version and it has not already been completed
- The booking Sender must provide visible confirmation to the end user of the status returned by the booking Receiver, indicating whether the original booking was successfully cancelled or not
- If the cancellation fails the booking Receiver must respond with the most appropriately aligned error
- The booking Receiver must store all previous versions of the booking, including cancellations
- The booking Receiver must not be required to inform the patient of the cancellation of the booking. Business/clinical responsibility for informing the patient must remain with the booking Sender
- Any referral, sent as part of a booking, should be decoupled from the booking when cancelled and not be assumed to be a referral in its own right i.e. to ensure 'booking only' services are appropriately updated
Rebook
- The booking Sender must be capable of rebooking within the current consultation or after the consultation event
- If a callback occurs after the consultation has been completed, prior to attempting a rebook the patient should be reassessed
- The booking Sender must cancel the original booking prior to making the new booking, whether within the current consultation or after the consultation event
- The booking Sender must provide visible confirmation to the end user of the status returned by the Receiver, indicating whether the original booking was successfully cancelled and the new booking made
- The booking Receiver must not be required to inform the patient of the cancellation, incurred as part of the rebooking process. Business/clinical responsibility for informing the patient must remain with the booking Sender
- The new booking must not link to any originally linked referral, rather a new referral must be made and the original 'revoked'
Booking outside assessment outcome timeframe
- The booking Sender must allow clinical users to book outside the assessment outcome timeframe
- The booking Sender must present a notification to non-clinical users and prompt to seek clinical approval to book outside the assessment outcome timeframe
- The booking Sender must store sufficient audit information to show where a patient has been booked outside their assessment outcome timeframe
Referral requires booking (Require-Booking services)
- The booking Sender must stop the end users from making a referral if no booking has been made when the “RequireBooking” service attribute is present against the DoS service
- The booking Sender must present an appropriate warning message to the end user, indicating the specific service requirements
- The booking Sender must allow the referral to be sent when a booking is made
- The end user must be allowed to select an alternative service, if they are unable to proceed with "RequireBooking" service
Referral
- The referral Receiver must accept the referral request regardless of whether the patient is known to the service provider
- The referral Receiver must accept potential patients who do not have a national validated identifier e.g. NHS Number.
- Where a national identifier is included, it must have a verification status of 'Number present and verified' or 'Number present but not traced', otherwise, the referral Sender must not include it in the request
- Any new or existing safeguarding concern, recorded as part of the assessment, must be included in the referral Sender's request
- The referral Receiver must clearly identify any included safeguarding concern to the end user
- The referral Receiver must accurately represent information made by the Sender to the end user
- The referral Sender must make available the human readable identifier for the referral, included in the HTTP synchronous response, to the end user
- Where the referral was not successful, the Receiver must send an appropriate response. See failure scenarios for more detail.
- Where the referral was not successful, the Sender must present an appropriate message to the end user. See failure scenarios for more detail.
- The referral Sender must include reference to any accompanying BaRS booking related to the referral
- The referral Sender's request must be referenced in the BaRS booking request (where the referral is made first in the workflow)
- The referral Receiver must link the explicitly related booking and referral requests
- Update to amend a referral request is not supported. If a referral Sender wishes to change information in a request they must follow the re-refer workflow
Cancel referral
- The referral Sender must be capable of cancelling any referral made by them, within the current consultation or after the consultation event
- The referral Sender must retrieve the referral to be cancelled from the referral Receiver prior to cancellation to ensure they are working with the most up-to date version and it has not already been completed
- The referral Sender must provide visible confirmation to the end user of the status returned by the referral Receiver, i.e. whether the original referral was successfully cancelled or not
- If the update fails the referral Receiver must respond with the most appropriately aligned error
- The referral Receiver must store all previous versions of the referral
- The referral Receiver must not be required to inform the patient of the cancellation of the referral. Business/clinical responsibility for informing the patient must remain with the referral Sender
- Any booking, sent as part of a referral, should be decoupled from the referral when cancelled. It may be linked in any subsequent re-refer workflow
Re-refer
- The referral Sender must be capable of re-referring within the current consultation or after the consultation event
- If a callback occurs, after the consultation has been completed, prior to attempting a re-refer the patient should be reassessed
- The referral Sender should revoke the original referral prior to making a new re-referral, whether within the current consultation or after the consultation event
- The referral Sender must provide visible confirmation to the end user of the status returned by the Receiver, i.e. whether the original referral was successfully revoked and the new referral made
- The referral Receiver must not be required to inform the patient of the cancellation, incurred as part of the re-refer process. Business/clinical responsibility for informing the patient must remain with the referral Sender
Contacts
- A minimum of one contact (patient or third party) with a contact method (phone, email, etc.) of phone must be provided in booking and referral requests
- All contacts must have a rank associated with them
- There must be only one contact with a rank of 1
- All contacts must have at least one contact method (phone, email, etc.)
- All contact methods must have a rank
- There must be only one contact method with a rank of 1
- The contact ranked 1 and the contact method ranked 1 must be the primary callback for the request
Audit
- Sufficient information around any activity through the API and subsequent BaRS workflow must be persisted to aid support incidents and audit requirements
Error Handling
- Suppliers must adhere to the error handling guidance
Non Functional
- Suppliers must adhere to the non functional requirements
How does it work?
This section describes how the primary operations used in this Application works. This diagram illustrates the workflow and interactions of a referral request and booking process:
To support the workflows for this Application of the standard the operations that need to be supported are:
Make a Referral
Making a referral for this Application follows the standard pattern for BaRS composite operations.
The Message Definition that defines this payload for this Application is: BARS Message Definition ServiceRequest - Request Referral
In addition to that the specific workflow parameters that are required are as follows:
| Interaction | Method | Payload Focus | Status Required (MessageHeader, ServiceRequest, Encounter) |
|---|---|---|---|
| Referral Request (New) | POST /$process-message{servicerequest-request} | ServiceRequest (active) | MessageHeader (EventCoding) = servicerequest-request |
| MessageHeader (ReasonCode) = new | |||
| ServiceRequest (Status) = active | |||
| ServiceRequest (Category) = referral | |||
| ServiceRequest (Category) = a1t1 | |||
| Encounter (Status) = triaged/finished | |||
| All resources to include 'lastUpdated' value, under meta section |
Additionally the HTTP request header would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_000001>
X-Correlation-Id = <GUID_000002>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header would be:
X-Request-Id = <GUID_000001>
X-Correlation-Id = <GUID_000002>
Cancel a Referral
To cancel a referral this Application follows the standard pattern for BaRS cancellation.
The Message Definition that defines the payload for this Application is: BARS Message Definition ServiceRequest - Request - Cancelled
If the update-to-cancel is taking place as part of a re-referral routine, once the cancellation is complete, the new referral request can be sent. This step in the workflow would follow the same process as 'Make a Referral' detailed above.
In addition, the specific workflow parameters that are required are as follows:
| Interaction | Method | Payload Focus | Status Required (MessageHeader, ServiceRequest, Encounter) |
|---|---|---|---|
| Get Referral | GET /ServiceRequest/{id} | n/a | n/a |
| Referral Request (Cancel) | POST /$process-message{servicerequest-request} | ServiceRequest (revoked) | MessageHeader (EventCoding) = servicerequest-request |
| MessageHeader (ReasonCode) = update | |||
| ServiceRequest (Status) = revoked | |||
| ServiceRequest (Category) = referral | |||
| ServiceRequest (Category) = a1t1 | |||
| Encounter (Status) = triaged/finished | |||
| All resources to include 'lastUpdated' value, under the meta section, which must be a later timestamp, on updates, if the content of a particular resource contains updated info. Otherwise, maintain the timestamp originally sent. |
Additionally the HTTP request header for the GET ServiceRequest would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_107>
X-Correlation-Id = <GUID_108>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header for the GET ServiceRequest would be:
X-Request-Id = <GUID_107>
X-Correlation-Id = <GUID_108>
the HTTP request header for the POST $process-message would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_000003>
X-Correlation-Id = <GUID_000002>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header for the POST $process-message would be:
X-Request-Id = <GUID_000003>
X-Correlation-Id = <GUID_000002>
Search for slots
During a referral workflow where booking is required, there are two separate processes that need to be undertaken sequentially. The first is to search for slots and once a slot has been selected, a booking can be made.
The first part of this process involves the sender making a request to the receiver for slots that match the search criteria. This is a "searching" request that requires the response body to include a "searchset" bundle resource.
The search parameters are defined on the BaRS API specification documentation.
| Interaction | Method | Payload Focus | Status Required (MessageHeader, ServiceRequest, Encounter) |
|---|---|---|---|
| Get Slots | GET /GetSlots | n/a | n/a |
Additionally the HTTP request header for the GET Slots would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_00001>
X-Correlation-Id = <GUID_00002>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header for the GET Slots would be:
X-Request-Id = <GUID_00001>
X-Correlation-Id = <GUID_00002>
Make a booking
Making a booking for this Application follows the standard pattern for BaRS operations.
The Message Definition that defines this payload for this Application is: BARS Message Definition - Booking Request
In addition to that the specific workflow parameters that are required are as follows:
| Interaction | Method | Payload Focus | Status Required (MessageHeader, ServiceRequest, Encounter) |
|---|---|---|---|
| Booking Request (New) | POST /$process-message{booking-request} | Appointment (booked) | MessageHeader (EventCoding) = booking-request |
| MessageHeader (ReasonCode) = new | |||
| Appointment (Status) = booked | |||
| All resources to include 'lastUpdated' value, under meta section |
Additionally the HTTP request header would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_00003>
X-Correlation-Id = <GUID_00002>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header would be:
X-Request-Id = <GUID_00003>
X-Correlation-Id = <GUID_00002>
Cancel a Booking
To cancel a booking this Application follows the standard pattern for BaRS cancellation.
The Message Definition that defines the payload for this Application is: BARS Message Definition - Cancel Booking Request
If the update-to-cancel is taking place as part of a re-book routine, once the cancellation is complete, the new booking request can be sent. This step in the workflow would follow the same process as 'Make a Booking' detailed above.
In addition the specific workflow parameters that are required are as follows:
| Interaction | Method | Payload Focus | Status Required (MessageHeader, ServiceRequest, Encounter) |
|---|---|---|---|
| Get Booking | GET /Appointment{id} | n/a | n/a |
| Booking Request (Cancel) | POST /$process-message{booking-request} | Appointment (cancelled) | MessageHeader (EventCoding) = booking-request |
| MessageHeader (ReasonCode) = update | |||
| Appointment (Status) = cancelled | |||
| All resources to include 'lastUpdated' value, under the meta section, which must be a later timestamp, on updates, if the content of a particular resource contains updated info. Otherwise, maintain the timestamp originally sent. |
Additionally the HTTP request header for the GET Appointment would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_00004>
X-Correlation-Id = <GUID_00002>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header for the GET Appointment would be:
X-Request-Id = <GUID_00004>
X-Correlation-Id = <GUID_00002>
the HTTP request header for the POST $process-message would be:
NHSD-Target-Identifier = {Receiver Service Identifier}
X-Request-Id = <GUID_00006>
X-Correlation-Id = <GUID_00002>
NHSD-End-User-Organisation = {FHIR Organisation (Base64 Encoded)}
NHSD-Requesting-Practitioner = {FHIR PractitionerRole (Base64 Encoded)}
NHSD-Requesting-Software = {FHIR Device (Base64 Encoded)}
The HTTP response header for the POST $process-message would be:
X-Request-Id = <GUID_00006>
X-Correlation-Id = <GUID_00002>
Bundle Processing - detailed
Below is a pseudo code example of how a bundle could be processed based on the above workflow variables:
> Logical - Based on a logical step through in a code format
Receive_Request
{
initialise_variable "messageType"
initialise_variable "MessageReason"
initialise_variable "RequestType"
//HTTP_Headers
{
if (HttpHeaders is null || HttpHeaders not Guid )
OperationOutcome.issue.code = "invalid"
throw exception with "REC_BAD_REQUEST"
then return with HTTP.ResponseCode 400
else if (HttpHeaders.RequestId == RequestId.AlreadyReceived)
OperationOutcome.issue.code = "duplicate"
throw exception with "REC_CONFLICT"
then return with HTTP.ResponseCode 409
}
//Bundle
{
if(Bundle.meta.versionID is null)
OperationOutcome.issue.code = "invariant"
throw exception with "REC_BAD_REQUEST"
then return with HTTP.ResponseCode 400
else if!(Bundle.meta.versionID in versionID.supported)
OperationOutcome.issue.code = "not-supported"
throw exception with "REC_UNPROCESSABLE_ENTITY"
then return with HTTP.ResponseCode 422
}
//Contents;
{
switch(MessageHeader.eventCoding)
{
case "servicerequest-request":
if (MessageHeader.reason.code == "new" && ServiceRequest.status == "active")
{
switch(ServiceRequest.Category)
{
case "Referral":
if (Careplan.status != "completed")
{
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400
}
else if(Encounter.Status.In("triaged","finished"))
RequestType = "Im Receiving a new Referral"
else
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400
break;
default:
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400;
}
}
else if (MessageHeader.reason.code == "update")
{
switch(ServiceRequest.category)
{
case "Referral":
if(ServiceRequest.status.In("entered-in-error","revoked"))
{RequestType = "im receiving a cancelled referral"}
else
{
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400
}
break;
default:
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400;
}
}
else
{
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400}
break;
case "servicerequest-response":
if (MessageHeader.Response is null )
{
RequestType = "Invalid servicerequest-response"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400;
}
else if ( !Message.Response.identifier.existsLocally())
{
RequestType = "none or invalid response ID"
OperationOutcome.issue.code = "not-found"//A content validation rule failed
throw exception with "REC_NOT_FOUND"
then return HTTP.ResponseCode 404;
}
switch (ServiceRequest.Category)
{
case "Referral":
if (ServiceRequest.status == "revoked" && MessageHeader.reason.code == "new")
{ RequestType = "im receiving a Safeguarding DNA response (noshow)" }
else
{
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400;
}
break;
default:
RequestType = "unknown"
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return HTTP.ResponseCode 400;
}
case "booking-request":
if (MessageHeader.Reason.code== "new" && Appointment.Status == "booked")
if(slot.IsFree())
{RequestType = "Im Receiving a new booking.";}
else
{
OperationOutcome.issue.code = "conflict"
throw exception with "REC_CONFLICT"
then return with HTTP.ResponseCode 409
}
else if (MessageHeader.Reason.code == "update")
MessageHeaderIsUpdate = true;
switch (Appointment.Status)
{
case "cancelled":
RequestType = "Im Receiving a booking cancellation."
break
case "entered-in-error":
RequestType = "Im Receiving a booking cancellation."
break
default:
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return with HTTP.ResponseCode 400;
break;
}
else
{
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with "REC_BAD_REQUEST"
then return with HTTP.ResponseCode 400;
}
break;
case "booking-response":
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with 'REC_BAD_REQUEST'
then return with HTTP.ResponseCode 400
break;
default:
OperationOutcome.issue.code = "invariant"//A content validation rule failed
throw exception with 'REC_BAD_REQUEST'
then return with HTTP.ResponseCode 400
break;
}
}
//Submit
{
if (Message == "update")
{
if (currentLocalData.LastUpdated > originaRequest.ReceivedDate)
{
OperationOutcome.issue.code = "conflict"
throw exception with 'REC_CONFLICT'
then return with HTTP.ResponseCode 409
break;
}
foreach (Entry in Bundle)
{
if (currentLocalData.Item.exists)
{
if (currentLocalData.LastUpdated > originaRequest.Received)
{
OperationOutcome.issue.code = "conflict"
throw exception with 'REC_CONFLICT'
then return with HTTP.ResponseCode 409
break;
}
if(Entry.LastUpdated > currentLocalData.Item.meta.LastUpdated && Entry.fullUrl = currentLocalData.Item.fullUrl)
currentLocalData.Item = Entry.Item
Entry.SubmitWith(currentLocalData.Item.meta.LastUpdated == Entry.LastUpdated )
else
ignore
}
else
Entry.SubmitWith(currentLocalData.Item.meta.LastUpdated == Entry.LastUpdated )
}
Submit(currentLocalData.Bundle.meta.LastUpdated = Bundle.Meta.LastUpdated)
return HTTP.ResponseCode 200 'OK'
}
else
{
foreach(Entry in Bundle)
{
Entry.SubmitWith(currentLocalData.Item.meta.LastUpdated == Entry.LastUpdated )
Submit(currentLocalData.Bundle.meta.LastUpdated = Bundle.Meta.LastUpdated)
return HTTP.ResponseCode 200 'OK'
}
}
}
}
How bookings and referrals map to services in UEC workflows
Background
It is common for healthcare IT systems to present a single API endpoint that is shared between multiple healthcare services - this is particularly common where a system is centrally-hosted and multi-tenanted, or where an organisation has a single IT system that is used to provide multiple healthcare services.
For example, an NHS provider organisation, 'Trumpton Community Hospital', which provides several healthcare services available to urgent emergency care services, including an NHS 111 call centre, an Out of Hours (OOH) GP service, an Urgent Treatment Centre (UTC) and an Emergency Department. The OOH GP service may offer two sub-services on DoS: OOH GP Telephone Consultations, and OOH GP Face to face Consultations.
Each of the above would be represented in the DoS as discrete services.
Some service discovery tools (such as the UEC Directory of Services (DoS)) list services at the granular healthcare service level i.e. for each of the above example healthcare services, the DoS will have one or more service records defined. It is these individual service records that are presented to users when searching the DoS.
When a system making a booking (e.g. NHS 111) requests available slots from a healthcare service, it needs to identify exactly which healthcare service it is targeting. This will allow receiving systems to correctly route requests and filter the responses to be relevant to the specific request.
A Key concept here is that it is the receiver of appointments that controls what is returned. The system making the booking does NO filtering, just showing all the slots that are returned.
Use Healthcare Service ID to filter slot requests to specific healthcare services
A search parameter of the HealthcareService (an intrinsic part of FHIR RESTful search) will be sent.
As a sender, include the ID of the healthcare service as a parameter
As a sender, include a search parameter specifying the Service Discovery tool ID of the healthcare service to which the query is directed.
Example
If the DoS has returned a service "Village Urgent Treatment Centre (Dos Service ID:124459850)", in order to book an appointment at that service, ensuring only the available slots that are specific to that service are returned, include a Service ID parameter in the Slot request.
As a receiver, use the healthcare service ID to filter the slots returned in your response
As a system receiving bookings and referrals and providing slots, ensure that only the appropriate slots are returned slots in your response, honouring the request.
Filtering is based on the HealthcareService specified in the query (to filter slots provided by that specific service), along with a date/time range and the 'status' of the slot i.e. either 'free' or 'busy'.
Example
A Receiver runs three healthcare services from the same system:
- Walk-in Centre
- OOH GP Service
- Urgent Treatment Centre
Within the system these services are likely to have separate booking schedules.
The mapping between the healthcare service and booking schedules must align with the potential request for slots that could be received.
| Service | DoS ID | Linked Schedule |
|---|---|---|
| Walk-in Centre | 124459850 | Schedule 1 |
| Urgent Treatment Centre | 2329483525 | Schedule 2 |
| OOH GP Service | 0123944122 | Schedule 3 |
Schedules can be shared between healthcare services, and such multiple mappings would look like this:
| Service | DoS ID | Linked Schedule |
|---|---|---|
| Walk-in Centre | 124459850 | Schedule 1 |
| Urgent Treatment Centre | 2329483525 | Schedule 1 |
| Urgent Treatment Centre | 2329483525 | Schedule 2 |
| OOH GP Service | 0123944122 | Schedule 2 |
| OOH GP Service | 0123944122 | Schedule 3 |
As a receiving system, it is essentially up to healthcare service providers to decide how to filter the slots returned but it is important to consider that a sending system will assume that any returned slot is a valid slot for booking - it is important that the slots returned are genuinely available to the patient within the context of the request received.
Support for booking only services
Some services that are profiled on the Urgent Care Directory of Services are commissioned as "booking only" services. This means that these services will only accept a referral if a booking has also been made for that patient.
If no appointment is available then a referral should not be made.
To achieve this, a "service attribute" is configurable against services. This will allow the service to be flagged as "booking only". Therefore if this attribute is present on the service all consumer systems should withhold referrals. The DoS API documentation for this can be found here.
Workflow
An example workflow showing how this might be implemented is illustrated below:
Example xml returned:
When requesting DoS service details with "CheckCapacitySummary" DoS API call, there is a section in the returned message for the additional attributes:
<ns1:attributes> <attribute> <dataType>string</dataType> <name>requirebooking</name> <description>The service only accepts referrals with an accompanying booked appointment.</description> <value>true</value> </attribute> </ns1:attributes>
This attribute will have three possible states:
- not present
- present and false
- present and true
For the first two cases, it can be assumed that referrals can be made without a booking. Only if the attribute is present and true should a referral be withheld if there has been no booking.
Payloads
The specific guidance around the use of key FHIR resources is described below.
MessageHeader Resource
Standard Patterns for BaRS Operations explains in detail how the MessageHeader resource must be used.
The MessageHeader resource for the Booking Request should have the following resource elements set as follows:
- MessageHeader.eventCoding - must be populated with 'booking-request'
- MessageHeader.reasonCode - must be 'new' or 'update'
- MessageHeader.focus - must reference the Appointment FHIR resource
- MessageHeader.definition - must adhere to Booking Request Message definition
The MessageHeader resource for the Referral Request should have the following resource elements set as follows:
- MessageHeader.eventCoding - must be populated with 'servicerequest-request'
- MessageHeader.reasonCode - must be 'new' or 'update'
- MessageHeader.focus - must reference the ServiceRequest FHIR resource
- MessageHeader.definition - must adhere to Referral Request Message definition
ServiceRequest Resource
The primary resource in a referral is the ServiceRequest resource. When the request 'message bundle' is created by the Sender and processed by the Receiver, this is the starting point from which the referral is understood. It provides either the detail or references to all key FHIR resources, for example, the Patient, Encounter and Careplan. The guidance for this resource below provides more granular, element level, detail. A key point when a Sender builds the referral FHIR 'message bundle' is to ensure the MessageHeader.focus references the ServiceRequest resource.
There are two coding entries within ServiceRequest.category which are key to driving workflow:
- Denotes the type of referral e.g. Transfer of care
- Denotes the use case and must be populated with the relevant use case from use-case CodeSystem. e.g. 111 - ED. 999 - UTC, CAS - SEDEC. Please refer to the guidance in use-case categories
An important function of the ServiceRequest resource is to link the booking and referral when they are related in a workflow. If the booking is successfully made before the referral, the Sender will have the Appointment.Id value (from the synchronous HTTP response) and this must be included as a relative reference, under ServiceRequest.supportingInfo, in the referral request. The element ServiceRequest.supportingInfo may also be used to provide reference to other resources in the request i.e. Rejected Services. This is outlined in the element guidance below.
Appointment
The primary resource in a booking is the Appointment resource. When the request 'message bundle' is created by the Sender and processed by the Receiver, this is the starting point from which the booking is understood. It provide either the detail or references to all key FHIR resources. When a Sender builds the booking FHIR 'message bundle' they must ensure the MessageHeader.focus references the Appointment resource.
An important function of the Appointment resource is to link the booking and referral when they are related in a workflow. If the referral is successfully made before the booking, the Sender will have the ServiceRequest.Id value (from the synchronous HTTP response) and this must be included as a relative reference, under Appointment.basedOn, in the booking request.
Encounter Resource
The Encounter is used to represent the interaction between a patient and healthcare service provider. It links with numerous other resources, to reflect the assessment performed.
In the initial referral request, the Sender will include an Encounter resource as the container for their assessment, which established the need for the referral. This encounter should include a reference to the Sender's assessment under encounter.identifier. Additionally, the encounter.episodeOfCare must be populated with a 'Journey ID' reference which can be used in subsequent referrals to allow the audit of the route a patient took through service providers to resolve their initial request for care.
A second Encounter resource is used to transfer the human readable reference of the newly created referral, at the Receiver side. When a referral request is made, the Receiver should include a new, secondary, encounter resource with the status of 'planned' in their synchronous HTTP response to the Sender's request. This new 'planned' encounter will have both an Id and an Identifier value, indicating the Receiver's human readable and local references, respectively. This secondary, 'planned', encounter is not mandatory and has a cardinality of 0..1, unlike the primary encounter resource (1..1)(See the Entity Relationship Diagram for reference). The human readable (Identifier) reference is intended to allow Senders to provide something to the patient which they can take between services to support consistent joined up care, although, it is also a useful link for the services themselves to use when discussing a patient's transition of care. The local (Id) reference is not intended to be human readable but rather machine readable.
CarePlan Resource
The CarePlan resource is used in a referral request to communicate the assessment triage outcome and any associated clinical information, based on the assessment performed by the Sender. The Receiver will utilise the detail in this resource to summarise what the previous assessment ascertained about the patient, to be used in any subsequent consultation with the patient.
Primarily, careplan.activity is the section which holds this information, whether it be coded or free text. The careplan.activity.outcomeCodeableConcept is malleable enough to support the transmission of Pathways coded outcomes as well as clinical narrative. The element guidance for this resource below goes into the specific detail but, fundamentally, the Sender must include the selected Pathway, Symptom Group, Symptom Discriminator and Disposition (DX) code, along with the Pathways Assessment report. Further clinical narrative, provided outside of the Pathways assessment, can also be included under this element using 'text'.
Flag Resource
The Flag resource is used to communicate prospective warnings of potential issues when providing care to the patient. The population of the Flag Resource is optional as not all subjects will have relevant issues.
BaRS Senders should populate Flag resources and should make adequate provision in their solution to support key flags in BaRS Application workflows, for example, Safeguarding, for this Application. When populating this resource, Senders must include both flag.category and flag.code values using the specific BaRS CodeSystems.
When a BARS Receiver processes information in a Flag resource;
- they should populate a flag in their system, if their solution supports that flag
- they must display the information in the Flag resource in a way that supports the associated workflow (i.e. the relevant end users can see it and act upon it)
- rendering of Flag information must be in line with the Principles for rendering BaRS Payload.
Observation
The Observation resource is used to carry assertions supporting the assessment performed by the Sender. In the BaRS UEC Applications, Senders should add clinical notes to the Careplan resource rather than Observation, especially where they expect a Receiver to act upon the information.
There are specific instances where an Observation must be used to convey information and examples are provided to aid development:
- Birth Sex must be transferred in a referral using Observation. This information should only be transferred when considered clinically relevant and it is not considered as demographic information, as administrative gender would be. It should not be included as an extension on the patient resource, as described in UK Core.
- Estimated Age must be conveyed in an Observation.
QuestionnaireResponse
QuestionnaireResponse is optionally used to carry structured data in BaRS UEC Applications, specifically, to communicate:
- references to external sources of clinical information, looked up during the Sender's assessment
- Special Patient Notes (SPNs) held locally by the Sender and linked to the patient. Typically, this information is not available to retrieve from other sources and, therefore, must be included in its entirety.
- any Rejected Services by the patient prior to selection on the Receiver service
The extension questionnaireresponse-reason must be populated to indicate which data is contained within, as outlined in the resource element guidance below.
Using a nested set of questionnaireResponse.item, questionnaireResponse.linkId and questionnaireResponse.answer complex structured data can be generated and processed, by the Sender and Receiver, respectively. The element guidance for this resource below goes into detail but, essentially, the item and linkId can be continually nested to convey various types of information. The item indicates a new element, linkId provide the number of elements (within the item) and answer contains any the value, supported by many different data types.
Consent
In the BaRS UEC Applications the level of consent is stipulated to be for 'Direct Care' only. A referral must contain a Consent resource and it must adhere to the example provided under the BaRS FHIR assets.
Payload for requesting a referral, using Service Request
This payload is used to transmit all the necessary information that is required for an urgent or emergency care service to accept a patient referred into their service.
> Bundle
The Bundle resource is the container for the event message
| BARSBundleMessage (Bundle) | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Bundle | ||
| type | Fixed Value | ||
| timestamp | 1.. |
| Data Item | Implementation Guidance | Necessity | Profile Cardinality | Example Value(s) |
|---|---|---|---|---|
| Bundle | 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.versionId | This MUST be populated with the version of the Application the bundle complies with. The Receiver will read this to know whether they are capable of processing. | MUST | 0..1 | 1.0.0-beta |
| 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 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 |
| Bundle.type | This MUST be populated with 'message' - FIXED VALUE | MUST | 1..1 | message |
| Bundle.timestamp | This MUST be populated with 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 | 1..1 | 2023-03-08T12:01:08.4677672+00:00 |
| Bundle.entry(s) | Follow BaRS profile guidance for populating this element | MUST | 0..* | |
| Bundle.entry.fullUrl | This MUST be populated with the 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 | This MUST be populated with the Resources detailed in the message definition. | MUST | 0..1 | MessageHeader,Patient, Encounter |
A resource that describes the BaRS message being exchanged between two systems. It defines the way that the referral bundle should be processed when it is being consumed by a receiver
> Message Header
BARSMessageHeaderServiceRequestRequest (MessageHeader) https://fhir.hl7.org.uk/StructureDefinition/UKCore-MessageHeader event[x] system 1.. code 1.. destination 1.. receiver reference 1.. sender reference 1.. identifier assigner reference 1.. source extension 0.. myExtension 0.. Extension(Complex) endpoint reason 1.. coding system Fixed Value focus reference 1..
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
MessageHeader
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
Patient Access System
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 'new' in a new message and 'update' for an update. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars'
MUST
0..1
new
MessageHeader.reason.coding.display
This SHOULD be populated with 'new' in a new message and 'update' for an update.
SHOULD
0..1
New
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-referral
MUST
0..1
https://fhir.nhs.uk/MessageDefinition/bars-message-servicerequest-request-referral
This Resource is the focus of the Referral interaction
> Service Request
BARSServiceRequestRequestReferral (ServiceRequest) https://fhir.hl7.org.uk/StructureDefinition/UKCore-ServiceRequest intent Fixed Value category 1..1 subject Reference(https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient) occurrence[x] occurrencePeriod Period authoredOn 1.. performer
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
ServiceRequest
https://simplifier.net/nhsbookingandreferrals/barsservicerequestrequestcasetransfer
1..1
ServiceRequest.id
This MUST only be populated with an id generated by the Receiver 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
This MUST be populated with the structure definition for BaRSServiceRequest-request-referral
MUST
0..1
https://fhir.nhs.uk/StructureDefinition/BARSServiceRequest-request-referral
ServiceRequest.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
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
This MUST be populated with one of three values: 'active', 'revoked' or 'entered-in-error'. 'revoked' is used when a SR is cancelled while 'entered-in-error' is used when sent to the wrong endpoint and needs to be removed.
MUST
1..1
active
ServiceRequest.intent
This MUST be populated with 'plan' - FIXED VALUE
MUST
1..1
plan
ServiceRequest.category
MUST
1..1
ServiceRequest.category.coding
BaRS Referral type
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 'referral'. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-category-servicerequest'
MUST
0..1
referral
ServiceRequest.category.coding.display
This MUST be populated with Display 'Transfer of Care'. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-category-servicerequest'
MUST
0..1
Transfer of Care
ServiceRequest.category.coding
BaRS Use Case
MUST
0..*
ServiceRequest.category.coding.system
This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/usecases-categories-bars' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/usecases-categories-bars
ServiceRequest.category.coding.code
This MUST be populated with Code for the use-case. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/usecases-categories-bars'
MUST
0..1
A1T1
ServiceRequest.category.coding.display
This MUST be populated with Display for the use-case. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/usecases-categories-bars'
MUST
0..1
111 - ED
ServiceRequest.subject
Follow BaRS profile guidance for populating this element
MUST
1..1
ServiceRequest.subjectreference
This MUST be populated. Follow BaRS profile guidance for populating this element
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 resource
MUST
0..1
urn:uuid:8c63d621-4d86-4f57-8699-e8e22d49935d
ServiceRequest.occurrencePeriod
SHOULD
0..1
ServiceRequest.occurrencePeriod.start
This SHOULD be populated. The start of the period MUST be ‘now’.
SHOULD
0..1
2023-03-08T12:01:08.4677672+00:00
ServiceRequest.occurrencePeriod.end
This SHOULD be populated with the time by which the next service provision SHOULD have started (this aligns with the disposition timeframe from Pathways)
SHOULD
0..1
2023-03-08T12:01:08.4677672+00:00
ServiceRequest.authoredOn
This MUST be populated with the date time the request transitioned to being actionable. In case it's 'blank' the date time SHOULD fall back to the submission time/system time of the SENDING system.
MUST
1..1
2023-03-08T12:01:08.4677672+00:00
ServiceRequest.requester
MUST
0..1
ServiceRequest.requester.reference
This MUST be populated with a reference to the Practitioner resource. This is the Healthcare Professional making the request. This does not strictly need to be a clinician.
MUST
0..1
urn:uuid:8c63d621-3424-4f57-8699-e8e22d32423g
ServiceRequest.performer
MUST
0..*
ServiceRequest.performer.reference
This MUST be populated with a reference to the requested HealthcareService resource
MUST
0..1
urn:uuid:8c63d621-2344-4f57-8699-e8e22d44235h
ServiceRequest.locationReference
MAY
0..*
ServiceRequest.locationReference.reference
This MAY be populated. Where used this will link to the Location resource. Location is typically used in 111 to ED when an address is not present because the patient is at a lat/long, WhatThreeWords, etc. location
MAY
0..1
urn:uuid:8c63d621-4g67-4f57-8699-e8e22d44234i
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.
ServiceRequest.supportingInfo
SHOULD
0..*
ServiceRequest.supportingInfo.reference
This SHOULD be populated with a reference to Rejected Services Questionnaire Response and/or Flag and/or the link to an Appointment (where a booking is made first in the workflow) as relative referrence. NB: All other supportingInfo reference (Safeguarding Flag, Patient Expectations and wishes etc.) must all reside under CarePlan.supportingInfo.
SHOULD
0..1
urn:uuid:65508934-c9e6-46d2-a393-af096b502daf
ServiceRequest.supportingInfo.display
This SHOULD be populated. Follow BaRS profile guidance for populating this element
SHOULD
0..1
Rejected Services - Patient Choice in Service Selection - Details
The HealthcareService the request is being made of - the Receiver> Healthcare Service
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
HealthcareService
https://simplifier.net/hl7fhirukcorer4/ukcore-healthcareservice
1..1
HealthcareService.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
1..1
1801e180-e6a1-4753-8a55-ab2d1cff6549
HealthcareService.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
HealthcareService.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-HealthcareService
HealthcareService.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
HealthcareService.identifier
MUST
0..*
HealthcareService.identifier.system
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
https://system.supplier.co.uk/My/Healthcare/Services
HealthcareService.identifier.value
This MUST be populated with the receiving HealthcareService identifier e.g ODS code
MUST
0..1
100
HealthcareService.active
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
HealthcareService.providedBy
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
HealthcareService.providedBy.reference
link to the Organisation the request is being made of
MUST
0..1
HealthcareService.location
MAY
0..*
HealthcareService.location.reference
Follow UK Core guidance for populating this element
MAY
0..1
urn:uuid:860e4c37-4e36-45fb-8fca-41132cd937a5
HealthcareService.name
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
Healthcare Service Name
In this interaction this resource represents the sender’s encounter. Each Organisation within the patient’s journey will create a new encounter (Case). These Encounters are linked through the JourneyID which is unchanged throughout the patient’s Journey.
> Encounter
For an incident with multiple patients, each patient would have its own encounter
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Encounter
https://simplifier.net/hl7fhirukcorer4/ukcore-encounter
1..1
Encounter.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
236bb75d-90ef-461f-b71e-fde7f899802c
Encounter.meta
This MUST be populated with https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Encounter.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-Encounter
Encounter.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
1..1
2023-03-08T12:01:08.4677672+00:00
Encounter.Identifier
SHOULD be the human readable identifier of the encounter.
SHOULD
0..*
Encounter.status
This MUST be populated with 'finished' or 'triaged'.
MUST
1..1
finished
Encounter.class
MUST
1..1
Encounter.class.system
This MUST be populated with CodeSystem 'http://terminology.hl7.org/CodeSystem/v3-ActCode' - FIXED VALUE
MUST
0..1
http://terminology.hl7.org/CodeSystem/v3-ActCode
Encounter.class.code
This MUST be populated with Code 'EMER'. See CodeSystem: 'http://terminology.hl7.org/CodeSystem/v3-ActCode' - FIXED VALUE
MUST
0..1
EMER
Encounter.class.display
This MUST be populated with Display 'emergency'. See CodeSystem: 'http://terminology.hl7.org/CodeSystem/v3-ActCode' - FIXED VALUE
MUST
0..1
emergency
Encounter.subject
MUST
0..1
Encounter.subject.reference
This MUST be populated with a reference to the Patient resource.
MUST
1..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
Encounter.episodeOfCare
MUST
0..*
Encounter.episodeOfCare.reference
This MUST be populated with the Journey ID which links all encounters within the patient’s journey. This MUST be created at the patient’s first contact and passed in all subsequent referrals.
MUST
1..1
9589fb37-87a2-48d8-968f-b371429208a8
Encounter.period
SHOULD
0..1
Encounter.period.start
This SHOULD be populated with the time the contact with the practitioner was established. This SHOULD be the contact immediately prior to the referral being sent.
SHOULD
0..1
2023-03-08T12:01:08.4677672+00:00
In the Referral message the CarePlan resource is used to communicate triage outcome information and associated clinical information. For NHS Pathways triage outcomes the CarePlan.activity.outcomeCodableConcept MUST include the system, code and display for the following: Pathways Symptom Group (SG), Pathways Symptom Discriminator (SD), Pathways Disposition (DX) code, Pathways Pathway code (PW).
> CarePlan
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
CarePlan
https://simplifier.net/hl7fhirukcorer4/ukcore-careplan
1..1
CarePlan.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
236bb75d-90ef-461f-b71e-fde7f899802c
CarePlan.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
CarePlan.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-CarePlan
CarePlan.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
CarePlan.status
This MUST be populated with ‘completed’ - FIXED VALUE
MUST
1..1
completed
CarePlan.intent
This MUST be populated with ‘plan’ - FIXED VALUE
MUST
1..1
plan
CarePlan.subject
MUST
1..1
CarePlan.subject.reference
This MUST be populated with a reference to the Patient resource
MUST
0..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
CarePlan.encounter
MUST
0..1
CarePlan.encounter.reference
This MUST be populated with a reference to the sender's Encounter resource
MUST
1..1
urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4413
CarePlan.period
MUST
0..1
CarePlan.period.start
This MUST be populated with the date/time the triage Disposition was identified
MUST
0..1
2023-03-08T12:01:08.4677672+00:00
CarePlan.supportingInfo
SHOULD
0..*
CarePlan.supportingInfo.reference
This SHOULD be populated with a reference to Safeguarding Flag etc. This MUST NOT be populated with a reference to Rejected Services Questionnaire Response and/or Flag and/or the link to an Appointment (where a booking is made first in the workflow) as relative referrence. These reference MUST go under ServiceRequest.supportingInfo
SHOULD
0..1
urn:uuid:ea37a499-245c-40e9-b0fa-df4383c4d413
CarePlan.supportingInfo.display
This SHOULD be populated. Follow BaRS profile guidance for populating this element
SHOULD
0..1
Safeguarding Concerns Flag
CarePlan.activity
This MUST be populated with the action to occur as part of the plan
MUST
0..*
CarePlan.activity.outcomeCodeableConcept
This MUST be populated with the triage outcomes
MUST
0..*
CarePlan.activity.outcomeCodeableConcept.text
This MUST be populated with the clinical narrative.
MUST
0..1
CONSULTATION SUMMARY
PRINTED ON 30/03/2022 09:53:52
CASE ID: d7e773ac-7710-42d9-849d-bf83119c3549
NHS PATHWAYS R32.1.0_internalV1 (Alpha)
PATIENT: Julie Jones
TELEPHONE:
AGE GROUP: Adult
GENDER: Female
PARTY: 1
POSTCODE: DH1 2HP
NOTES:
SKILLSET: 111 Call Handler
CALL HANDLER USER ID: sam.harris@nhs.net
PATHWAY: PW1267 - Hand or Wrist Injury, Blunt
SYMPTOM GROUP: SG1107 - Hand or Wrist Injury, Blunt
SYMPTOM DISCRIMINATOR: SD4500 - ED fracture and or dislocation
DISPOSITION: Dx02 - The individual needs to be referred to a treatment centre within 1 hour.
SELECTED CARE SERVICE: 119857, ED: University Hospital North Durham (Durham), University Hospital of North Durham, North Road, Durham, DH1 5TW0191 3332333 [...]
CarePlan.activity.outcomeCodeableConcept.coding
This SHOULD be populated with the triage outcome codes
SHOULD
0..1
CarePlan.activity.outcomeCodeableConcept.coding.system
This SHOULD be populated as follows:
* Pathways Symptom Group (SG) code use https://fhir.nhs.uk/CodeSystem/pathways-sg-codes value
* Pathways Symptom Discriminator (SD) code use https://fhir.nhs.uk/CodeSystem/pathways-sd-codes value
* Pathways Disposition (DX) code use https://fhir.nhs.uk/CodeSystem/pathways-dx-codes value
* Pathways Pathway code (PW) use https://fhir.nhs.uk/CodeSystem/pathways-pathway-codesSHOULD
0..1
https://fhir.nhs.uk/CodeSystem/sd-codes
CarePlan.activity.outcomeCodeableConcept.coding.code
This SHOULD be populated as follows:
*When you are passing an SG code this MUST be populated with the SG code
*When you are passing an SD code this MUST be populated with the SD code.
*When you are passing an Dx code this MUST be populated with the Dx code.
*When you are passing a PW code code this MUST be populated with the PW codeSHOULD
0..1
SD4500
CarePlan.activity.outcomeCodeableConcept.coding.display
This SHOULD be populated as follows:
When you are passing an SG code this MUST be populated the SG code description
When you are passing an SD code this MUST be populated the SD code description
When you are passing an Dx code this MUST be populated the Dx code descriptionSHOULD
0..1
ED fracture and or dislocation
This resource is used to communicate details about the patient who is the subject of the referral.
> Patient
It also includes contact information for third parties when required.
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Patient
https://simplifier.net/hl7fhirukcorer4/ukcore-patient
1..1
Patient.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
9589fb37-87a2-48d8-968f-b371429208a8
Patient.meta
https://www.hl7.org/fhir/resource.html#Meta
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
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
Patient.identifier
SHOULD
0..*
Patient.identifier.system
This SHOULD be populated with namespace for the Identifier
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
This SHOULD be populated. Where used this MUST be populated with CodeSystem - 'https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus' - FIXED VALUE
SHOULD
0..1
https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus
Patient.identifier.extension.valueCodeableConcept.coding.code
This SHOULD be populated. Where used this MUST be 'number-present-and-verified' or 'number-present-but-not-traced', else no NHS number MUST be sent. No other statuses are permitted.
SHOULD
0..1
number-present-and-verified
Patient.identifier.extension.valueCodeableConcept.coding.display
This SHOULD be populated. Where used this MUST be populated with 'Number present and verified' or 'Number present but not traced'. No other statuses are permitted
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
SHOULD
0..*
Patient.address.use
This SHOULD be populated. Where used 'home' MUST only be used for the patient's official residing address. 'temp' is used for alternative current locations with an address format, otherwise, a Location resource can be used to pinpoint a location without a building address
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 MUST 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-ContactRank
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
Patient.contact.relationship.coding.system
This MUST be populated with the CodeSystem from the ValueSet 'https://simplifier.net/hl7fhirukcorer4/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
http://terminology.hl7.org/CodeSystem/v2-0131
Patient.contact.relationship.coding.code
This MUST be populated with Code of CodeSystem value. See ValueSet 'https://simplifier.net/hl7fhirukcorer4/valueset-ukcore-personrelationshiptype'.
MUST
0..1
EP
Patient.contact.relationship.coding.display
This MUST be populated with Display of CodeSystem value. See ValueSet 'https://simplifier.net/hl7fhirukcorer4/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
SHOULD
1..1
Patient.Communication.Language.coding
SHOULD
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
SHOULD
0..1
Patient.extension
SHOULD
0..*
Patient.extension.url
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
1..1
https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-EthnicCategory
Patient.extension.valueCodeableConcept
SHOULD
0..1
Patient.extension.valueCodeableConcept.coding
SHOULD
0..*
Patient.extension.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.valueCodeableConcept.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
A
Patient.extension.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
1..1
urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4411
This resource is used to communicate details about the sender and receiver organisations.
> Organization
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Organization
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
This is used to carry details of the healthcare professional making the referral
> Practitioner
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Practitioner
https://simplifier.net/hl7fhirukcorer4/ukcore-practitioner
1..*
Practitioner.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
51182cb1-b199-4222-85f5-16d5428f6358
Practitioner.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Practitioner.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-Practitioner
Practitioner.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
Practitioner.identifier
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..*
Practitioner.identifier.system
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
https://fhir.nhs.uk/Id/sds-role-profile-id
Practitioner.identifier.value
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
PT2489
Practitioner.name
SHOULD
0..*
Practitioner.name.family
Follow UK Core guidance for populating this element
SHOULD
0..1
BLAKE
Practitioner.name.given
Follow UK Core guidance for populating this element
SHOULD
0..1
Marcy
Practitioner.telecom
SHOULD
0..*
Practitioner.telecom.system
Follow UK Core guidance for populating this element
SHOULD
0..1
phone
Practitioner.telecom.value
Follow UK Core guidance for populating this element
SHOULD
0..1
0205568263
Practitioner.telecom.use
Follow UK Core guidance for populating this element
SHOULD
0..1
work
This is used to carry the role of the practitioner making the referral. Note this may be the call handler
> Practitioner Role
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
PractitionerRole
https://simplifier.net/hl7fhirukcorer4/ukcore-practitionerrole
1..*
PractitionerRole.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
1801e180-e6a1-4753-8a55-ab2d1cff6549
PractitionerRole.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
PractitionerRole.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-PractitionerRole
PractitionerRole.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
PractitionerRole.practitioner
MUST
0..1
PractitionerRole.practitioner.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb56
PractitionerRole.Organisation
MUST
0..1
PractitionerRole.Organisation.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb51
PractitionerRole.code
SHOULD
0..*
PractitionerRole.code.coding
This SHOULD be populated when indicating the roles a practitioner can perform
SHOULD
1..1
PractitionerRole.code.coding.system
This MUST be populated with the CodeSystem from the ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode' - FIXED VALUE
SHOULD
0..1
https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode
PractitionerRole.code.coding.code
This MUST be populated with Code of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode'.
SHOULD
0..1
224508005
PractitionerRole.code.coding.display
This MUST be populated with Display of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode'.
SHOULD
0..1
Administrative healthcare staff
This resource MAY be used to carry new medication prescribed at the encounter. This SHOULD NOT be used to carry Medication History obtained from external sources.
> Medication Statement
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
MedicationStatement
https://simplifier.net/hl7fhirukcorer4/ukcore-medicationstatement
0..*
MedicationStatement.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
89e4a6d0-4054-4267-b86a-b7cf55c0d941
MedicationStatement.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
MedicationStatement.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationStatement
MedicationStatement.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
MedicationStatement.status
Follow UK Core guidance for populating this element
MUST
1..1
active
MedicationStatement.category
MAY
0..1
MedicationStatement.category.coding
MUST
1..1
MedicationStatement.category.coding.system
Follow UK Core guidance for populating this element
MAY
0..1
http://terminology.hl7.org/CodeSystem/medication-statement-category
MedicationStatement.category.coding.code
Follow UK Core guidance for populating this element
MAY
0..1
outpatient
MedicationStatement.category.coding.display
Follow UK Core guidance for populating this element
MAY
0..1
Outpatient
MedicationStatement.medicationCodeableConcept
MUST
1..1
MedicationStatement.medicationCodeableConcept.coding
MedicationStatement.medicationCodeableConcept.coding.system
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
https://dmd.nhs.uk/
MedicationStatement.medicationCodeableConcept.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
39732311000001104
MedicationStatement.medicationCodeableConcept.coding.display
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
Amoxicillin 250mg capsules
MedicationStatement.subject
MUST
1..1
MedicationStatement.subject.reference
This MUST be a reference to the patient
MUST
0..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
MedicationStatement.context
MAY
0..1
MedicationStatement.context.reference
Follow UK Core guidance for populating this element
MAY
0..1
urn:uuid:8c63d621-4d86-4f57-8699-e8e22d49935d
MedicationStatement.effectiveDateTime
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
2021-09-23
MedicationStatement.dateAsserted
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
2021-10-22
MedicationStatement.reasonCode
SHOULD
0..*
MedicationStatement.reasonCode.coding
MUST
1..1
MedicationStatement.reasonCode.coding.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://snomed.info/sct
MedicationStatement.reasonCode.coding.code
Follow UK Core guidance for populating this element
SHOULD
0..1
65363002
MedicationStatement.reasonCode.coding.display
Follow UK Core guidance for populating this element
SHOULD
0..1
Otitis Media
MedicationStatement.dosage
SHOULD
0..*
MedicationStatement.dosage.text
Follow UK Core guidance for populating this element
MAY
0..1
2 capsules 4 times a day.
MedicationStatement.dosage.timing
SHOULD
0..1
MedicationStatement.dosage.timing.repeat
MUST
0..1
MedicationStatement.dosage.timing.repeat.frequency
Follow UK Core guidance for populating this element
SHOULD
0..1
4
MedicationStatement.dosage.timing.repeat.period
Follow UK Core guidance for populating this element
SHOULD
0..1
1
MedicationStatement.dosage.timing.repeat.period unit
Follow UK Core guidance for populating this element
SHOULD
0..1
d
MedicationStatement.dosage.asNeededCodeableConcept
SHOULD
0..1
MedicationStatement.dosage.asNeededCodeableConcept.coding
MUST
1..1
MedicationStatement.dosage.asNeededCodeableConcept.coding.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://snomed.info/sct
MedicationStatement.dosage.asNeededCodeableConcept.coding.code
Follow UK Core guidance for populating this element
SHOULD
0..1
16001004
MedicationStatement.dosage.asNeededCodeableConcept.coding.display
Follow UK Core guidance for populating this element
SHOULD
0..1
Otalgia
MedicationStatement.dosage.site
MAY
0..1
MedicationStatement.dosage.site.coding
MUST
1..1
MedicationStatement.dosage.site.coding.system
Follow UK Core guidance for populating this element
MAY
0..1
http://snomed.info/sct
MedicationStatement.dosage.site.coding.code
Follow UK Core guidance for populating this element
MAY
0..1
123851003
MedicationStatement.dosage.site.coding.display
Follow UK Core guidance for populating this element
MAY
0..1
Mouth region structure
MedicationStatement.dosage.route
SHOULD
0..1
MedicationStatement.dosage.route.coding
MUST
1..1
MedicationStatement.dosage.route.coding.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://snomed.info/sct
MedicationStatement.dosage.route.coding.code
Follow UK Core guidance for populating this element
SHOULD
0..1
26643006
MedicationStatement.dosage.route.coding.display
Follow UK Core guidance for populating this element
SHOULD
0..1
Oral
MedicationStatement.dosage.method
SHOULD
0..*
MedicationStatement.dosage.method.coding
MUST
1..1
MedicationStatement.dosage.method.coding.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://snomed.info/sct
MedicationStatement.dosage.method.coding.code
Follow UK Core guidance for populating this element
SHOULD
0..1
421984009
MedicationStatement.dosage.method.coding.display
Follow UK Core guidance for populating this element
SHOULD
0..1
Until finished
MedicationStatement.dosage.doseAndRate
SHOULD
0..*
MedicationStatement.dosage.doseAndRate.doseQuantity
SHOULD
0..1
MedicationStatement.dosage.doseAndRate.doseQuantity.value
Follow UK Core guidance for populating this element
SHOULD
0..1
500
MedicationStatement.dosage.doseAndRate.doseQuantity.unit
Follow UK Core guidance for populating this element
SHOULD
0..1
milligram
MedicationStatement.dosage.doseAndRate.doseQuantity.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://unitsofmeasure.org
MedicationStatement.dosage.doseAndRate.doseQuantity.code
Follow UK Core guidance for populating this element
SHOULD
0..1
mg
This resource MAY be used to carry new Allergies confirmed at the senders encounter. This SHOULD NOT be used to carry Allergy History obtained from external sources.
> Allergy Intolerance
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
AllergyIntolerance
https://simplifier.net/hl7fhirukcorer4/ukcore-allergyintolerance
0..*
AllergyIntolerance.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
12d61f8e-2239-4c56-add1-483d0b43559a
AllergyIntolerance.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
AllergyIntolerance.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-AllergyIntolerance
AllergyIntolerance.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
AllergyIntolerance.clinicalStatus
SHOULD
0..1
AllergyIntolerance.clinicalStatus.coding
MUST
1..1
AllergyIntolerance.clinicalStatus.coding.system
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical
AllergyIntolerance.clinicalStatus.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
active
AllergyIntolerance.clinicalStatus.coding.display
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
Active
AllergyIntolerance.verificationStatus
SHOULD
0..1
AllergyIntolerance.verificationStatus.coding
MUST
1..1
AllergyIntolerance.verificationStatus.coding.system
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
http://terminology.hl7.org/CodeSystem/allergyintolerance-verification
AllergyIntolerance.verificationStatus.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
confirmed
AllergyIntolerance.verificationStatus.coding.display
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
Confirmed
AllergyIntolerance.type
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
allergy
AllergyIntolerance.category
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..*
medication
AllergyIntolerance.category.code
MUST
1..1
AllergyIntolerance.category.code.coding
MUST
1..1
AllergyIntolerance.category.code.coding.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://snomed.info.sct
AllergyIntolerance.category.code.coding.code
Follow UK Core guidance for populating this element
SHOULD
0..1
372687004
AllergyIntolerance.category.code.coding.display
Follow UK Core guidance for populating this element
SHOULD
0..1
Amoxicillin
AllergyIntolerance.patient
MUST
1..1
AllergyIntolerance.patient.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
AllergyIntolerance.encounter
SHOULD
0..1
AllergyIntolerance.encounter.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
urn:uuid:8c63d621-4d86-4f57-8699-e8e22d49935d
AllergyIntolerance.recordedDate
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
2023-03-08T12:01:08.4677672+00:00
AllergyIntolerance.recorder
SHOULD
0..1
AllergyIntolerance.recorder.reference
Follow UK Core guidance for populating this element
MUST
1..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb56
AllergyIntolerance.asserter
SHOULD
0..1
AllergyIntolerance.asserter.reference
Follow UK Core guidance for populating this element
MUST
1..1
Practitioner/UKCore-Practitioner-ConsultantSandraGose-Example
AllergyIntolerance.reaction
SHOULD
0..1
AllergyIntolerance.reaction.manifestation
MUST
1..*
AllergyIntolerance.reaction.manifestation.coding
MUST
1..1
AllergyIntolerance.reaction.manifestation.coding.system
Follow UK Core guidance for populating this element
SHOULD
0..1
http://snomed.info.sct
AllergyIntolerance.reaction.manifestation.coding.code
Follow UK Core guidance for populating this element
SHOULD
0..1
247472004
AllergyIntolerance.reaction.manifestation.coding.display
Follow UK Core guidance for populating this element
SHOULD
0..1
Urticarial rash
AllergyIntolerance.reaction.severity
Follow UK Core guidance for populating this element
SHOULD
0..1
mild
The Flag resource is used to convey risks and special patient requirements e.g. transport requirements, accessibility requirements, and reasonable adjustments. It can also be used to carry information about safeguarding concerns.
> Flag
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Flag
https://www.hl7.org/fhir/flag.html
0..*
Flag.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
77be46e3-7f01-4afe-b37d-7a301db6df63
Flag.meta
https://www.hl7.org/fhir/resource.html#Meta
1..1
Flag.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
http://hl7.org/fhir/StructureDefinition/Flag
Flag.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
Flag.status
A status of 'active' MUST be assigned
MUST
1..1
active
Flag.category
MUST
0..*
Flag.category.coding
This MUST be populated with the overarching Flag Category: e.g. Safeguarding, Reasonable Adjustment, Rejected Services from CodeSystem 'https://fhir.nhs.uk/CodeSystem/flag-categories-bars'
MUST
1..1
Flag.category.coding.system
This MUST be populated with 'https://fhir.nhs.uk/CodeSystem/flag-categories-bars' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/flag-categories-bars
Flag.category.coding.code
This MUST be populated with the Code of the Flag Category. See CodeSystem https://fhir.nhs.uk/CodeSystem/flag-categories-bars
MUST
0..1
RA
Flag.category.coding.display
This MUST be populated with the Display of the Flag Category. See CodeSystem https://fhir.nhs.uk/CodeSystem/flag-categories-bars
MUST
0..1
Reasonable Adjustment
Flag.code
MUST
1..1
Flag.code.coding
This MUST be populated with the detail of what is being flagged in Flag Category. e.g. for Reasonable Adjustment (Flag Category): 'adjustforneedlephobia'(Code) 'Adjust for needle phobia'(Display). It would not be appropriate to indicate a Category of 'Safeguarding' and a Code of 'Reasonable Adjustment'. The Category and Code MUST correlate.
MUST
1..1
Flag.code.coding.system
This MUST be populated with the Coding System for what is being flagged e.g. https://fhir.nhs.uk/CodeSystem/reasonable-adjustment-codes-bars
MUST
0..1
https://fhir.nhs.uk/CodeSystem/reasonable-adjustment-codes-bars
Flag.code.coding.code
This MUST be populated with the relevant Code from the selected Flag code CodeSystem
MUST
0..1
adjustforneedlephobia
Flag.code.coding.display
This MUST be populated with the Display text from the Flag code CodeSystem
MUST
0..1
Adjust for needle phobia
Flag.subject
MUST
1..1
Flag.subject.reference
This MUST be populated with the subject that the flag refers to. Where the flag relates to the patient (e.g. reasonable adjustments) this will reference the Patient resource
MUST
1..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
Flag.period
SHOULD
0..1
Flag.period.start
Follow UK Core guidance for populating this element
SHOULD
0..1
2023-03-08T12:01:08.4677672+00:00
Flag.period.end
Follow UK Core guidance for populating this element
MAY
0..1
2023-03-08T12:01:08.4677672+00:00
This resource is used to communicate links to external sources of clinical information used in the triage/assessment of the patient that would be useful to the recipient.> Questionnaire Response
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
QuestionnaireResponse
https://simplifier.net/hl7fhirukcorer4/ukcore-questionnaireresponse
0..*
QuestionnaireResponse.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
65508934-c9e6-46d2-a393-af096b502daf
QuestionnaireResponse.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
QuestionnaireResponse.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-QuestionnaireResponse
QuestionnaireResponse.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
QuestionnaireResponse.extension
MUST
0..*
QuestionnaireResponse.extension.url
This MUST be populated with Structure Definition 'http://hl7.org/fhir/StructureDefinition/questionnaireresponse-reason' - FIXED VALUE
MUST
1..1
http://hl7.org/fhir/StructureDefinition/questionnaireresponse-reason
QuestionnaireResponse.extension.valueCodeableConcept
MUST
0..*
QuestionnaireResponse.extension.valueCodeableConcept.text
This MUST be populated to Indicate the type of QuestionnaireResponse e.g.
EITHER 'Rejected Services - Patient Choice in Service Selection' for Rejected Services
OR 'Additional Information Sources' for Additional Information SourcesMUST
0..1
Rejected Services - Patient Choice in Service Selection
QuestionnaireResponse.basedOn
SHOULD
0..*
QuestionnaireResponse.basedOn.reference
This SHOULD be populated with EITHER reference to ServiceRequest for 'Rejected Services' OR CarePlan for 'Additional Information Services'
SHOULD
0..1
urn:uuid:236bb75d-90ef-461f-b71e-fde7f899802c
QuestionnaireResponse.subject
Follow UK Core guidance for populating this element
MUST
0..1
QuestionnaireResponse.subject.reference
Flag resource for 'Rejected Services' or Patient for 'Additional Information Services'
MUST
0..1
urn:uuid:41e591ab-d333-4fb8-87b4-d35f740b6bfc
QuestionnaireResponse.authored
Date/Time added during encounter
MAY
0..1
2023-03-08T12:01:08.4677672+00:00
QuestionnaireResponse.author
Follow UK Core guidance for populating this element
SHOULD
0..1
QuestionnaireResponse.author.reference
This SHOULD be populated with a reference to the Practitioner who created as part of the assessment
SHOULD
0..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb56
QuestionnaireResponse.source
Follow UK Core guidance for populating this element
SHOULD
0..1
QuestionnaireResponse.source.reference
This SHOULD be populated with a reference to the Patient resource when either they or a related third party (e.g. carer, parent, etc.) answers the questions. Alternatively, if a clinical representative for the patient answers, a reference to a Practitioner resource is permissable.
SHOULD
0..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
QuestionnaireResponse.item
This MUST be populated with the overarching Item array
MUST
0..*
QuestionnaireResponse.item.linkid
This MUST be populated with the type of item EITHER 'RejectedServices' OR 'AdditionalSources'
MUST
1..1
RejectedServices
QuestionnaireResponse.item.text
This MUST be populated with a description of item
MUST
0..1
RejectedServices
QuestionnaireResponse.item.item
This MUST be populated with the Specific Item
MUST
0..*
QuestionnaireResponse.item.item.linkid
Thid MUST be populated with EITHER Service
MUST
1..1
Service1
QuestionnaireResponse.item.item.item
This MUST be populated with the Elements within the above 'item' within an array e.g. EITHER DoS Service ID, DoS Service Name, Reject Reason and Rejection Comment for 'RejectedServices' OR Additional Source Name (e.g. MIG) and Additional Source URL for 'AdditionalSources'
MUST
0..1
QuestionnaireResponse.item.item.item.linkid
This MUST be populated with EITHER the ServiceId for 'RejectedServices' OR SourceName for 'AdditionalSources'. In the case of 'AdditionalSources', this could either be 3rd party source i.e. Graphnet or a local Special-Patient-Note (SPN)
MUST
1..1
ServiceId
QuestionnaireResponse.item.item.item.answer
This MUST be populated with the Specific answer
MUST
0..*
QuestionnaireResponse.item.item.item.answer.valueString
This MUST be populated with the answer Value for the item declared above EITHER the DoS Service ID for 'RejectedServices' OR Source name e.g. 'Graphnet' for 'AdditionalSources'
MUST
0..1
200000359
QuestionnaireResponse.item.item.item.linkid
This MUST be populated with ServiceName for 'RejectedServices', SourceURL for 'AdditionalSources' or, where the 'AdditionalSource' is a Special-Patient-Note (SPN), 'SPNTitle'
MUST
1..1
ServiceName
QuestionnaireResponse.item.item.item.answer
This MUST be populated with the Specific answer
MUST
0..*
QuestionnaireResponse.item.item.item.answer.valueString
This MUST be populated with the answer Value for the item declared above EITHER the DoS Service Name for 'RejectedServices', SourceURL for 'AdditionalSources' OR, where the 'AdditionalSource' is a Special-Patient-Note (SPN), the overall name of the SPN
MUST
0..1
Test DoS Service
QuestionnaireResponse.item.item.item.linkid
This MUST be populated with the RejectionReason for 'RejectedServices' or, where the 'AdditionalSource' is a Special-Patient-Note (SPN), the title for information wishing to be carried, for example, the SPN note text. SPN answers can continue to nest, assigning the appropriate answer.value
MUST
1..1
RejectionReason
QuestionnaireResponse.item.item.item.answer
This MUST be populated with the Specific answer
MUST
0..*
QuestionnaireResponse.item.item.item.answer.valueCoding.system
This MUST be populated with 'https://fhir.nhs.uk/CodeSystem/dos-rejected-reasons-bars' for 'RejectedServices'
MUST
0..1
https://fhir.nhs.uk/CodeSystem/dos-rejected-reasons-bars
QuestionnaireResponse.item.item.item.answer.valueCoding.code
For 'RejectedServices' this MUST be a value from the above CodeSystem
MUST
0..1
26
QuestionnaireResponse.item.item.item.answer.valueCoding.display
For 'RejectedServices' this MUST be the corresponding display text for the above Code from the specified CodeSystem
MUST
0..1
Rejected for patient choice
QuestionnaireResponse.item.item.item.linkid
If an optional comment for the above Rejected Service is recorded this MUST be included and this linkid value MUST be 'RejectionComment'
MUST
1..1
RejectionComment
QuestionnaireResponse.item.item.item.answer
This MUST be populated with the Specific answer
MUST
0..*
QuestionnaireResponse.item.item.item.answer.valueString
The text string for the Reject Service MUST be recorded here
MUST
0..1
Patient refused service due to parking
This resource can be used to communicate measurements and simple assertions made about a patient.> Observation
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Observation
https://simplifier.net/hl7fhirukcorer4/ukcore-observation
0..*
Observation.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
e3dd3833-5622-4cdd-bddf-97942c58d190
Observation.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Observation.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-Observation
Observation.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
Observation.status
This MUST be populated and set to FINAL - FIXED VALUE
MUST
1..1
final
Observation.code
MUST
1..1
Observation.code.text
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
Expectations and wishes
Observation.performer
SHOULD
0..*
Observation.performer.reference
This SHOULD be populated. Where populated this MUST reference to a Practitioner resource
SHOULD
0..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
Observation.subject
MUST
0..1
Observation.subject.reference
This MUST be populated with reference to a Patient resource
MUST
0..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
Observation.encounter
MUST
0..1
Observation.encounter.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
urn:uuid:8c63d621-4d86-4f57-8699-e8e22d49935d
Observation.effectiveDateTime
Follow UK Core guidance for populating this element
MAY
0..1
2023-03-08T12:01:08.4677672+00:00
Observation.note
Follow UK Core guidance for populating this element
SHOULD NOT
0..*
Observation.note.authorString
Follow UK Core guidance for populating this element
SHOULD NOT
0..1
Observation.note.text
Follow UK Core guidance for populating this element
SHOULD NOT
1..1
Resource used to communicate a healthcare consumer's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time. This is limited to communicating consent to share information for Direct Care for this Release of BaRS> Consent
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Consent
https://simplifier.net/hl7fhirukcorer4/ukcore-consent
1..*
Consent.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
e267afc4-4310-4549-b66a-5bc4db08f09b
Consent.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Consent.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-Consent
Consent.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
Consent.status
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
active
Consent.scope
MUST
1..1
Consent.scope.coding
MUST
1..1
Consent.scope.coding.system
This MUST be populated with the System namespace for the CodeSystem 'http://terminology.hl7.org/CodeSystem/consentscope' - FIXED VALUE
MUST
0..1
http://terminology.hl7.org/CodeSystem/consentscope
Consent.scope.coding.code
This MUST be populated with Code 'patient-privacy'. See CodeSystem 'http://terminology.hl7.org/CodeSystem/consentscope'. This is the only supported option for this BaRS release - FIXED VALUE
MUST
0..1
patient-privacy
Consent.Category
MUST
1..*
Consent.Category.coding
MUST
1..1
Consent.Category.coding.system
This MUST be populated with the System namespace for the CodeSystem 'https://fhir.nhs.uk/CodeSystem/consent-categories-bars' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/consent-categories-bars
Consent.Category.coding.code
This MUST be populated with Code 'DRC'. See CodeSystem 'https://fhir.nhs.uk/CodeSystem/consent-categories-bars'. This is the only supported option for this BaRS release - FIXED VALUE
MUST
0..1
DRC
Consent.Category.coding.display
This MUST be populated with Display 'Direct Care'. See CodeSystem 'https://fhir.nhs.uk/CodeSystem/consent-categories-bars'. This is the only supported option for this BaRS release - FIXED VALUE
MUST
0..1
Direct Care
Consent.patient
MUST
0..1
Consent.patient.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
Consent.policyRule
MUST
0..1
Consent.policyRule.coding
MUST
1..1
Consent.policyRule.coding.system
This MUST be populated with the namespace for the CodeSystem 'http://terminology.hl7.org/CodeSystem/v3-ActCode' - FIXED VALUE
MUST
0..1
http://terminology.hl7.org/CodeSystem/v3-ActCode
Consent.policyRule.coding.code
This MUST be populated with Code 'IMPLIED'. See CodeSystem 'http://terminology.hl7.org/CodeSystem/v3-ActCode'. This is the only supported option for this BaRS release - FIXED VALUE
MUST
0..1
IMPLIED
Consent.dateTime
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
26/11/2021
Payload for making a booking, using a Booking Request
This payload is used to support a booking workflow and contains all the required information for an urgent and emergency care service to create an appointment for a patient referred into their service.
> Bundle
The Bundle resource is the container for the event message
| BARSBundleMessage (Bundle) | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Bundle | ||
| type | Fixed Value | ||
| timestamp | 1.. |
| Data Item | Implementation Guidance | Necessity | Cadinality UKCore | Example Value(s) |
|---|---|---|---|---|
| Bundle | 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 | 79120f41-a431-4f08-bcc5-1e67006fcae0 | |
| Bundle.meta | https://www.hl7.org/fhir/resource.html#Meta | MUST | 0..1 | |
| Bundle.meta.versionId | This MUST be populated with the version of the Application the bundle complies with. The Receiver will read this to know whether they are capable of processing. | MUST | 0..1 | 1.0.0-beta |
| 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 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 |
| Bundle.type | This MUST be populated with 'message' - FIXED VALUE | MUST | 1..1 | message |
| Bundle.timestamp | This MUST be populated with 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 | ||
| Bundle.entry.fullUrl | This MUST be populated with the 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 | This MUST be populated with the Resources detailed in the message definition. | MUST | 0..1 | MessageHeader,Patient, Appointment |
A resource that describes the BaRS message being exchanged between two systems. It defines the way that the Appointment bundle should be processed when it is being consumed by a receiver
> Message Header
BARSMessageHeaderBookingRequest (MessageHeader) https://fhir.hl7.org.uk/StructureDefinition/UKCore-MessageHeader event[x] system Fixed Value code 1.. Fixed Value destination 1.. receiver reference 1.. sender reference 1.. identifier assigner reference 1.. source extension 0.. myExtension 0.. Extension(Complex) name version endpoint reason 1.. coding system Fixed Value focus reference 1..
Data Item
Implementation Guidance
Necessity
Cadinality UKCore
Example Value(s)
MessageHeader
https://simplifier.net/nhsbookingandreferrals/barsmessageheaderbookingrequest-duplicate-2
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 forBARSMessageHeader-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.extension
This MUST be populated with details of the Clinical Decision Support System used
MUST
0..1
MessageHeader.extension.url
This MUST be populated with 'https://fhir.nhs.uk/StructureDefinition/CDSSExtension' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/StructureDefinition/CDSSExtension
MessageHeader.extension.extension
MUST
0..1
MessageHeader.extension.extension.url
This MUST be populated with the pre-defined Clinical Decision Support System software url - FIXED VALUE
MUST
0..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..1
MessageHeader.extension.extension.url
This MUST be populated with the pre-defined Clinical Decision Support System software Version url - FIXED VALUE
MUST
0..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 '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
Patient Access System
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 'new' in a new message and 'update' for an update. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars'
MUST
0..1
new
MessageHeader.reason.coding.display
This SHOULD be populated with 'new' in a new message and 'update' for an update.
SHOULD
0..1
New
MessageHeader.focus
MUST
0..*
MessageHeader.focus.reference
This MUST be populated with a reference to the Appointment
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-booking-request
MUST
0..1
https://fhir.nhs.uk/MessageDefinition/bars-message-booking-request
This resource will be used to communicate information about an Appointment and is the focus of the Booking interation.
> Appointment
Data Item
Implementation Guidance
Necessity
Profile cardinality
Example Value(s)
Appointment
https://simplifier.net/hl7fhirukcorer4/ukcore-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' or 'cancelled'
MUST
1..1
booked
Appointment.serviceCategory
Appointment.serviceCategory.coding
BaRS Use Case
MUST
0..*
Appointment.serviceCategory.coding.system
This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/usecases-categories-bars' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/usecases-categories-bars
Appointment.serviceCategory.coding.code
This MUST be populated with Code for the use-case. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/usecases-categories-bars'
MUST
0..1
A1T1
Appointment.serviceCategory.coding.display
This MUST be populated with Display for the use-case. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/usecases-categories-bars'
MUST
0..1
111 - ED
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
This resource will be used to communicate information about the slot. The Slot resource retrieved via the GET /Slot request and MUST be returned how it was received> Slot
This resource will be used to communicate information about the schedule. The Schedule resource retrieved via the GET /Slot request and MUST be returned how it was received
> Schedule
This resource is used to communicate details about the patient who is the subject of the booking.
> Patient
It also includes contact information for third parties when required.
Data Item
Implementation Guidance
Necessity
Cadinality UKCore
Example Value(s)
Patient
https://simplifier.net/hl7fhirukcorer4/ukcore-patient
1..1
Patient.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
9589fb37-87a2-48d8-968f-b371429208a8
Patient.meta
https://www.hl7.org/fhir/resource.html#Meta
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
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
Patient.identifier
SHOULD
0..*
Patient.identifier.system
This SHOULD be populated with namespace for the Identifier
SHOULD
0..*
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
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
0..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
This SHOULD be populated. Where used this MUST be populated with CodeSystem - 'https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus' - FIXED VALUE
SHOULD
0..1
https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus
Patient.identifier.extension.valueCodeableConcept.coding.code
This SHOULD be populated. Where used this MUST be 'number-present-and-verified' or 'number-present-but-not-traced', else no NHS number MUST be sent. No other statuses are permitted.
SHOULD
0..1
number-present-and-verified
Patient.identifier.extension.valueCodeableConcept.coding.display
This SHOULD be populated. Where used this MUST be populated with 'Number present and verified' or 'Number present but not traced'. No other statuses are permitted
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
SHOULD
0..*
Patient.address.use
This SHOULD be populated. Where used 'home' MUST only be used for the patient's official residing address. 'temp' is used for alternative current locations with an address format, otherwise, a Location resource can be used to pinpoint a location without a building address
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 MUST 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-ContactRank
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..1
Patient.contact.relationship.coding
MUST
0..1
Patient.contact.relationship.coding.system
This MUST be populated with the CodeSystem from the ValueSet 'https://simplifier.net/hl7fhirukcorer4/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
http://terminology.hl7.org/CodeSystem/v2-0131
Patient.contact.relationship.coding.code
This MUST be populated with Code of CodeSystem value. See ValueSet 'https://simplifier.net/hl7fhirukcorer4/valueset-ukcore-personrelationshiptype'.
MUST
0..1
EP
Patient.contact.relationship.coding.display
This MUST be populated with Display of CodeSystem value. See ValueSet 'https://simplifier.net/hl7fhirukcorer4/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
SHOULD
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
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..1
Patient.Communication.Language
SHOULD
0..1
Patient.Communication.Language.coding
SHOULD
0..1
Patient.Communication.Language.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..*
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
SHOULD
0..*
Patient.extension.url
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
1..1
https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-EthnicCategory
Patient.extension.valueCodeableConcept
SHOULD
0..1
Patient.extension.valueCodeableConcept.coding
SHOULD
0..*
Patient.extension.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.valueCodeableConcept.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
A
Patient.extension.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..1
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
This resource is used to communicate details about the sender and receiver organisations.
> Organization
Data Item
Implementation Guidance
Necessity
Cadinality UKCore
Example Value(s)
Organization
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
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
This is used to carry details of the healthcare professional making the Booking
> Practitioner
Data Item
Implementation Guidance
Necessity
Cadinality UKCore
Example Value(s)
Practitioner
https://simplifier.net/hl7fhirukcorer4/ukcore-practitioner
0..*
Practitioner.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
1..1
51182cb1-b199-4222-85f5-16d5428f6358
Practitioner.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Practitioner.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-Practitioner
Practitioner.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
Practitioner.identifier
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..*
Practitioner.identifier.system
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
https://fhir.nhs.uk/Id/sds-role-profile-id
Practitioner.identifier.value
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
PT2489
Practitioner.name
SHOULD
0..*
Practitioner.name.family
Follow UK Core guidance for populating this element
SHOULD
0..1
BLAKE
Practitioner.name.given
Follow UK Core guidance for populating this element
SHOULD
0..1
Marcy
Practitioner.telecom
SHOULD
0..*
Practitioner.telecom.system
Follow UK Core guidance for populating this element
SHOULD
0..1
phone
Practitioner.telecom.value
Follow UK Core guidance for populating this element
SHOULD
0..1
0205568263
Practitioner.telecom.use
Follow UK Core guidance for populating this element
SHOULD
0..1
work
This is used to carry the role of the practitioner making the referral. Note this may be the call handler
> Practitioner Role
Data Item
Implementation Guidance
Necessity
Cadinality UKCore
Example Value(s)
PractitionerRole
https://simplifier.net/hl7fhirukcorer4/ukcore-practitionerrole
0..*
PractitionerRole.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
1..1
1801e180-e6a1-4753-8a55-ab2d1cff6549
PractitionerRole.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
PractitionerRole.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-PractitionerRole
PractitionerRole.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
PractitionerRole.practitioner
MUST
0..1
PractitionerRole.practitioner.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb56
PractitionerRole.Organisation
MUST
0..1
PractitionerRole.Organisation.reference
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb51
PractitionerRole.code
SHOULD
0..*
PractitionerRole.code.coding
This SHOULD be populated when indicating the roles a practitioner can perform
SHOULD
1..1
PractitionerRole.code.coding.system
This MUST be populated with the CodeSystem from the ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode' - FIXED VALUE
SHOULD
0..1
https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode
PractitionerRole.code.coding.code
This MUST be populated with Code of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode'.
SHOULD
0..1
224508005
PractitionerRole.code.coding.display
This MUST be populated with Display of CodeSystem value. See ValueSet 'https://fhir.hl7.org.uk/ValueSet/UKCore-PractitionerRoleCode'.
SHOULD
0..1
Administrative healthcare staff
The HealthcareService the request is being made of - Receiver. The HealthcareService resource is retrieved via the GET /Slot request and SHOULD be returned how it was received but MAY be added to. The Id value MUST remain the same.> Healthcare Service
Data Item
Implementation Guidance
Necessity
Cadinality UKCore
Example Value(s)
HealthcareService
https://simplifier.net/hl7fhirukcorer4/ukcore-healthcareservice
1..1
HealthcareService.id
This MUST be populated with the value retrieved for the resource via the GET /Sot request.
MUST
1..1
1801e180-e6a1-4753-8a55-ab2d1cff6549
HealthcareService.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
HealthcareService.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-HealthcareService
HealthcareService.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
HealthcareService.identifier
MUST
0..*
HealthcareService.identifier.system
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
https://system.supplier.co.uk/My/Healthcare/Services
HealthcareService.identifier.value
This MUST be populated with the receiving HealthcareService identifier e.g ODS code
MUST
0..1
100
HealthcareService.active
This MUST be populated. Follow UK Core guidance for populating this element
MUST
HealthcareService.providedBy
This MUST be populated. Follow UK Core guidance for populating this element
MUST
HealthcareService.providedBy.reference
link to the Organisation the request is being made of
MUST
HealthcareService.location
MAY
0..*
HealthcareService.location.reference
Follow UK Core guidance for populating this element
MAY
0..1
urn:uuid:860e4c37-4e36-45fb-8fca-41132cd937a5
HealthcareService.name
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
Healthcare Service Name