Introduction
The headings below list the elements of the ReferralRequest resource and describe how to populate and consume them.
ReferralRequest elements
id
Data type: Id |
Optionality: Mandatory | Cardinality: 1..1 |
The logical identifier of the ReferralRequest resource.
meta.profile
Data type: uri |
Optionality: Mandatory | Cardinality: 1..1 |
The ReferralRequest profile URL.
Fixed value https://fhir.nhs.uk/STU3/StructureDefinition/CareConnect-GPC-ReferralRequest-1
identifier
Data type: Identifier |
Optionality: Mandatory | Cardinality: 1..* |
This MUST be populated with a globally unique and persistent identifier (that is, it doesn’t change between requests and therefore stored with the source data). This MUST be scoped by a provider specific namespace for the identifier.
Where consuming systems are integrating data from this resource to their local system, they MUST also persist this identifier at the same time.
If the referral was made via the e-Referral Service and a Unique Booking Reference Number (UBRN) exists for the referral, then it MUST be included as an identifier.
The system identifier for this is https://fhir.nhs.uk/Id/UBRN
.
basedOn
Data type: Reference(CarePlan, ProcedureRequest, ReferralRequest) |
Optionality: Optional | Cardinality: 0..* |
Indicates any plans or prior referrals that this referral is intended to fulfill.
status
Data type: Code |
Optionality: Mandatory | Cardinality: 1..1 |
A default value of unknown
SHOULD be used for open or complete referrals as generally the status of referrals is not consistently maintained in a GP patient record.
A status of cancelled
MAY be used where the GP System has directly cancelled a referral, for example cancelled via eRS.
Referrals entered in error
MUST NOT be included.
intent
Data type: Code |
Optionality: Mandatory | Cardinality: 1..1 |
Fixed value of order
.
priority
Data type: Code |
Optionality: Required | Cardinality: 0..1 |
A mapping is applied to the priority codes to align it to the e-Referral Service priority types.
This MUST be populated where the source system has a referral priority which matches the e-Referral Service priority codes or can be mapped to those priority codes.
If there is a priority code for the referral but it is incompatible with the e-Referral Service priorities, this element MUST be excluded and the priority MUST be supplied in the note
element.
serviceRequested
Data type: CodeableConcept |
Optionality: Optional | Cardinality: 0..* |
This MUST NOT be populated with the source system’s main code for the referral, which MUST be returned in the reasonCode
element.
This MAY be populated if the GP clinical system also holds a distinct entry for the type of service requested.
subject
Data type: Reference(Patient) |
Optionality: Mandatory | Cardinality: 1..1 |
A reference to the patient who is the subject of the referral.
context
Data type: Reference(Encounter) |
Optionality: Required | Cardinality: 0..1 |
The Consultation
within which the referral was recorded.
authoredOn
Data type: dateTime |
Optionality: Required | Cardinality: 0..1 |
The main date for the referral as entered by the end user in accordance with the date of referral guidance.
requester
Data type: BackboneElement |
Optionality: Required | Cardinality: 0..1 |
The details of the person, practitioner or organisation responsible for the decision to refer the patient or, if is not attributed specifically, then populate with the recorder.
requester.agent
Data type: Reference(Device, Organization, Patient, RelatedPerson, Practitioner) |
Optionality: Mandatory | Cardinality: 1..1 |
The preferred agent is the practitioner responsible for the decision to refer the patient. If the referral is not attributed to a practitioner, then any of the other resource options MAY be used as most appropriate. If the referral does not clearly identify responsibility for the referral decision or action, this MUST be the user who recorded the referral.
requester.onBehalfOf
Data type: Reference(Organization) |
Optionality: Required | Cardinality: 0..1 |
This MUST be populated if the requester.agent
is a practitioner and the Organization
associated with the referenced Practitioner
is not the GP practice responsible for the referral.
This element SHOULD be absent if the requester.agent
is not a practitioner.
This element MAY be populated or absent where the GP practice responsible for the referral is the same organisation as associated with requester.agent
practitioner via the practitioner role.
specialty
Data type: CodeableConcept |
Optionality: Optional | Cardinality: 0..1 |
This MUST NOT be populated with the source system’s main code for the referral, which MUST be returned in the reasonCode
element.
This MAY be populated if the GP clinical system holds a distinct entry for the clinical or practitioner specialty requested by the referral.
recipient
Data type: Reference(HealthcareService, Organization, Practitioner) |
Optionality: Required | Cardinality: 0..* |
This MUST be populated with the practitioner and/or organisation the patient has been referred to, if that is recorded in a suitable coded format.
If the referral recipient details are in a form which cannot be returned as a referenced resource, the details MUST be populated to the note
as key value pairs.
reasonCode
Data type: CodeableConcept | Optionality: Required | Cardinality: 0..* |
This MUST be populated with the source system’s main coded entry for the referral. Additional, coded or text entries which are clearly captured as reasons for referral MAY be included.
description
Data type: string |
Optionality: Required | Cardinality: 0..1 |
The free text description associated with the referral.
supportingInfo
Data type: Reference(Any) |
Optionality: Required | Cardinality: 0..* |
Reference to the referral letter(s) and any other supporting documents or resources which are not covered by other more specific elements, for instance this could include reference to linked observations or test results.
This does not apply to a linked problem.
The problem MUST be included in the bundle and reference to the referralRequest
.
The referralRequest
MUST NOT reference to the problem.
note
Data type: Annotation |
Optionality: Required | Cardinality: 0..* |
Any additional information recorded against the referral which is not accommodated by other elements. This could include additional categorisation of the referral or notes recorded against the referral after it has been made such as details of progress or outcomes.
Elements not in use
The following elements MUST NOT be populated:
definition
Data type: Reference(ActivityDefinition, PlanDefinition) |
This is not required by GP Connect.
replaces
Data type: Reference(ReferralRequest) |
Terminated referrals are not in scope so cannot be referenced. Any association to a prior, completed referral can be made via the basedOn element.
groupIdentifier
Data type: Identifier |
This is not required by GP Connect.
type
Data type: CodeableConcept |
This element has not been defined for GP Connect use.
The reasonCode
element MUST be used for the SNOMED CT coded referral code.
occurrence
Data type: dateTime, Period |
reasonReference
Data type: Reference(ProblemHeader-Condition) |
A referral may have a linked problem which represents the reason for the referral.
This is required information where it exists, but the problem MUST be included and reference to the referralRequest
.
The referralRequest
MUST NOT reference to the problem.
relevantHistory
Data type: Reference(Provenance) |