Botswana FHIR Implementation Guide
1.0.0 - ci-build
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
Active as of 2025-08-20 |
@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
# - resource -------------------------------------------------------------------
a fhir:ExampleScenario ;
fhir:nodeRole fhir:treeRoot ;
fhir:id [ fhir:v "SubmitNewLabOrders"] ; #
fhir:text [
fhir:status [ fhir:v "extensions" ] ;
fhir:div "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: ExampleScenario SubmitNewLabOrders</b></p><a name=\"SubmitNewLabOrders\"> </a><a name=\"hcSubmitNewLabOrders\"> </a><p><b>url</b>: <a href=\"ExampleScenario-SubmitNewLabOrders.html\">Submit New Lab Orders (Using a Bundle)</a></p><p><b>version</b>: 1.0.0</p><p><b>name</b>: SubmitNewLabOrders</p><p><b>title</b>: Submit New Lab Orders (Using a Bundle)</p><p><b>status</b>: Active</p><p><b>experimental</b>: false</p><p><b>date</b>: 2025-08-20 07:21:53+0000</p><p><b>publisher</b>: Jembi Health Systems</p><p><b>contact</b>: Jembi Health Systems: <a href=\"https://www.jembi.org\">https://www.jembi.org</a>,<a href=\"mailto:info@jembi.org\">info@jembi.org</a>, Jembi Health Systems: <a href=\"mailto:info@jembi.org\">info@jembi.org</a></p><p><b>jurisdiction</b>: <span title=\"Codes:{urn:iso:std:iso:3166 BW}\">Botswana</span></p><p><b>purpose</b>: </p><div><p>This serves to demonstrate the submission of a new lab orders, from the Point-of-Service (PoS) application to the FHIR datastore.</p>\n</div><blockquote><p><b>actor</b></p><p><b>Actor Reference</b>: <a href=\"ActorDefinition-PIMSActorDefinitionExample.html\">ActorDefinition Patient Information Management System (PIMS)</a></p><p><b>Actor Reference</b>: <a href=\"ActorDefinition-OpenMRSActorDefinitionExample.html\">ActorDefinition OpenMRS</a></p><p><b>key</b>: PoS</p><p><b>type</b>: System</p><p><b>title</b>: Point of Service</p><p><b>description</b>: </p><div><p>The entity that creates the lab order.</p>\n</div></blockquote><blockquote><p><b>actor</b></p><p><b>Actor Reference</b>: <a href=\"ActorDefinition-InteroperabilityLayerActorDefinitionExample.html\">ActorDefinition Interoperability Layer (IL)</a></p><p><b>key</b>: IL</p><p><b>type</b>: System</p><p><b>title</b>: Interoperability Layer</p><p><b>description</b>: </p><div><p>The entity that receives the lab order request submitted by the PoS entity.</p>\n</div></blockquote><blockquote><p><b>actor</b></p><p><b>Actor Reference</b>: <a href=\"ActorDefinition-SHRActorDefinitionExample.html\">ActorDefinition Shared Health Record (SHR)</a></p><p><b>key</b>: FHIR</p><p><b>type</b>: System</p><p><b>title</b>: FHIR Server</p><p><b>description</b>: </p><div><p>The entity that stores the details for the lab order submitted by the PoS entity.</p>\n</div></blockquote><blockquote><p><b>instance</b></p><p><b>key</b>: laborder.01</p><p><b>structureType</b>: <a href=\"http://hl7.org/fhir/R5/codesystem-fhir-types.html#fhir-types-Endpoint\">All FHIR Types Endpoint</a>: Endpoint</p><p><b>structureProfile</b>: <a href=\"http://hl7.org/fhir/R5/endpoint.html\">Endpoint</a></p><p><b>title</b>: Outcome response</p><p><b>description</b>: </p><div><p>FHIR issues an outcome response to each CRUD request.</p>\n</div><p><b>content</b>: <a href=\"Endpoint-FHIRResourceProcessResponse.html\">Endpoint: status = active; connectionType = Interoperability Layer; description = FHIR issues an outcome response to each request.; address = https://openhim-core:5001</a></p></blockquote><blockquote><p><b>instance</b></p><p><b>key</b>: laborder.02</p><p><b>structureType</b>: <a href=\"http://hl7.org/fhir/R5/codesystem-fhir-types.html#fhir-types-Bundle\">All FHIR Types Bundle</a>: Bundle</p><p><b>structureProfile</b>: <a href=\"StructureDefinition-lab-orders-bundle.html\">Bundle - Lab Orders</a></p><p><b>title</b>: Lab Order Bundle - New Lab Orders</p><p><b>description</b>: </p><div><p>The FHIR bundle provided by the PoS entity when submitting the lab order service request.</p>\n<p>This bundle includes the following resources:</p>\n<ul>\n<li><a href=\"Task-LabOrderTaskExample.html\">Ready Lab Order</a></li>\n<li><a href=\"Specimen-AvailableSpecimenForActiveRequestsExample.html\">Lab Order Specimen</a></li>\n<li><a href=\"ServiceRequest-LabOrderActiveServiceRequestExample.html\">Active Lab Order Service Request</a></li>\n</ul>\n</div><p><b>content</b>: <a href=\"Bundle-lab-order-with-patient-bundle.html\">Bundle: type = transaction</a></p></blockquote><blockquote><p><b>instance</b></p><p><b>key</b>: laborder.03</p><p><b>structureType</b>: <a href=\"http://hl7.org/fhir/R5/codesystem-fhir-types.html#fhir-types-Endpoint\">All FHIR Types Endpoint</a>: Endpoint</p><p><b>structureProfile</b>: <a href=\"http://hl7.org/fhir/R5/endpoint.html\">Endpoint</a></p><p><b>title</b>: FHIR request</p><p><b>description</b>: </p><div><p>FHIR processes each request in the bundle using the HTTP request method defined for each Resource included in the Bundle.</p>\n</div><p><b>content</b>: <a href=\"Endpoint-ProcessFHIRBundle.html\">Endpoint Bundle</a></p></blockquote><blockquote><p><b>process</b></p><p><b>title</b>: New Lab Order</p><p><b>preConditions</b>: </p><div><p>PoS entity has submitted a lab order request.</p>\n</div><p><b>postConditions</b>: </p><div><p>FHIR entity has stored the lab order details for the patient and sent an outcome response for the request to the IL entity.</p>\n</div><blockquote><p><b>step</b></p><p><b>number</b>: 1</p><blockquote><p><b>process</b></p><p><b>title</b>: New Lab Order</p><p><b>description</b>: </p><div><p>This scenario demonstrates the process of storing the patient's lab order information in the FHIR datastore.</p>\n</div><blockquote><p><b>step</b></p><p><b>number</b>: 1.1</p><blockquote><p><b>operation</b></p><p><b>type</b>: <a href=\"http://hl7.org/fhir/R5/codesystem-restful-interaction.html#restful-interaction-update\">FHIR Restful Interactions update</a>: update</p><p><b>title</b>: Submit lab order</p><p><b>initiator</b>: PoS</p><p><b>receiver</b>: IL</p><p><b>description</b>: </p><div><p>Lab order information</p>\n</div><p><b>initiatorActive</b>: true</p><h3>Requests</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>InstanceReference</b></td></tr><tr><td style=\"display: none\">*</td><td>laborder.02</td></tr></table></blockquote></blockquote><blockquote><p><b>step</b></p><p><b>number</b>: 1.2</p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Title</b></td><td><b>Initiator</b></td><td><b>Receiver</b></td><td><b>Description</b></td><td><b>InitiatorActive</b></td></tr><tr><td style=\"display: none\">*</td><td>Invoke FHIR mediator</td><td>IL</td><td>IL</td><td><div><p>Pass the data to the mediator responsible for calling the endpoint for creating the lab order information in FHIR.</p>\n</div></td><td>true</td></tr></table></blockquote><blockquote><p><b>step</b></p><p><b>number</b>: 1.3</p><blockquote><p><b>operation</b></p><p><b>type</b>: <a href=\"http://hl7.org/fhir/R5/codesystem-restful-interaction.html#restful-interaction-update\">FHIR Restful Interactions update</a>: update</p><p><b>title</b>: Send data for consumption</p><p><b>initiator</b>: IL</p><p><b>receiver</b>: FHIR</p><p><b>description</b>: </p><div><p>Request for FHIR to process the information in the lab order bundle.</p>\n</div><h3>Requests</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>InstanceReference</b></td></tr><tr><td style=\"display: none\">*</td><td>laborder.03</td></tr></table><h3>Responses</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>InstanceReference</b></td></tr><tr><td style=\"display: none\">*</td><td>laborder.01</td></tr></table></blockquote></blockquote><blockquote><p><b>step</b></p><p><b>number</b>: 1.4</p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Title</b></td><td><b>Initiator</b></td><td><b>Receiver</b></td><td><b>Description</b></td></tr><tr><td style=\"display: none\">*</td><td>Success: Invoke IL mediator</td><td>IL</td><td>IL</td><td><div><p>Pass the data to the mediator responsible for calling the endpoint that must send a response back the PoS system who initiated the lab order request.</p>\n</div></td></tr></table></blockquote></blockquote></blockquote></blockquote><blockquote><p><b>process</b></p><p><b>title</b>: Respond to Request</p><p><b>preConditions</b>: </p><div><p>FHIR entity has processed the request and has issued an outcome response.</p>\n</div><p><b>postConditions</b>: </p><div><p>IL entity has received the outcome response from FHIR and forwarded the response to the PoS system.</p>\n</div><blockquote><p><b>step</b></p><p><b>number</b>: 2</p><blockquote><p><b>process</b></p><p><b>title</b>: Respond to Request</p><p><b>description</b>: </p><div><p>This scenario demonstrates the process for responding to the PoS sytem who submitted the request.</p>\n</div><blockquote><p><b>step</b></p><p><b>number</b>: 2.1</p><blockquote><p><b>operation</b></p><p><b>title</b>: Response</p><p><b>initiator</b>: IL</p><p><b>receiver</b>: PoS</p><p><b>description</b>: </p><div><p>Mediator responds to the request.</p>\n</div><h3>Requests</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>InstanceReference</b></td></tr><tr><td style=\"display: none\">*</td><td>laborder.01</td></tr></table></blockquote></blockquote><blockquote><p><b>step</b></p><p><b>number</b>: 2.2</p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Title</b></td><td><b>Initiator</b></td><td><b>Receiver</b></td><td><b>Description</b></td></tr><tr><td style=\"display: none\">*</td><td>Log the outcome</td><td>PoS</td><td>PoS</td><td><div><p>PoS entity logs the outcome issued by the FHIR entity.</p>\n</div></td></tr></table></blockquote></blockquote></blockquote></blockquote></div>"^^rdf:XMLLiteral
] ; #
fhir:url [ fhir:v "http://moh.bw.org/ExampleScenario/SubmitNewLabOrders"^^xsd:anyURI] ; #
fhir:version [ fhir:v "1.0.0"] ; #
fhir:name [ fhir:v "SubmitNewLabOrders"] ; #
fhir:title [ fhir:v "Submit New Lab Orders (Using a Bundle)"] ; #
fhir:status [ fhir:v "active"] ; #
fhir:experimental [ fhir:v false] ; #
fhir:date [ fhir:v "2025-08-20T07:21:53+00:00"^^xsd:dateTime] ; #
fhir:publisher [ fhir:v "Jembi Health Systems"] ; #
fhir:contact ( [
fhir:name [ fhir:v "Jembi Health Systems" ] ;
( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "https://www.jembi.org" ] ] [
fhir:system [ fhir:v "email" ] ;
fhir:value [ fhir:v "info@jembi.org" ] ] )
] [
fhir:name [ fhir:v "Jembi Health Systems" ] ;
( fhir:telecom [
fhir:system [ fhir:v "email" ] ;
fhir:value [ fhir:v "info@jembi.org" ] ;
fhir:use [ fhir:v "work" ] ] )
] ) ; #
fhir:jurisdiction ( [
( fhir:coding [
fhir:system [ fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ] ;
fhir:code [ fhir:v "BW" ] ;
fhir:display [ fhir:v "Botswana" ] ] )
] ) ; #
fhir:purpose [ fhir:v "This serves to demonstrate the submission of a new lab orders, from the Point-of-Service (PoS) application to the FHIR datastore."] ; #
fhir:actor ( [
( fhir:extension [
fhir:url [ fhir:v "http://moh.bw.org/StructureDefinition/actor-reference"^^xsd:anyURI ] ;
fhir:value [
a fhir:Reference ;
fhir:reference [ fhir:v "ActorDefinition/PIMSActorDefinitionExample" ] ] ] [
fhir:url [ fhir:v "http://moh.bw.org/StructureDefinition/actor-reference"^^xsd:anyURI ] ;
fhir:value [
a fhir:Reference ;
fhir:reference [ fhir:v "ActorDefinition/OpenMRSActorDefinitionExample" ] ] ] ) ;
fhir:key [ fhir:v "PoS" ] ;
fhir:type [ fhir:v "system" ] ;
fhir:title [ fhir:v "Point of Service" ] ;
fhir:description [ fhir:v "The entity that creates the lab order." ]
] [
( fhir:extension [
fhir:url [ fhir:v "http://moh.bw.org/StructureDefinition/actor-reference"^^xsd:anyURI ] ;
fhir:value [
a fhir:Reference ;
fhir:reference [ fhir:v "ActorDefinition/InteroperabilityLayerActorDefinitionExample" ] ] ] ) ;
fhir:key [ fhir:v "IL" ] ;
fhir:type [ fhir:v "system" ] ;
fhir:title [ fhir:v "Interoperability Layer" ] ;
fhir:description [ fhir:v "The entity that receives the lab order request submitted by the PoS entity." ]
] [
( fhir:extension [
fhir:url [ fhir:v "http://moh.bw.org/StructureDefinition/actor-reference"^^xsd:anyURI ] ;
fhir:value [
a fhir:Reference ;
fhir:reference [ fhir:v "ActorDefinition/SHRActorDefinitionExample" ] ] ] ) ;
fhir:key [ fhir:v "FHIR" ] ;
fhir:type [ fhir:v "system" ] ;
fhir:title [ fhir:v "FHIR Server" ] ;
fhir:description [ fhir:v "The entity that stores the details for the lab order submitted by the PoS entity." ]
] ) ; #
fhir:instance ( [
fhir:key [ fhir:v "laborder.01" ] ;
fhir:structureType [
fhir:system [ fhir:v "http://hl7.org/fhir/fhir-types"^^xsd:anyURI ] ;
fhir:code [ fhir:v "Endpoint" ] ] ;
fhir:structureProfile [
a fhir:canonical ;
fhir:v "http://hl7.org/fhir/StructureDefinition/Endpoint"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Endpoint> ] ;
fhir:title [ fhir:v "Outcome response" ] ;
fhir:description [ fhir:v "FHIR issues an outcome response to each CRUD request." ] ;
fhir:content [
fhir:reference [ fhir:v "Endpoint/FHIRResourceProcessResponse" ] ]
] [
fhir:key [ fhir:v "laborder.02" ] ;
fhir:structureType [
fhir:system [ fhir:v "http://hl7.org/fhir/fhir-types"^^xsd:anyURI ] ;
fhir:code [ fhir:v "Bundle" ] ] ;
fhir:structureProfile [
a fhir:canonical ;
fhir:v "http://moh.bw.org/StructureDefinition/lab-orders-bundle"^^xsd:anyURI ;
fhir:link <http://moh.bw.org/StructureDefinition/lab-orders-bundle> ] ;
fhir:title [ fhir:v "Lab Order Bundle - New Lab Orders" ] ;
fhir:description [ fhir:v "The FHIR bundle provided by the PoS entity when submitting the lab order service request.\n\nThis bundle includes the following resources:\n- [Ready Lab Order](Task-LabOrderTaskExample.html)\n- [Lab Order Specimen](Specimen-AvailableSpecimenForActiveRequestsExample.html)\n- [Active Lab Order Service Request](ServiceRequest-LabOrderActiveServiceRequestExample.html)" ] ;
fhir:content [
fhir:reference [ fhir:v "Bundle/lab-order-with-patient-bundle" ] ]
] [
fhir:key [ fhir:v "laborder.03" ] ;
fhir:structureType [
fhir:system [ fhir:v "http://hl7.org/fhir/fhir-types"^^xsd:anyURI ] ;
fhir:code [ fhir:v "Endpoint" ] ] ;
fhir:structureProfile [
a fhir:canonical ;
fhir:v "http://hl7.org/fhir/StructureDefinition/Endpoint"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Endpoint> ] ;
fhir:title [ fhir:v "FHIR request" ] ;
fhir:description [ fhir:v "FHIR processes each request in the bundle using the HTTP request method defined for each Resource included in the Bundle." ] ;
fhir:content [
fhir:reference [ fhir:v "Endpoint/ProcessFHIRBundle" ] ]
] ) ; #
fhir:process ( [
fhir:title [ fhir:v "New Lab Order" ] ;
fhir:preConditions [ fhir:v "PoS entity has submitted a lab order request." ] ;
fhir:postConditions [ fhir:v "FHIR entity has stored the lab order details for the patient and sent an outcome response for the request to the IL entity." ] ;
( fhir:step [
fhir:number [ fhir:v "1" ] ;
fhir:process [
fhir:title [ fhir:v "New Lab Order" ] ;
fhir:description [ fhir:v "This scenario demonstrates the process of storing the patient's lab order information in the FHIR datastore." ] ;
( fhir:step [
fhir:number [ fhir:v "1.1" ] ;
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "update" ] ] ;
fhir:title [ fhir:v "Submit lab order" ] ;
fhir:initiator [ fhir:v "PoS" ] ;
fhir:receiver [ fhir:v "IL" ] ;
fhir:description [ fhir:v "Lab order information" ] ;
fhir:initiatorActive [ fhir:v true ] ;
fhir:request [
fhir:instanceReference [ fhir:v "laborder.02" ] ] ] ] [
fhir:number [ fhir:v "1.2" ] ;
fhir:operation [
fhir:title [ fhir:v "Invoke FHIR mediator" ] ;
fhir:initiator [ fhir:v "IL" ] ;
fhir:receiver [ fhir:v "IL" ] ;
fhir:description [ fhir:v "Pass the data to the mediator responsible for calling the endpoint for creating the lab order information in FHIR." ] ;
fhir:initiatorActive [ fhir:v true ] ] ] [
fhir:number [ fhir:v "1.3" ] ;
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "update" ] ] ;
fhir:title [ fhir:v "Send data for consumption" ] ;
fhir:initiator [ fhir:v "IL" ] ;
fhir:receiver [ fhir:v "FHIR" ] ;
fhir:description [ fhir:v "Request for FHIR to process the information in the lab order bundle." ] ;
fhir:request [
fhir:instanceReference [ fhir:v "laborder.03" ] ] ;
fhir:response [
fhir:instanceReference [ fhir:v "laborder.01" ] ] ] ] [
fhir:number [ fhir:v "1.4" ] ;
fhir:operation [
fhir:title [ fhir:v "Success: Invoke IL mediator" ] ;
fhir:initiator [ fhir:v "IL" ] ;
fhir:receiver [ fhir:v "IL" ] ;
fhir:description [ fhir:v "Pass the data to the mediator responsible for calling the endpoint that must send a response back the PoS system who initiated the lab order request." ] ] ] ) ] ] )
] [
fhir:title [ fhir:v "Respond to Request" ] ;
fhir:preConditions [ fhir:v "FHIR entity has processed the request and has issued an outcome response." ] ;
fhir:postConditions [ fhir:v "IL entity has received the outcome response from FHIR and forwarded the response to the PoS system." ] ;
( fhir:step [
fhir:number [ fhir:v "2" ] ;
fhir:process [
fhir:title [ fhir:v "Respond to Request" ] ;
fhir:description [ fhir:v "This scenario demonstrates the process for responding to the PoS sytem who submitted the request." ] ;
( fhir:step [
fhir:number [ fhir:v "2.1" ] ;
fhir:operation [
fhir:title [ fhir:v "Response" ] ;
fhir:initiator [ fhir:v "IL" ] ;
fhir:receiver [ fhir:v "PoS" ] ;
fhir:description [ fhir:v "Mediator responds to the request." ] ;
fhir:request [
fhir:instanceReference [ fhir:v "laborder.01" ] ] ] ] [
fhir:number [ fhir:v "2.2" ] ;
fhir:operation [
fhir:title [ fhir:v "Log the outcome" ] ;
fhir:initiator [ fhir:v "PoS" ] ;
fhir:receiver [ fhir:v "PoS" ] ;
fhir:description [ fhir:v "PoS entity logs the outcome issued by the FHIR entity." ] ] ] ) ] ] )
] ) . #
IG © 2021+ Jembi Health Systems. Package botswana.hie.fhir#1.0.0 based on FHIR 5.0.0. Generated 2025-08-20
Links: Table of Contents |
QA Report