Referrals into Pharmacy (Application 5)
| Application Version | Minimum Core Version | Minimum Guide Version | Minimum API Spec Version |
|---|---|---|---|
| Application 5 v1.1.4 | v1.1.x | v1.10.0 | v1.1.0 |
Any suppliers building to this application (Application 5) must engage with NHS England's Pharmacy First/Digital Services for Integrated Care teams prior to building Application 5.
Use Cases Supported
This application supports the use of the following use cases:
| Use Case | Name | Code |
|---|---|---|
| Deprecated - Primary Care to Community Pharmacy (Pharmacy First) | Primary Care to Community Pharmacy | referraltopharmacy |
| Primary Care to Community Pharmacy (Pharmacy First) | Primary Care to Community Pharmacy | A5T1 |
| Primary Care to Pharmacy Contraception (Oral Contraception for supply of initial or repeat prescriptions for Combined Oral Contraceptive (COC) or Proestogen Only Pill (POP)) | Primary Care to Pharmacy Contraception | A5T2 |
| Primary Care to Pharmacy Blood Pressure Check Service | Primary Care to Pharmacy Blood Pressure Check Service | A5T3 |
NB - 'Primary Care' currently includes GP Practice and Online Consultation, as described in the BaRS Clinical Safety Case Report (CSCR)
Introduction
Overview
This page provides guidance for implementing the 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 GP to Pharmacy (Pharmacy First) Minor Illness referral information data model is informed by user research with pharmacy service providers. We have engaged with NHS England (NHSE) Policy teams to establish the service information requirements. The data model is based on the Community Pharmacy Standard v3.0 as defined and endorsed by the Professional Records Standards Body (PRSB). The referral information has been validated by the NHSE Pharmacy Clinical Reference Group. This provides the necessary confidence that solutions built to the standard will be both fit for purpose and safe.
For more information see Referrals into Pharmacy (UEC Application 5
Scope and Requirements
Scope Overview
This BaRS Application (Referrals into Community Pharmacy, Application 5) supports the following use case(s) ONLY:
- Primary Care to Community Pharmacy (Pharmacy First)
- Primary Care to Pharmacy Contraception (Oral Contraception for supply of initial or repeat prescriptions for Combined Oral Contraceptive (COC) or Proestogen Only Pill (POP))
- Primary Care to Pharmacy Blood Pressure Check Service
The payload and workflow have been designed to support this service. 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. However, the NHS England Directory of Services supports this application and futher details are provided in the 'Find a Service' section
- The service must be configured within the BaRS infrastructure (Endpoint Catalogue) before requests can be made
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 of the receiving service
- The referral will contain primarily clinical information, indicating the need of the individual and must state the anticipated action required by the receiving service (see Task FHIR resource)
API-M
- All requests and responses associated with BaRS must occur through the BaRS API Proxy
Constraints
- No guidance is provided on the display of referral information beyond the Principles for rendering BaRS Payload
- 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
- Clincial Constraints exist - See Hazard Log
- No element level 'updates' to requests are supported. A new request must be generated to change information in the referral request
- Where an Online Consultation tool is used to refer, the referral must be verified by a human representative of the sending organisation before the request is made
- Referrals to the Oral Contraception service must adhere to the published policy specification
- Referrals to the Blood Pressure service must adhere to the published policy specification
Requirements
Service Discovery
- The service must support a unique identifier which the Sender extracts to engage in the BaRS referral workflow
Referral
- Clinical and non-clinical users must be capable of making referrals
- 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 Individual Requirements e.g. needle phobia, wheelchair access etc., recorded as part of the assessment, must be included in the referral Sender's request
- The referral Receiver must clearly identify any included Individual Requirements to the end user
- The referral Receiver must accurately represent information made by the Sender to the end user
- The referral Receiver must display the Sender organisation name and identifier (Note - This organisation may not be the patient's registered GP Surgery.)
- The referral Sender must include the Pharmacy Service that the request is intended for (from the defined list)
- The referral Sender must indicate consent to share (for Direct Care) to the Receiver
- The referral Sender should indicate the urgency (providing timeframe within which included actions are expected to take place) of the request to the Receiver
- The referral Sender must indicate novel medications, established during the latest assessment and not available on existing records, to the Receiver
- The referral Sender must indicate novel allergies, established during the latest assessment and not available on existing records, to the Receiver
- The referral Sender must indicate localised Special Patient Notes (SPNs) to the Receiver, if they hold any for the patient
- The referral Sender must include the sending organisation type (organization.type in FHIR) to indicate the referral entry method into a Receiver
- The referral Sender should include the Body Mass Index (BMI) of the patient being referred
- The referral Sender should include the service type when requesting a Blood Pressure service e.g. single check or monitoring over a period (ABPM)
- The referral Sender should include the current oral contraception medication a patient is prescribed when requesting a Oral Contraception service, if requesting ongoing (repeat) supply
- The referral Sender must make available the human readable identifier for the referral, included in the HTTP synchronous response, to the end user so they can share with the patient/third party
- 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.
- 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 perform a read of the referral to be cancelled, from the referral Receiver, prior to cancellation to ensure they are working with the most up-to date information and it has not already been actioned
- Where the cancellation was not successful, the Receiver must send an appropriate response. See failure scenarios for more detail.
- Where the cancellation was not successful, the Sender must present an appropriate message to the end user. See failure scenarios for more detail.
- 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 remains with the referral Sender
Re-refer
- The referral Sender must be capable of re-referring within the current consultation or after the consultation event
- If the patient recontacts the sending service after the sender's consultation has been completed, the patient should be reassessed prior to attempting to re-refer
- The referral Sender should revoke the original referral prior to making a re-referral, whether within the current consultation or after the consultation event
- Where the re-referral was not successful, the Receiver must send an appropriate response. See failure scenarios for more detail.
- Where the re-referral was not successful, the Sender must present an appropriate message to the end user. See failure scenarios for more detail.
- 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 remains 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 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 work. This diagram illustrates the workflow and interactions of a referral request:
To support the workflows for this application of the standard the operations that need to be supported are:
Find a Service
The BaRS referral process as shown above does not include guidance on how a user should determine if a referral to Pharmacy is appropriate for the patient. It is the responsibility of the referring organisaton to ensure patients are pre-screened by GP Practice staff (care navigators or clinicians) prior to beginning the referral process, using their own judgement or an appropriate triage tool.
Directory of Services API
Pharmacy services are profiled on the Directory of Services (DoS).
For this application, systems should use the Directory of Services - Urgent and Emergency Care - REST API.
Details on how to develop to use this API and onboard to use it in production, are provided in the links above.
For this application the Service Type search will be used: Search by Service Type | docs-dos-api (developer.nhs.uk).
Guidance on how to call the DoS API
This API supports a search by location (e.g. the patient's current location). Note that the DoS API used does not support the concept of searching for services that are open within a given timeframe, however the results from DOS include all opening times. The service search results should be filtered to those that are open in the timeframe required for the referral. The filtered results should be displayed back to the user, in order to allow them to choose with the patient where they want to go.
The search parameters to be used are as follows:
| Parameter | Type | Required? | GP to Pharamcy Guidance Notes |
|---|---|---|---|
| caseID | String | No | Do not populate |
| postcode | String | Yes | Populate with where the GP Practice is or the Patient’s home address – dependent on where the patient is now |
| searchDistance | Integer | No | Do not populate – the default value is 37.5 miles which is more than adequate search radius |
| gpPracticeID | Integer | No | Do not populate |
| age | Integer | No | Do not populate |
| gender | String | No | Do not populate |
| disposition | String | No | Do not populate |
| serviceTypeIds | Array | Yes | Use the relevant service type for the need required in the referral – as detailed further in next section |
| numberPerType | Integer | No | Do not populate |
Guidance on service search and which services to display
| Pharmacy Service Type | Search method | Opening Hours Guidance |
|---|---|---|
| Community Pharmacy Consultation Service and Common Conditions Service | Use Service Type ID 131- Pharmacy Urgent Meds Supply Note this is labelled 'Pharmacy Urgent Meds Supply', but it is deemed appropriate to return one profile per Pharmacy that will do Pharmacy Urgent Meds Supply, Primary Care to Community Pharmacy (Pharmacy First) and CCS. |
These services are time critical and the patient must be seen within 24 hours, and so any pharmacies closed now (or closing in the next 30 mins) AND not open in the next 24 hours should not be displayed to the user. Discretion is permitted if the nearest pharmacy is open now but due to close soon. If no pharmacies in the local area are open in the next 24 hours then a message needs to be clearly displayed to the user so they can consider other alternatives. (Note this is a very unlikely scenario – but may happen in rural areas with only a few nearby Pharmacies or around bank holiday weekends). Ensure the display clearly shows: |
| Blood Pressure Check Service | Use Service Type ID 148 - Pharmacy Blood Pressure Check | This service is not time critical and so all nearest services can be displayed to the user. Ensure the display clearly shows: |
| Pharmacy Contraception Service | Use Service Type ID 149 - Pharmacy Contraception | This service is not time critical and so all nearest services can be displayed to the user. Ensure the display clearly shows: |
When a service is chosen, the "Service ID" field in the DOS data will be used as the Receiver Service Identifier to then initiate the referral as per the following sections.
Make a Referral
Making a referral for this application follows the standard pattern for BaRS 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) = a5t1 | |||
| 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) = a5t1 | |||
| 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>
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'
}
}
}
}
Payloads
MessageHeader Resource
Standard Patterns for BaRS Operations explains in detail how the MessageHeader resource must be used.
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 'focus' 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. Primary Care to Community Pharmacy. Please refer to the guidance in use-case categories
Please note that the use-case category 'referraltopharmacy' is now deprecated to allow for more granular use cases.
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 (200) to the Sender's request. This new 'planned' encounter will have both an Id and an Identifier value, indicating the Receiver's local reference and human readable one, respectively. This secondary, 'planned', encounter is not mandatory (cardinality of 0..1), unlike the primary encounter resource (1..1) (See the Entity Relationship Diagrams 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 next steps in care, linking both the 'problem' identified (Condition resource, careplan.addresses), following the assessment performed by the Sender, and the required action to move the patient's issue to resolution (Task resource, careplan.activity.reference). 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. This overall clinical narrative and assessment output is included in this resource, under element careplan.outcomeCodeableConcept.text, as 'freetext'.
Condition Resource
The Condition resource is used to encapsulate the overall 'problem' the referral intends to resolve for the patient. The detail provided here underpins the rationale for the CarePlan and is a central resource for the Receiver looking for information about the patient and reason for referral.
The key information about the 'problem' is comprised of two components within this Application, condition.category and condition.code. The category is used to qualify the code value, providing additional context to interpret the issue identified. For example, in this Application, the category will stipulate this is a 'presenting complaint', highlighting the provenance of the 'problem' for the Receiver to start their consultation. This is in addition to other specific status fields on the resource.
Task Resource
The Task is used to direct the next action(s) required by the Sender making the referral. Task supports in fulfilling Careplan, which also references it. The narrative within the payload starts with the assessment performed by the Sender (Encounter), identifying a 'problem' (Condition) which a plan of care (CarePlan) is established to address. The Sender is unable to support the plan of care so transitions responsibility, via a referral (ServiceRequest), while directing the next requested action (Task).
This Application utilises two elements within Task to direct the activity and timeframe, using Task.code and Task.restriction. The code will be a fixed value, indicating that a consultation is being request of the 'Community Pharmacist Consultation Service for minor illness' (Pharmacy First), dictating the action should take place within twenty-four hours, under the restriction.period element. The patient is responsible for attending the pharmacy so the timeframe is a guide, indicating when the request is expected to occur. The pharmacist will only contact the patient if they have concerns based on the referral content.
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.
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.
Referral Payload
Payload for requesting a referral, using Service Request
This payload is used to transmit all the necessary information that is required for pharmacies 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 meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent. | MUST | 0..1 | 2023-03-08T12:01:08.4677672+00:00 |
| Bundle.type | This must be populated with 'message' - FIXED VALUE | MUST | 1..1 | message |
| Bundle.timestamp | the date that the content of the message was assembled. This date is not changed by middleware engines unless they add additional data that changes the meaning of the time of the message | MUST | 1..1 | 2023-03-08T12:01:08.4677672+00:00 |
| Bundle.entry(s) | Follow BaRS profile guidance for populating this element | MUST | 1..* | |
| Bundle.entry.fullUrl | unique identifier for the resource entry. Transient id relative to the bundle | MUST | 0..1 | urn:uuid:1cbdfb97-5859-48a4-8301-d54eab818d68 |
| Bundle.entry.resourceType | Resources detailed in the message definition. | MUST | 0..1 | MessageHeader,Patient, Encounter |
A resource that describes the BaRS message being exchanged between two systems.
> 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
SHOULD
0..*
MessageHeader.extension.url
This MUST be populated with 'https://fhir.nhs.uk/StructureDefinition/CDSSExtension' - FIXED VALUE
SHOULD
1..1
https://fhir.nhs.uk/StructureDefinition/CDSSExtension
MessageHeader.extension.extension
SHOULD
0..*
MessageHeader.extension.extension.url
This MUST be populated with the pre-defined Clinical Decision Support System software url - FIXED VALUE
SHOULD
1..1
RequesterCDSSSoftware
MessageHeader.extension.extension.valueString
This MUST be populated with the Clinical Decision Support System software name e.g. Pathways
SHOULD
0..1
Pathways
MessageHeader.extension.extension
SHOULD
0..*
MessageHeader.extension.extension.url
This MUST be populated with the pre-defined Clinical Decision Support System software Version url - FIXED VALUE
SHOULD
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
SHOULD
0..1
30.2.0
MessageHeader.eventcoding
MUST
1..1
MessageHeader.eventcoding.system
This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/message-events-bars' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/message-events-bars
MessageHeader.eventcoding.code
The status MUST be populated with 'servicerequest-request'. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-events-bars' - FIXED VALUE
MUST
0..1
servicerequest-request
MessageHeader.destination
MUST
0..1
MessageHeader.destination.receiver
MUST
0..1
MessageHeader.destination.receiver.reference
This MUST be populated with the full url to the Receiving Organisation resource.
MUST
0..1
urn:uuid:10397afd-479c-42ea-9d5d-e4024481e0f8
MessageHeader.destination.endpoint
This MUST be populated with the system and Service ID separated by a pipe. for example https://fhir.nhs.uk/id/dos-service-id\|11111111, this is to ensure the receiver knows the intended destination.
MUST
1..1
https://fhir.nhs.uk/id/dos-service-id|1122334455
MessageHeader.sender
MUST
0..1
MessageHeader.sender.reference
This MUST be populated. Follow BaRS profile guidance for populating this element
MUST
0..1
urn:uuid:07939a0c-2854-46ff-9282-ad906bc93679
MessageHeader.source
MUST
1..1
MessageHeader.source.name
This MUST be populated with the sending system supplier name
MUST
0..1
NHS Trust
MessageHeader.source.software
This SHOULD be populated with the sending software application name
SHOULD
0..1
Supplier Software
MessageHeader.source.version
This SHOULD be populated with the sending software version
SHOULD
0..1
V1.0.0
MessageHeader.source.contact
SHOULD
0..1
MessageHeader.source.contact.system
This SHOULD be populated with the Contact Type - phone | fax | email | pager | url | sms | other
SHOULD
0..1
phone
MessageHeader.source.contact.value
This SHOULD be populated with the Contact Type value
SHOULD
0..1
+44 (0123) 123 4567
MessageHeader.source.endpoint
This MUST be populated with the system and Service ID separated by a pipe. for example https://fhir.nhs.uk/id/dos-service-id\|11111111, this is to ensure the receiver knows where any response messages SHOULD be addressed.
MUST
1..1
https://fhir.nhs.uk/id/dos-service-id|5566778899
MessageHeader.reason
MUST
0..1
MessageHeader.reason.coding
MUST
0..1
MessageHeader.reason.coding.system
This MUST be populated with 'https://fhir.nhs.uk/CodeSystem/message-reason-bars' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/message-reason-bars
MessageHeader.reason.coding.code
This MUST be populated with '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
BaRS Referral Type
MUST
1..1
ServiceRequest.category.coding
MUST
0..*
ServiceRequest.category.coding.system
This MUST be populated with CodeSystem 'https://fhir.nhs.uk/CodeSystem/message-category-servicerequest' - FIXED VALUE
MUST
0..1
https://fhir.nhs.uk/CodeSystem/message-category-servicerequest
ServiceRequest.category.coding.code
This MUST be populated with Code 'referral'. See CodeSystem: 'https://fhir.nhs.uk/CodeSystem/message-category-servicerequest' - FIXED VALUE
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
A5T1
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
Primary Care to Community Pharmacy
ServiceRequest.subject
Follow BaRS profile guidance for populating this element
MUST
1..1
ServiceRequest.subject.reference
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.occurencePeriod
Timeframe within which pharmacy must manage the referral (Urgency)
MAY
0..1
ServiceRequest.occurencePeriod.start
The start of the period must be ‘now’.
MAY
0..1
2023-03-08T12:01:08.4677672+00:00
ServiceRequest.occurencePeriod.end
The overall time by which the referral should be dealt with by the pharmacy. An overall 'urgency' or Service Level Agreement (SLA) of the referral could be determined based on the start and end values. If Task(s) has a restriction.period the shortest end value will determine when the next action should occur.
MAY
0..1
2023-03-09T12: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.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.
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 Journey ID 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
MUST
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 this interaction the CarePlan resource is used to communicate triage outcome information and associated clinical information
> CarePlan
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
CarePlan
https://simplifier.net/hl7fhirukcorer4/ukcore-careplan
1..1
CarePlan.id
MUST only be generated by the Receiver as the id for the resource in the synchronous HTTP response.
MUST
0..1
236bb75d-90ef-461f-b71e-fde7f899802c
CarePlan.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
CarePlan.meta.profile
UKCore
MUST
1..1
https://fhir.hl7.org.uk/StructureDefinition/UKCore-CarePlan
CarePlan.meta.lastUpdated
All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent.
MUST
1..1
2023-03-08T12:01:08.4677672+00:00
CarePlan.status
This MUST be populated with the value ‘completed’
MUST
1..1
completed
CarePlan.intent
This MUST be populated with the value ‘plan’
MUST
1..1
plan
CarePlan.subject
MUST
1..1
CarePlan.subject.reference
This MUST be populated with a reference to the Patient
MUST
1..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 senders Encounter
MUST
1..1
urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4413
CarePlan.period
MUST
0..1
CarePlan.period.start
Disposition date/Time. This MUST be populated with the dateTime of the identification of the dispatch/disposition code.
MUST
0..1
2023-03-08T12:01:08.4677672+00:00
CarePlan.addresses
MUST
0..*
CarePlan.addresses.reference
This MUST reference a Condition resource. This identifies which 'presenting complaint or issue' (as defined in the Information model) precipitated the generation of the CarePlan
MUST
0..*
urn:uuid:8d12c664-0b6c-4e9b-8b70-10ccc81dbd89
CarePlan.activity
MUST
0..*
CarePlan.activity.outcomeCodeableConcept
SHOULD
0..*
CarePlan.activity.outcomeCodeableConcept.text
This SHOULD be populated with the clinical narrative.
If a triage assessment has been undertaken, using a CDSS, the Q&A output SHOULD be formatted and included as freetext in this element.SHOULD
0..1
Who is this query about constipation about?: An adult or child over 10 years old\n Do you have constipation and any of the following apply to you?: None of the above\n\n Symptoms: 2/7 hx constipation\n\n Self-care / medication already tried: None\n\n Patient concerns: Unable to pass stool dor 2/7; straining.\n
CarePlan.activity.reference
This MUST reference a Task resource which defines the requested instruction to the Receiver. The Sender may include multiple tasks, each under a new activity - see Task resource guidance for more detail.
MUST
0..1
CarePlan.activity.reference.reference
This MUST reference a Task resource indicating an instruction to the Receiver.
MUST
0..1
urn:uuid:6bd421cf-e43f-4470-b12d-b592f82c4bfe
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
It also includes contact information for third parties when required.
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
0..*
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.telecom.rank
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
1
Patient.contact.gender
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
male
Patient.Communication
SHOULD
0..*
Patient.Communication.Language
MUST
1..1
Patient.Communication.Language.coding
MUST
1..1
Patient.Communication.Language.coding.code
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
en
Patient.Communication.Language.coding.system
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
https://fhir.hl7.org.uk/CodeSystem/UKCore-HumanLanguage
Patient.Communication.Language.coding.display
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
English
Patient.Communication.Language.preferred
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
TRUE
Patient.extension
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
0..1
urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4411
This resource is used to communicate details about the problem or issue of the referral. > Condition
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Condition
https://simplifier.net/HL7FHIRUKCoreR4/UKCore-Condition
1..*
Condition.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
7aa5814d-d71f-4c9a-a956-03d89f25aae4
Condition.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Condition.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
Condition.meta.lastUpdated
All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent.
MUST
1..1
2023-03-08T12:01:08.4677672+00:00
Condition.clinicalStatus
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
active
Condition.verificationStatus
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
unconfirmed
Condition.category
The qualifier of the problem or issue necessitating the referral request
MUST
0..1
Condition.category.coding.system
This MUST be populated with CodeSystem - http://snomed.info/sct
MUST
0..1
http://snomed.info/sct
Condition.category.coding.code
This MUST be populated with the Code (SNOMED) of the class of problem or issue
MUST
0..1
33962009
Condition.category.coding.display
This MUST be populated with the human readable Display (SNOMED) of the class of problem or issue
MUST
0..1
Presenting complaint
Condition.code
The 'presenting complaint or issue' (as defined in the Information model) that precipitated the generation of the associated CarePlan
MUST
0..1
Condition.code.text
This MUST be populated with the freetext description of the problem or issue
MUST
0..1
Vomiting
Condition.subject
MUST
1..1
Condition.subject.reference
This MUST be populated with a reference to the Patient
MUST
1..1
urn:uuid:9589fb37-87a2-48d8-968f-b371429208a8
Condition.encounter
MUST
0..1
Condition.encounter.reference
This MUST be populated with a reference to the senders Encounter
MUST
0..1
urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4413
Condition.note
Follow UK Core guidance for populating this element
SHOULD NOT
0..1
This resource is used to communicate details about Task/s that the Sender is requesting of the Receiver.> Task
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Task
https://simplifier.net/HL7FHIRUKCoreR4/UKCore-Task
1..*
Task.id
This MUST only be populated with an id generated by the Receiver in the synchronous HTTP response.
MUST
0..1
a6450d17-cb7e-483b-8f71-b8201cfbcbd4
Task.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
Task.meta.profile
This MUST be populated. Follow UK Core guidance for populating this element
MUST
1..1
Task.meta.lastUpdated
All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent.
MUST
1..1
2023-03-08T12:01:08.4677672+00:00
Task.status
This MUST be populated with 'requested' - Fixed Value
MUST
1..1
requested
Task.intent
This MUST be populated with 'order' - Fixed Value
MUST
1..1
order
Task.code
This MUST be populated with the action (by the specific Pharmacy Service (Referral Type)) the Sender is requesting of the Receiver. If multiple actions (which are to occur within different timeframes) are to be requested these would be represented in independent Task resources.
MUST
0..1
Task.code.coding.system
This MUST be populated with CodeSystem - http://snomed.info/sct
MUST
0..1
http://snomed.info/sct
Task.code.coding.code
This MUST be populated with the Code (SNOMED) of action by the Pharmacy Service
MUST
0..1
2140231000000104
Task.code.coding.display
This MUST be populated with the human readable Display (SNOMED) of action by the Pharmacy Service
MUST
0..1
Referral to Community Pharmacy Pharmacy First Service (procedure)
Task.description
This SHOULD be populated with a human readable summary of the intended instruction of the Task, combining the key elements e.g. Task.code and Task.restriction.period
SHOULD
0..1
'Patient will contact pharmacy service. If, upon receipt, the pharmacist has concerns over the patient's condition they should contact the patient.'
Task.focus
0..1
Task.focus.reference
Used for New Medicines Service to indicate the MedicationStatement to provide guidance on
MUST
0..1
urn:uuid:8c63d621-4d86-4f57-8699-e8e22d49935d
Task.encounter
SHOULD
0..1
Task.encounter.reference
This MUST be populated with a reference to the senders Encounter
SHOULD
0..1
urn:uuid:b83d13e2-8c2e-422c-88ac-63b8e86a4413
Task.authoredOn
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
2023-03-08T12:15:08+00:00
Task.restriction.period
This SHOULD be populated to indicate when time sensitive requests to be undertaken
SHOULD
0..1
Task.restriction.period.start
This SHOULD be populated with the start of time sensitive requests for a task to be undertaken
SHOULD
0..1
2023-03-08T12:45:08+00:00
Task.restriction.period.end
This SHOULD be populate with the latest time the task can be completed within
SHOULD
0..1
2023-03-08T13:15:08+00:00
This resource is used to communicate details about the sender and receiver organisations.
> Organization
Data Item
Implementation Guidance
Necessity
Profile Cardinality
Example Value(s)
Organisation
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 SHOULD be populated with an organisation identifier e.g. ODS code
SHOULD
0..*
Organization.identifier.system
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
https://fhir.nhs.uk/id/ods-organization-code
Organization.identifier.value
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
ABD01
Organization.type
This is important to add type for the Sending organisation and has an explicit requirement to include. If it is available for the Receiving organisation is should be included.
SHOULD
0..*
Organization.type.coding.system
This MUST be populated to indicate the system value, using SNOMED ReferenceSet 1127531000000102
MUST
0..1
http://snomed.info/sct
Organization.type.coding.value
This MUST be populated with the Value of the selected code of the organisation type.
MUST
0..1
788007007
Organization.type.coding.display
This MUST be populated with the Display of the selected code of the organisation type.
MUST
0..1
General practice service (qualifier value)
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 SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..*
Practitioner.identifier.system
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
0..1
https://fhir.nhs.uk/Id/sds-role-profile-id
Practitioner.identifier.value
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
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
SHOULD
0..1
PractitionerRole.practitioner.reference
This SHOULD be populated but MUST be populated for the Practitoner resource linked to serviceRequest.performer.
SHOULD
0..1
urn:uuid:7d948662-bade-450e-b6c5-9bb6ee39cb56
PractitionerRole.Organisation
SHOULD
0..1
PractitionerRole.Organisation.reference
This SHOULD be populated where the Organisation is known. Follow UK Core guidance for populating this element
SHOULD
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
PractitionerRole.healthcareService
SHOULD
0..*
PractitionerRole.healthcareService.reference
This SHOULD be populated where the Organisation of the ServiceRequest.performer is not known.
SHOULD
0..*
urn:uuid:6f3cc6930da34578812ca36de01268f9
The Flag resource is used to 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://simplifier.net/hl7fhirukcorer4/ukcore-flag
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
This MUST be used to indicate the 'type' of Flag e.g. Safeguarding Concern etc.
MUST
0..*
Flag.category.coding
This MUST be populated with the overarching Flag Category: e.g. Safeguarding or Reasonable Adjustment 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 MAY be used to carry new medication prescribed at the encounter. This SHOULD NOT be used to carry Medication History obtained from external sources.
> MedicationStatement
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
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
This resource can be used to communicate measurements and simple assertions made about a patient.
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.category
This SHOULD be used to indicate the classification of Observation.
SHOULD
0..*
Observation.category.coding
This SHOULD be populated with the overarching Observation from CodeSystem 'http://terminology.hl7.org/CodeSystem/observation-category'
SHOULD
1..1
Observation.category.coding.system
This SHOULD be populated with 'http://terminology.hl7.org/CodeSystem/observation-category' - FIXED VALUE
SHOULD
0..1
http://terminology.hl7.org/CodeSystem/observation-category
Observation.category.coding.code
This SHOULD be populated with the Code of the Observation. See CodeSystem http://terminology.hl7.org/CodeSystem/observation-category
SHOULD
0..1
vital-signs
Observation.code
This MUST be populated indicating the type of Observation, preferrably coded.
MUST
1..1
Observation.code.coding
This SHOULD be populated with the coded value of the type of Observation
SHOULD
0..1
Observation.code.coding.system
This SHOULD be populated with the code system of the type of Observation
SHOULD
0..1
http://snomed.info/sct
Observation.code.coding.code
This SHOULD be populated with the code of the type of Observation
SHOULD
0..1
75367002
Observation.code.coding.display
This SHOULD be populated with the code display of the type of Observation
SHOULD
0..1
Blood pressure (observable entity)
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
SHOULD
0..1
Observation.encounter.reference
This SHOULD be populated. Follow UK Core guidance for populating this element
SHOULD
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.valueQuantity
This MAY be populated to indicate the result of the Observation, such as BMI. NB - Blood pressure MUST be represented under Observation.component, as described below.
MAY
0..1
Observation.valueQuantity.value
This MAY be populated to indicate the result value of the Observation
MAY
0..1
46
Observation.valueQuantity.unit
This MAY be populated to indicate the result unit of the Observation
MAY
0..1
kilogram / (meter ^ 2)
Observation.valueQuantity.system
This MAY be populated to indicate the result system of the Observation
MAY
0..1
http://unitsofmeasure.org
Observation.valueQuantity.code
This MAY be populated to indicate the result code of the Observation
MAY
0..1
kg/m2
Observation.note
Follow UK Core guidance for populating this element
SHOULD NOT
0..*
Observation.component
The element details the results of an observation and is explicitly used for Blood Pressure in the current use-cases.
MAY
Observation.component.code
This MAY be populated to indicate the type of result in coded form
MAY
1..1
Observation.component.code.coding
This MAY be populated to indicate the code of the type of result
MAY
0..1
Observation.component.code.coding.system
This MAY be populated to indicate the code system of the result
MAY
0..1
http://snomed.info/sct
Observation.component.code.coding.code
This MAY be populated to indicate the code of the result
MAY
0..1
271649006
Observation.component.code.coding.display
This MAY be populated to indicate the code display of the result
MAY
0..1
Systolic blood pressure
Observation.component.text
This MAY be populated to indicate the text of the result
MAY
0..1
Systolic blood pressure
Observation.component.valueQuantity
This MAY be populated to indicate the Blood pressure result of the Observation. For other observation results, such as BMI, use Observation.value[x], as described above.
MAY
0..1
Observation.component.valueQuantity.value
This MAY be populated to indicate the result value of the Observation
MAY
0..1
120
Observation.component.valueQuantity.unit
This MAY be populated to indicate the result unit of the Observation
MAY
0..1
millimeter of mercury
Observation.component.valueQuantity.system
This MAY be populated to indicate the result system of the Observation
MAY
0..1
http://unitsofmeasure.org
Observation.component.valueQuantity.code
This MAY be populated to indicate the result code of the Observation
MAY
0..1
mm[Hg]
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
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
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
0..1
93d0ff33-ce84-42fd-b98c-f326e55283e0
HealthcareService.meta
https://www.hl7.org/fhir/resource.html#Meta
MUST
1..1
HealthcareService.meta.profile
MUST
1..1
HealthcareService.meta.lastUpdated
All resources MUST include 'lastUpdated' value, under meta section which must be the same timestamp for each resource when created from new, but must be a later timestamp on updates, if the content of a particular resource contains updated info for subsequent updates. Otherwise, maintain the timestamp originally sent.
MUST
1..1
2023-03-08T12:01:08.4677672+00:00
HealthcareService.identifier
This MUST be populated, indicating the external identifier of the Receiving HealthcareService
MUST
0..*
The Healthcare Service Identifier will be represented by a UEC DoS Service Identifier
HealthcareService.identifier.system
This MUST be populated with the System of the Receiving HealthcareService identifier
MUST
0..1
https://fhir.nhs.uk/Id/dos-service-id
HealthcareService.identifier.value
This MUST be populated with the Value of the Receiving HealthcareService identifier
MUST
0..1
ABD01
HealthcareService.active
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
TRUE
HealthcareService.providedBy
SHOULD
0..1
HealthcareService.providedBy.reference
Link to the Organisation the request is being made of . This will commonly link to the MH.destination
SHOULD
0..1
urn:uuid:d5ffd0cd-ec7e-48a1-84f1-91f4c0eb8fc5
HealthcareService.name
This MUST be populated. Follow UK Core guidance for populating this element
MUST
0..1
Consulting psychologists and/or psychology services
Entity Relationship Diagrams
Entity maps detail the relationship of the resources and elements within resources in the payloads.
The below diagram details the ServiceRequest - Referral Request - GP to Pharmacy
The below diagram details a focus on the payload on GP to Pharmacy fields to drive priority and filtering.