Patient Registration
This proposed process is based on
- FHIR Workflow also known as action lists, worklists, task list in GP Systems.
- FHIR Structured Data Capture also known as templates in GP Systems
- NHS England UKCore Hackathon This contains a walkthrough of structured data capture.
- UK Gov Family Services Registration
It is an high level overview which can be extended to other processes/pathways.
1. Patient Registration Form Definition
The patient registers on the Virtually Healthcare application using a screen based on a potentially commonly defined form.
An example of the form being rendered is shown below (this is not how this would look in the Virtually Healthcare application). This form is a based on the standard GMS1 form and as HL7 FHIR it's (incomplete) definition can be found here Patient Registration. This form definition is held in a FHIR Questionnaire
2. Capture Patient Registration Data
To view this form and see a demonstration of this in use, use this link US National Laboratory of Medicine SDC Questionnaire App
On completion, this generates a FHIR QuestionnaireResponse which can be shared with a GP Supplier (this can be generated from the demonstration app).
{ "resourceType": "QuestionnaireResponse", "id": "f74260fc-f1cf-4725-a815-195ca7f16c41", "meta": { "versionId": "1", "lastUpdated": "2023-05-06T06:00:06.832Z", "profile": [ "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaireresponse|2.7" ], "tag": [ { "code": "lformsVersion: 33.3.2" } ] }, "questionnaire": "Questionnaire/989e8073-6fea-4678-b788-a4c1f46b64be", "status": "completed", "subject": { "reference": "Patient/e750ae05-8b7f-4537-b138-a857d3124ecf", "display": "Emily Smith" }, "authored": "2023-05-06T06:00:05.719Z", "item": [ { "linkId": "prefix", "text": "Title", "answer": [ { "valueString": "Mr" } ] }, { "linkId": "forename", "text": "First Name", "answer": [ { "valueString": "Horatio" } ] }, { "linkId": "surname", "text": "Last name", "answer": [ { "valueString": "Smith" } ] }, { "linkId": "date_of_birth", "text": "Date of Birth", "answer": [ { "valueDate": "2020-05-29" } ] }, { "linkId": "nhs_number", "text": "NHS Number (if known)", "answer": [ { "valueString": "9876543210" } ] }, { "linkId": "previous_postcode", "text": "Your postcode used when you last registered with a UK GP", "answer": [ { "valueString": "NG10 1NP" } ] }, { "linkId": "current_address", "text": "Your current address", "answer": [ { "valueString": "Janet Brown Avenue, Austhorpe, Leeds" } ] }, { "linkId": "contact_group", "text": "Contact Preference", "item": [ { "linkId": "contact_type", "text": "Contact Type", "answer": [ { "valueCoding": { "system": "http://hl7.org/fhir/contact-point-system", "code": "email", "display": "Email" } } ] }, { "linkId": "contact_value", "text": "Contact Number or email", "answer": [ { "valueString": "horatio.smith@example.org" } ] } ] }, { "linkId": "gender_birth", "text": "Gender assigned at Birth", "answer": [ { "valueCoding": { "system": "http://hl7.org/fhir/administrative-gender", "code": "male", "display": "Male" } } ] }, { "linkId": "ethnic", "text": "Ethnic Category", "answer": [ { "valueCoding": { "system": "https://fhir.hl7.org.uk/CodeSystem/UKCore-EthnicCategoryEngland", "code": "A", "display": "White - British" } } ] }, { "linkId": "armed_forces", "text": "Have you ever been a member of the UK Armed Forces or are a family member registered with the Defence Medical Services?", "answer": [ { "valueBoolean": true } ] } ] }
3. Ask for the registration form to be actioned.
This is a FHIR Task sent to the GP system which requests the patient is registered using data captured in step 2.
{ "intent": "order", "identifier": [ { "system": "https://tools.ietf.org/html/rfc4122", "value": "249d7c3b-0fda-40d1-b89b-996022e7c632" } ], "resourceType": "Task", "status": "requested", "code": { "coding": [ { "system": "http://snomed.info/sct", "code": "184047000", "display": "Patient registration" } ] }, "owner": { "reference": "Organization/78369bce-1c10-40e7-af64-38bd654ccabf", "display": "Archway Medical Centre", "identifier": { "system": "https://fhir.nhs.uk/Id/ods-organization-code", "value": "F83004" } }, "priority": "routine", "for": { "reference": "Patient/e750ae05-8b7f-4537-b138-a857d3124ecf", "identifier": { "system": "https://fhir.nhs.uk/Id/nhs-number", "value": "9876543210" } }, "description": "Please register this patient", "focus": { "reference": "QuestionnaireResponse/58aa3751-f324-4d89-9fb9-cd8b6e5ac781", "display": "Patient Registration", "type": "QuestionnaireResponse" }, "lastModified": "2023-05-06T06:18:29.627Z", "authoredOn": "2023-05-06T06:18:29.627Z" }
4. Action completed (or failed)
Ideally the GP system would send updates back using a similar structure the FHIR Task in step 3.
The main difference is the use of status
to indicate progress and would roughly be:
requested
in the request from Virtualy to GP Systemsin-progess
in the initial reply back from the requestcompleted
once the patient is registered probably with a link to the Patient registration (id of the patient?)
The statuses of error
and rejected
would be used to communicate issues.