Botswana FHIR Implementation Guide
1.0.0 - ci-build Botswana flag

Botswana FHIR Implementation Guide, published by Jembi Health Systems. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/jembi/botswana-hie-fhir-ig/ and changes regularly. See the Directory of published versions

Sequence Diagrams

A sequence diagram is a type of UML diagram that shows how objects interact in a particular scenario of a system. It illustrates the sequence of messages exchanged between objects over time to carry out a specific functionality.

Cancel Lab Order (Using a Bundle)

Actors

Name Description Actor References*
FHIR Server The entity that stores the cancellation details for the lab order previously submitted by the PoS entity. ActorDefinition - Shared Health Record
Interoperability Layer The entity that receives the lab order cancellation request submitted by the PoS entity. ActorDefinition - Interoperability Layer
Point of Service The entity that requested the lab order cancellation. ActorDefinition - OpenMRS,
ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Cancel Lab Order (Using a Bundle)Point of ServicePoint of ServiceInteroperability LayerInteroperability LayerFHIR ServerFHIR ServerCancel Lab OrderdetailsCancel lab order(payload)Invoke FHIR mediatoractivate FHIRSend data for consumption(payload)response(payload)Success: Invoke IL mediatorendRespond to RequestdetailsResponse(payload)Log the outcomeend




Lab Order Results (Using a Bundle)

Actors

Name Description Actor References*
FHIR Server The entity that stores the details for the lab results documented by the PoS entity. ActorDefinition - Shared Health Record
Interoperability Layer The entity that receives the lab results request submitted by the PoS entity. ActorDefinition - Interoperability Layer
Point of Service The entity that documents the lab results. ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Lab Order Results (Using a Bundle)Point of ServicePoint of ServiceInteroperability LayerInteroperability LayerFHIR ServerFHIR ServerLab ResultsdetailsLab results(payload)Invoke FHIR mediatoractivate FHIRSend data for consumption(payload)response(payload)Success: Invoke IL mediatorendRespond to RequestdetailsResponse(payload)Log the outcomeend




Register New Patient

Actors

Name Description Actor References*
FHIR Server The entity that stores a restricted version of the Patient Resource submitted by the PoS entity. ActorDefinition - Shared Health Record
Client Registry The entity that stores PII and demographic information for the patient included in the Patient Resource submitted by the PoS entity. ActorDefinition - Client Registry
Interoperability Layer The entity that receives the registration request submitted by PoS entity. ActorDefinition - Interoperability Layer
Point of Service The entity that registers the patient. ActorDefinition - OpenMRS,
ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Register New PatientPoint of ServicePoint of ServiceInteroperability LayerInteroperability LayerClient RegistryClient RegistryFHIR ServerFHIR ServerRegister Patient in CRdetailsPatient resource(payload)Get patient datadeactivate ILValidate patient data for compliance(payload)response(payload)Validation success: Send patient data(payload)response(payload)Success: Invoke FHIR mediatorendRegister Patient in FHIRdetailsRemove all PII and business identifiersdeactivate ILUpdate Resource.metaactivate ILAdd the MPI identifierdeactivate ILSet the Restricted Patient Resource literal IDactivate FHIRSend data for consumption(payload)response(payload)Success: Invoke IL mediatorendRespond to Create Patient RequestdetailsResponse(payload)Log the outcomeend




Register New Patient (Using a Bundle)

Actors

Name Description Actor References*
FHIR Server The entity that stores clinical information for the patient included in the request submitted by PoS entity. ActorDefinition - Shared Health Record
Client Registry The entity that stores PII and demographic information for the patient included in the lab order bundle submitted by PoS entity. ActorDefinition - Client Registry
Interoperability Layer The entity that receives the registration request submitted by PoS entity. ActorDefinition - Interoperability Layer
Point of Service The entity that registers the patient. ActorDefinition - OpenMRS,
ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Register New Patient (Using a Bundle)Point of ServicePoint of ServiceInteroperability LayerInteroperability LayerClient RegistryClient RegistryFHIR ServerFHIR ServerRegister Patient in CRdetailsLab order bundle(payload)Get patient datadeactivate ILValidate patient data for compliance(payload)response(payload)Validation success: Send patient data(payload)response(payload)Success: Invoke FHIR mediatorendRegister Patient in FHIRdetailsRemove Data Supplying Patient Resourcedeactivate ILAdd Restricted Patient Resourceactivate ILAdd the MPI identifierdeactivate ILSet the Restricted Patient Resource literal IDactivate FHIRSend data for consumption(payload)response(payload)Success: Invoke IL mediatorendRespond to Create Patient RequestdetailsResponse(payload)Log the outcomeend




Reject Lab Order (Using a Bundle)

Actors

Name Description Actor References*
FHIR Server The entity that stores the rejection details for the lab order previously submitted by the PoS entity. ActorDefinition - Shared Health Record
Interoperability Layer The entity that receives the lab order rejection request submitted by the PoS entity. ActorDefinition - Interoperability Layer
Point of Service The entity that requested the lab order rejection. ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Reject Lab Order (Using a Bundle)Point of ServicePoint of ServiceInteroperability LayerInteroperability LayerFHIR ServerFHIR ServerReject Lab OrderdetailsReject lab order(payload)Invoke FHIR mediatoractivate FHIRSend data for consumption(payload)response(payload)Success: Invoke IL mediatorendRespond to RequestdetailsResponse(payload)Log the outcomeend




Retrieve Patient Record

Actors

Name Description Actor References*
FHIR Server The entity that will provide the clinical information for the patient. ActorDefinition - Shared Health Record
Client Registry The entity that will provide PII and demographic information for the patient. ActorDefinition - Client Registry
Interoperability Layer The entity that retrieves the patient data from the CR and FHIR entities. ActorDefinition - Interoperability Layer
Point of Service The entity that submits a request for a patient record. ActorDefinition - OpenMRS,
ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Retrieve Patient RecordPoint of ServicePoint of ServiceInteroperability LayerInteroperability LayerClient RegistryClient RegistryFHIR ServerFHIR ServerRetrieve Patient in CRdetailsRequest for patient record(payload)Find patient(payload)response(payload)Success: Invoke FHIR mediatorendRetrieve Patient Record in FHIRdetailsGet patient record(payload)response(payload)Success: Invoke IL mediator 1endUpdate Patient RecorddetailsRemove Restricted Patient Resourceactivate ILInsert Data Supplying Patient Resourcedeactivate ILSuccess: Invoke IL mediator 2endRespond to Search RequestdetailsResponse(payload)Log the outcomeactivate PoSConsume dataend




Submit New Lab Orders (Using a Bundle)

Actors

Name Description Actor References*
FHIR Server The entity that stores the details for the lab order submitted by the PoS entity. ActorDefinition - Shared Health Record
Interoperability Layer The entity that receives the lab order request submitted by the PoS entity. ActorDefinition - Interoperability Layer
Point of Service The entity that creates the lab order. ActorDefinition - OpenMRS,
ActorDefinition - PIMS

* An actor reference will only be available if a reference was provided using the "Actor Reference" extension.


See process details: Interactions and steps

Submit New Lab Orders (Using a Bundle)Point of ServicePoint of ServiceInteroperability LayerInteroperability LayerFHIR ServerFHIR ServerNew Lab OrderdetailsSubmit lab order(payload)Invoke FHIR mediatordeactivate ILSend data for consumption(payload)response(payload)Success: Invoke IL mediatorendRespond to RequestdetailsResponse(payload)Log the outcomeend