SFM Basis API Implementation Guide

Resources

The resources Organization, Practitioner and Person (used for adminstrative users) are persistent in time and may be operated with limited FHIR CRUD scheme. When an operation is not implemented for a resource, the SFM API will return 501 Not Implemented. (e.g. when delete is not allowed)

Since API basis does not persist all resources over time, and since all resources are not available as individual resources in a REST scheme, some rules for handling resources are introduced here.

Resources are created as new resources on new lookup from the national systems RF and KJ. This implies that in subsequent lookups the ID presented in a resource may be different even though the source is equal. In particular, the sfm-MedicationStatement genereated from a particular M1 Prescription in RF will/may be new for each lookup, with possibly new ID and new metadata

The Definitions of the Base Resource and the metadata: HL7 FHIR R4 Base Resouce definition

For all resources generated for the sfm-MedicationBundle delivered by SFM:

id will be generated when relevant and temporarily stored by SFM.

versionId will be generated and temporarily stored by SFM. May be the same for all resources in a bundle

lastUpdated is set to the current time.

source will be set to a URL identifying the SFM server instance. If a modified resource is returned to SFM in subsequent write operation representing the same object, the ID shall be unchanged and the versionId shall be changed or deleted. lastUpdated shall represent the timestamp for the change.

Unchanged resources returned (e.g. unchanged elements in PLL and or prescriptions) shall be returned with original id, versionId, source and lastUpdated time.