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

ExampleScenario: Reject Lab Order (Using a Bundle)

Official URL: http://moh.bw.org/ExampleScenario/RejectLabOrder Version: 1.0.0
Active as of 2025-08-20 Computable Name: RejectLabOrder

This serves to demonstrate the submission of a request to reject an active lab order, from the Point-of-Service (PoS) application to the FHIR datastore.

Actors

NameTypeDescription
Point of Service System

The entity that requested the lab order rejection.

Interoperability Layer System

The entity that receives the lab order rejection request submitted by the PoS entity.

FHIR Server System

The entity that stores the rejection details for the lab order previously submitted by the PoS entity.

Diagram

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

Processes

Process: Reject Lab Order

Pre-conditions:

PoS entity submitted a request for the lab order to be rejected.

Post-conditions:

FHIR entity has updated the statuses for the Task and ServiceRequest resources by indicating its status as rejected.

Process: Reject Lab Order

This scenario demonstrates the process of rejecting the requested lab order.

StepNameDescriptionInitiatorReceiverRequestResponse
1 See subprocessReject Lab Order below
StepNameDescriptionInitiatorReceiverRequestResponse
1.1 Reject lab order - update (Details: FHIR Restful Interactions code update)

Updated lab order information

Point of Service Interoperability Layer Lab Order Bundle - Reject Lab Order
1.2 Invoke FHIR mediator

Pass the data to the mediator responsible for calling the endpoint for rejecting the lab order information in FHIR.

Interoperability Layer Interoperability Layer
1.3 Send data for consumption - update (Details: FHIR Restful Interactions code update)

Request for FHIR to process the information in the lab order bundle.

Interoperability Layer FHIR Server FHIR request Outcome response
1.4 Success: Invoke IL mediator

Pass the data to the mediator responsible for calling the endpoint that must send a response back the PoS system who initiated the rejection request.

Interoperability Layer Interoperability Layer
Process: Respond to Request

Pre-conditions:

FHIR entity has processed the request and has issued an outcome response.

Post-conditions:

IL entity has received the outcome response from FHIR and forwarded the response to the PoS system.

Process: Respond to Request

This scenario demonstrates the process for responding to the PoS sytem who submitted the request.

StepNameDescriptionInitiatorReceiverRequestResponse
2 See subprocessRespond to Request below
StepNameDescriptionInitiatorReceiverRequestResponse
2.1 Response

Mediator responds to the request.

Interoperability Layer Point of Service Outcome response
2.2 Log the outcome

PoS entity logs the outcome issued by the FHIR entity.

Point of Service Point of Service

Instances

NameTypeContentDescription
Outcome response Endpoint here

FHIR issues an outcome response to each CRUD request.

Lab Order Bundle - Reject Lab Order Bundle - Lab Orders here

The FHIR bundle provided by the PoS entity when submitting a request to reject the lab order service request.

This bundle includes the following resources:

FHIR request Endpoint here

FHIR processes each request in the bundle using the HTTP request method defined for each Resource included in the Bundle.