HL7 UK - UK Core Access
0.1.0 - ci-build
HL7 UK - UK Core Access, published by HL7 UK. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7-UK/UK-Core-Access/ and changes regularly. See the Directory of published versions
A Clinical Data Provider SHALL support the capabilities interaction so that
a Consumer can retrieve a CapabilityStatement resource of type
instance
that specifies which resource types and interactions are supported by the FHIR endpoint:
GET [base]/metadata
The CapabilityStatement SHALL be conformant with this implementation guide and SHOULD state that the FHIR endpoint instantiates the UK Core Access Clinical Data capabilities. The Provider MAY provide further capabilities at this FHIR endpoint, in addition to those required by a Clinical Data Provider.
A Clinical Data Provider SHALL support the search interaction on the Patient resource so that a Consumer can retrieve a set of Patient resources matching the search criteria and conforming to the UK Core Patient profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | identifier | token | A patient identifier |
See Patient _id from Patient Index for details.
See Patient identifier from Patient Index for details.
Where the underlying system can reliably provide the information, a Clinical Data Provider SHOULD support the search interaction on the AllergyIntolerance resource so that a Consumer can retrieve a set of AllergyIntolerance resources matching the search criteria and conforming to the UK Core AllergyIntolerance profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | patient | reference | Who the sensitivity is for |
SHALL | clinical-status | token | active, inactive or resolved |
SHOULD | date | date | Date first version of the resource instance was recorded |
SHOULD | last-date | date | Date(/time) of last known occurrence of a reaction |
A Clinical Data Provider supports at least the following search parameter combinations:
Conformance | Parameters | Example |
---|---|---|
SHOULD | patient+date | GET [base]/AllergyIntolerance?patient=[id]&date=[date] |
SHOULD | patient+last-date | GET [base]/AllergyIntolerance?patient=[id]&last-date=[date] |
SHOULD | patient+clinical-status | GET [base]/AllergyIntolerance?patient=[id]&clinical-status=[status] |
The Provider SHOULD support search by the logical identifier of the AllergyIntolerance resource:
GET [base]/AllergyIntolerance?_id=[id]
The Provider SHALL support search by patient:
GET [base]/AllergyIntolerance?patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/AllergyIntolerance?patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing AllergyIntolerance resources that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by clinical status:
GET [base]/AllergyIntolerance?clinical-status=[status]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/AllergyIntolerance?clinical-status=active&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing AllergyIntolerance resources with clinicalStatus active
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHOULD support search by recorded date:
GET [base]/AllergyIntolerance?date=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/AllergyIntolerance?date=ge2018-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing AllergyIntolerance resources recorded on or after 2018-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.
The Provider SHOULD support search by last occurrence:
GET [base]/AllergyIntolerance?last-date=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/AllergyIntolerance?last-date=ge2018-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing AllergyIntolerance resources last occurring on or after 2018-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.
Where the underlying system can reliably provide the information, a Clinical Data Provider SHOULD support the search interaction on the Immunization resource so that a Consumer can retrieve a set of Immunization resources matching the search criteria and conforming to the UK Core Immunization profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | patient | reference | The patient for the vaccination record |
SHALL | status | token | completed, entered-in-error, or not-done |
SHOULD | date | date | Vaccination (non)-Administration Date |
A Clinical Data Provider supports at least the following search parameter combinations:
Conformance | Parameters | Example |
---|---|---|
SHOULD | patient+date | GET [base]/Immunization?patient=[id]&date=[date] |
SHOULD | patient+status | GET [base]/Immunization?patient=[id]&status=[status] |
The Provider SHOULD support search by the logical identifier of the Immunization resource:
GET [base]/Immunization?_id=[id]
The Provider SHALL support search by patient:
GET [base]/Immunization?patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/Immunization?patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing Immunization resources that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by status:
GET [base]/Immunization?status=[status]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/Immunization?status=completed&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing Immunization resources that are completed and reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHOULD support search by administration date:
GET [base]/Immunization?date=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/Immunization?date=ge2018-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing Immunization resources administered on or after 2018-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.
Where the underlying system can reliably provide the information, a Clinical Data Provider SHOULD support the search interaction on the MedicationAdministration resource so that a Consumer can retrieve a set of MedicationAdministration resources matching the search criteria and conforming to the UK Core MedicationAdministration profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | patient | reference | The identity of a patient to list administrations for |
SHALL | status | token | MedicationAdministration event status (for example one of active/paused/completed/nullified) |
SHALL | effective-time | date | Date administration happened (or did not happen) |
A Clinical Data Provider supports at least the following search parameter combinations:
Conformance | Parameters | Example |
---|---|---|
SHOULD | patient+status | GET [base]/MedicationAdministration?patient=[id]&status=[status] |
SHOULD | patient+effective-time | GET [base]/MedicationAdministration?patient=[id]&effective-time=[date] |
The Provider SHOULD support search by the logical identifier of the MedicationAdministration resource:
GET [base]/MedicationAdministration?_id=[id]
The Provider SHALL support search by patient:
GET [base]/MedicationAdministration?patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationAdministration?patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationAdministration resources that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by status:
GET [base]/MedicationAdministration?status=[status]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationAdministration?status=completed&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationAdministration resources that are completed and reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by effective date and time:
GET [base]/MedicationAdministration?effective-time=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationAdministration?effective-time=ge2018-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationAdministration resources effective on or after 2018-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.
Where the underlying system can reliably provide the information, a Clinical Data Provider SHOULD support the search interaction on the MedicationDispense resource so that a Consumer can retrieve a set of MedicationDispense resources matching the search criteria and conforming to the UK Core MedicationDispense profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | patient | reference | The identity of a patient to list dispenses for |
SHALL | status | token | Returns dispenses with a specified dispense status |
SHOULD | whenprepared | date | Returns dispenses prepared on this date |
A Clinical Data Provider supports at least the following search parameter combinations:
Conformance | Parameters | Example |
---|---|---|
SHOULD | patient+status | GET [base]/MedicationDispense?patient=[id]&status=[status] |
SHOULD | patient+whenprepared | GET [base]/MedicationDispense?patient=[id]&whenprepared=[date] |
The Provider SHOULD support search by the logical identifier of the MedicationDispense resource:
GET [base]/MedicationDispense?_id=[id]
The Provider SHALL support search by patient:
GET [base]/MedicationDispense?patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationDispense?patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationDispense resources that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by status:
GET [base]/MedicationDispense?status=[status]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationDispense?status=completed&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationDispense resources that are completed and reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHOULD support search by date of preparation:
GET [base]/MedicationDispense?whenprepared=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationDispense?whenprepared=ge2022-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationDispense resources prepared on or after 2022-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.
Where the underlying system can reliably provide the information, a Clinical Data Provider SHOULD support the search interaction on the MedicationRequest resource so that a Consumer can retrieve a set of MedicationRequest resources matching the search criteria and conforming to the UK Core MedicationRequest profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | patient | reference | Returns prescriptions for a specific patient |
SHALL | status | token | Status of the prescription |
SHOULD | authoredon | date | Return prescriptions written on this date |
A Clinical Data Provider supports at least the following search parameter combinations:
Conformance | Parameters | Example |
---|---|---|
SHOULD | patient+status | GET [base]/MedicationRequest?patient=[id]&status=[status] |
SHOULD | patient+authoredon | GET [base]/MedicationRequest?patient=[id]&authoredon=[date] |
The Provider SHOULD support search by the logical identifier of the MedicationRequest resource:
GET [base]/MedicationRequest?_id=[id]
The Provider SHALL support search by patient:
GET [base]/MedicationRequest?patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationRequest?patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationRequest resources that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by status:
GET [base]/MedicationRequest?status=[status]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationRequest?status=completed&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationRequest resources that are completed and reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHOULD support search by date on which the request was authored:
GET [base]/MedicationRequest?authoredon=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationRequest?authoredon=ge2022-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationRequest resources authored on or after 2022-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.
Where the underlying system can reliably provide the information, a Clinical Data Provider SHOULD support the search interaction on the MedicationStatement resource so that a Consumer can retrieve a set of MedicationStatement resources matching the search criteria and conforming to the UK Core MedicationStatement profile.
A Clinical Data Provider supports at least the following search parameters:
Conformance | Parameter | Type | Description |
---|---|---|---|
SHOULD | _id | token | |
SHALL | patient | reference | Returns statements for a specific patient. |
SHALL | status | token | Return statements that match the given status |
SHOULD | effective | date | Date when patient was taking (or not taking) the medication |
A Clinical Data Provider supports at least the following search parameter combinations:
Conformance | Parameters | Example |
---|---|---|
SHOULD | patient+status | GET [base]/MedicationStatement?patient=[id]&status=[status] |
SHOULD | patient+effective | GET [base]/MedicationStatement?patient=[id]&effective=[date] |
The Provider SHOULD support search by the logical identifier of the MedicationStatement resource:
GET [base]/MedicationStatement?_id=[id]
The Provider SHALL support search by patient:
GET [base]/MedicationStatement?patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationStatement?patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationStatement resources that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHALL support search by status:
GET [base]/MedicationStatement?status=[status]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationStatement?status=completed&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationStatement resources that are completed and reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
The Provider SHOULD support search by effective date:
GET [base]/MedicationStatement?effective=[date]&patient=[id]
For example, when a Consumer sends the request GET https://fhir.example-provider.nhs.uk/MedicationStatement?effective=ge2018-01-01&patient=b88f0099-5213-4502-a49d-cc3887027bdd
the Provider would respond with a Bundle containing MedicationStatement resources effective on or after 2018-01-01
that reference patient b88f0099-5213-4502-a49d-cc3887027bdd
.
Where a Provider supports search by date, the Provider SHOULD support partial dates, the eq
, ge
, le
operators and
multiple date parameters. See Patient Index birthdate for details.