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

: Submit New Lab Orders (Using a Bundle) - JSON Representation

Active as of 2025-08-20

Raw json | Download

{
  "resourceType" : "ExampleScenario",
  "id" : "SubmitNewLabOrders",
  "text" : {
    "status" : "extensions",
    "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>"
  },
  "url" : "http://moh.bw.org/ExampleScenario/SubmitNewLabOrders",
  "version" : "1.0.0",
  "name" : "SubmitNewLabOrders",
  "title" : "Submit New Lab Orders (Using a Bundle)",
  "status" : "active",
  "experimental" : false,
  "date" : "2025-08-20T07:21:53+00:00",
  "publisher" : "Jembi Health Systems",
  "contact" : [
    {
      "name" : "Jembi Health Systems",
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://www.jembi.org"
        },
        {
          "system" : "email",
          "value" : "info@jembi.org"
        }
      ]
    },
    {
      "name" : "Jembi Health Systems",
      "telecom" : [
        {
          "system" : "email",
          "value" : "info@jembi.org",
          "use" : "work"
        }
      ]
    }
  ],
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "urn:iso:std:iso:3166",
          "code" : "BW",
          "display" : "Botswana"
        }
      ]
    }
  ],
  "purpose" : "This serves to demonstrate the submission of a new lab orders, from the Point-of-Service (PoS) application to the FHIR datastore.",
  "actor" : [
    {
      "extension" : [
        {
          "url" : "http://moh.bw.org/StructureDefinition/actor-reference",
          "valueReference" : {
            🔗 "reference" : "ActorDefinition/PIMSActorDefinitionExample"
          }
        },
        {
          "url" : "http://moh.bw.org/StructureDefinition/actor-reference",
          "valueReference" : {
            🔗 "reference" : "ActorDefinition/OpenMRSActorDefinitionExample"
          }
        }
      ],
      "key" : "PoS",
      "type" : "system",
      "title" : "Point of Service",
      "description" : "The entity that creates the lab order."
    },
    {
      "extension" : [
        {
          "url" : "http://moh.bw.org/StructureDefinition/actor-reference",
          "valueReference" : {
            🔗 "reference" : "ActorDefinition/InteroperabilityLayerActorDefinitionExample"
          }
        }
      ],
      "key" : "IL",
      "type" : "system",
      "title" : "Interoperability Layer",
      "description" : "The entity that receives the lab order request submitted by the PoS entity."
    },
    {
      "extension" : [
        {
          "url" : "http://moh.bw.org/StructureDefinition/actor-reference",
          "valueReference" : {
            🔗 "reference" : "ActorDefinition/SHRActorDefinitionExample"
          }
        }
      ],
      "key" : "FHIR",
      "type" : "system",
      "title" : "FHIR Server",
      "description" : "The entity that stores the details for the lab order submitted by the PoS entity."
    }
  ],
  "instance" : [
    {
      "key" : "laborder.01",
      "structureType" : {
        "system" : "http://hl7.org/fhir/fhir-types",
        "code" : "Endpoint"
      },
      "structureProfileCanonical" : "http://hl7.org/fhir/StructureDefinition/Endpoint",
      "title" : "Outcome response",
      "description" : "FHIR issues an outcome response to each CRUD request.",
      "content" : {
        🔗 "reference" : "Endpoint/FHIRResourceProcessResponse"
      }
    },
    {
      "key" : "laborder.02",
      "structureType" : {
        "system" : "http://hl7.org/fhir/fhir-types",
        "code" : "Bundle"
      },
      "structureProfileCanonical" : "http://moh.bw.org/StructureDefinition/lab-orders-bundle",
      "title" : "Lab Order Bundle - New Lab Orders",
      "description" : "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)",
      "content" : {
        🔗 "reference" : "Bundle/lab-order-with-patient-bundle"
      }
    },
    {
      "key" : "laborder.03",
      "structureType" : {
        "system" : "http://hl7.org/fhir/fhir-types",
        "code" : "Endpoint"
      },
      "structureProfileCanonical" : "http://hl7.org/fhir/StructureDefinition/Endpoint",
      "title" : "FHIR request",
      "description" : "FHIR processes each request in the bundle using the HTTP request method defined for each Resource included in the Bundle.",
      "content" : {
        🔗 "reference" : "Endpoint/ProcessFHIRBundle"
      }
    }
  ],
  "process" : [
    {
      "title" : "New Lab Order",
      "preConditions" : "PoS entity has submitted a lab order request.",
      "postConditions" : "FHIR entity has stored the lab order details for the patient and sent an outcome response for the request to the IL entity.",
      "step" : [
        {
          "number" : "1",
          "process" : {
            "title" : "New Lab Order",
            "description" : "This scenario demonstrates the process of storing the patient's lab order information in the FHIR datastore.",
            "step" : [
              {
                "number" : "1.1",
                "operation" : {
                  "type" : {
                    "system" : "http://hl7.org/fhir/restful-interaction",
                    "code" : "update"
                  },
                  "title" : "Submit lab order",
                  "initiator" : "PoS",
                  "receiver" : "IL",
                  "description" : "Lab order information",
                  "initiatorActive" : true,
                  "request" : {
                    "instanceReference" : "laborder.02"
                  }
                }
              },
              {
                "number" : "1.2",
                "operation" : {
                  "title" : "Invoke FHIR mediator",
                  "initiator" : "IL",
                  "receiver" : "IL",
                  "description" : "Pass the data to the mediator responsible for calling the endpoint for creating the lab order information in FHIR.",
                  "initiatorActive" : true
                }
              },
              {
                "number" : "1.3",
                "operation" : {
                  "type" : {
                    "system" : "http://hl7.org/fhir/restful-interaction",
                    "code" : "update"
                  },
                  "title" : "Send data for consumption",
                  "initiator" : "IL",
                  "receiver" : "FHIR",
                  "description" : "Request for FHIR to process the information in the lab order bundle.",
                  "request" : {
                    "instanceReference" : "laborder.03"
                  },
                  "response" : {
                    "instanceReference" : "laborder.01"
                  }
                }
              },
              {
                "number" : "1.4",
                "operation" : {
                  "title" : "Success: Invoke IL mediator",
                  "initiator" : "IL",
                  "receiver" : "IL",
                  "description" : "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."
                }
              }
            ]
          }
        }
      ]
    },
    {
      "title" : "Respond to Request",
      "preConditions" : "FHIR entity has processed the request and has issued an outcome response.",
      "postConditions" : "IL entity has received the outcome response from FHIR and forwarded the response to the PoS system.",
      "step" : [
        {
          "number" : "2",
          "process" : {
            "title" : "Respond to Request",
            "description" : "This scenario demonstrates the process for responding to the PoS sytem who submitted the request.",
            "step" : [
              {
                "number" : "2.1",
                "operation" : {
                  "title" : "Response",
                  "initiator" : "IL",
                  "receiver" : "PoS",
                  "description" : "Mediator responds to the request.",
                  "request" : {
                    "instanceReference" : "laborder.01"
                  }
                }
              },
              {
                "number" : "2.2",
                "operation" : {
                  "title" : "Log the outcome",
                  "initiator" : "PoS",
                  "receiver" : "PoS",
                  "description" : "PoS entity logs the outcome issued by the FHIR entity."
                }
              }
            ]
          }
        }
      ]
    }
  ]
}