Stream: implementers
Topic: FHIR and deleted Objects
Allan Bro Hansen (Jan 17 2017 at 12:55):
Hi
In the real world a user likes to be able to delete objects; the scenario typically being "Ups, I did create this in error" (E.g. registering an observation on a wrong patient).
In general I have experienced the following two very different approaches to support this:
1) deleted is treated as a status of a object. A deleted object will stilled by retrived by a "getById"-service. However the deleted object cannot be updated. Such a deletion can be communicated as a update-message ("just a change of status").
This is basically the approach taking by HL7 version 3 (all Acts can become nullified).
2) deleted is treated as a special state of the object (like putting it in the dustbin). A deleted object will normally not be retrived by a verison-unaware "getById"-service and as a web service such a service would return a 404-status code. The object-model itself may not know it is deleted. Deletion is communicated as special delete message.
In FHIR it seems that we do not have a generic "nullified" status, which leads towards appproach 2 (or some other aproach)?
Do we have some agreed approah to handling deleted objects in FHIR - or should the approach be dependent on the business case?
Grahame Grieve (Jan 17 2017 at 12:57):
see here:
Grahame Grieve (Jan 17 2017 at 12:58):
http://build.fhir.org/lifecycle.html#error
Grahame Grieve (Jan 17 2017 at 13:00):
there's a reason why it's not all the same, but typically, there is high coherence within general areas (infrastructure, administration, clinical). We are driving for more consistency in this area, but there is much contention about the principles
Allan Bro Hansen (Jan 17 2017 at 13:01):
thx, that's quite new, isn't it? I haven't seen "entered-in-error" as an appointment status before.
Grahame Grieve (Jan 17 2017 at 13:04):
yes, that's something that we've been driving the committees to deal with
Allan Bro Hansen (Jan 17 2017 at 13:10):
very nice :-)
John Moehrke (Jan 17 2017 at 14:43):
Also look at the various policy driven ways to say that something doesn't exist. Often the policy is security, but it can also be data retention policy... http://build.fhir.org/security.html#AccessDenied
Brian Postlethwaite (Jan 20 2017 at 22:32):
yes, the appointment was updated to include the entered-in-error status. (or could just DELETE it if the internal server's business rules permitted it)
John Moehrke (Jan 21 2017 at 20:08):
Or both... First Update the status, then Delete... and record an AuditEntry
Brian Postlethwaite (Jan 23 2017 at 03:03):
(yes to the please record an AuditEntry!)
Last updated: Apr 12 2022 at 19:14 UTC