The Update Existing Patient
enforces updates to a particular version.
https://digital.nhs.uk/developer/api-catalogue/genomic-order-management-service-fhir#put-/FHIR/R4/Patient/-id-
1st question - why is this needed. If I’m updating the Patient resource I will normally have a new version. I don’t understand why I need to update a version. I’m considering feeding patient events (A31/40) from across the region to this endpoint (for patients with an active order)
2nd question - is more of an issue. The http header
The client library we are using from intersystems, strips out this header as it contains a -
. Could you consider renaming this to ifMatch
which would match the element used in the FHIR Transaction (as used by Process genomic test request
)
Hi Kevin,
As ordering or fulfilment of a request is potentially spread across multiple organisations, we have introduced the if-Match header to ensure the system updating the resource has sight of the latest version available on the broker.
The client demonstrates this by providing the if-Match header, which the broker checks is the same as the latest version. If a prior version is provided in if-Match, the update will be rejected to ensure a system does not unintentionally overwrite updates from another organisation.
As an example of where this is required, when GEL receive a test order, they update the Patient resource with their internal ‘p number’ identifier for tracking the resource internally. If the requester later updates the Patient resource with new demographic information, this could potentially overwrite the information added by GEL, unless the requester is forced to first ensure they have inspected the latest version.
Regarding the HTTP header including a hyphen, this is the header indicated within the FHIR spec: Http - FHIR v4.0.1. If this is an issue, you can use the ‘process genomic test request’ endpoint to wrap the Patient resource in a Transaction bundle and submit the ifMatch element within the body of the message.
Hope that helps,
Omar
Thanks, had already swapped to using transaction.
I’ll probably need to come back to you on this. Most trusts in our region have established event based patterns around Patient.
It’s likely our preference would be that NHS England take on this business logic and accept event feeds such as ADT A31/40 (also IHE PIX) or IHE PIXm (2:3:104 Patient Identity Feed FHIR [ITI-104] - Patient Identifier Cross-referencing for mobile (PIXm) v3.0.4).
Just FYI, we’ll only be expecting demographics where patients are not registered on PDS and don’t have NHS numbers, e.g. in the case of overseas patients.
For any patients with an NHS number, we’d expect you to update details on PDS if needed, and only send identifiers and extensions on the Patient resource which are not recorded in PDS.
I’ll need some time to build up the use case but in short I expect to see other home nation patients. These will:
- Initially have MRN but eventually English NHS Number when the patient registration process completes.
- Just have MRN and other nation id.
Plus we also have patient misidentified use cases with patients allocated wrong NHS Number (number of reasons for this)
1 Like