Botswana AMR Implementation Guide
0.1.0 - 0.1.0
Botswana AMR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
The Botswana AMR platform uses a modern data pipeline approach:
AMR culture results are modeled as a tree rooted at DiagnosticReport:
DiagnosticReport (BotswanaAMRDiagnosticReport)
├── encounter → Encounter (BotswanaAMREncounter)
│ ├── class: ward type (inpatient/outpatient/ICU/emergency)
│ ├── period.start: admission date
│ └── serviceProvider → Organization (facility)
├── specimen → Specimen (BotswanaAMRSpecimen)
├── result[gramStain] → GramStainObservation
└── result[organism] → OrganismObservation (1..*)
├── valueCodeableConcept: identified organism
├── identifier: isolate number
└── hasMember → SusceptibilityObservation (0..*)
│ ├── code: antibiotic (LOINC panel code)
│ ├── interpretation: S / I / R
│ ├── valueQuantity: MIC or zone diameter
│ └── method: AST method (disk diffusion, MIC, etc.)
└── hasMember → SpecialTestObservation (0..*)
Each OrganismObservation represents one isolate. Susceptibility results are linked as hasMember references, keeping antibiotic results grouped per organism.
The $export-whonet operation ([base]/DiagnosticReport/$export-whonet) flattens the FHIR resource graph into isolate-centric rows for WHONET or GLASS import.
How it works:
result[organism], create one row.format=whonet) or GLASS batch CSV (format=glass).Parameters:
| Parameter | Type | Description |
|---|---|---|
start |
date | Specimen collection date range start |
end |
date | Specimen collection date range end |
facility |
string | Filter by facility name |
format |
code | whonet (pipe-delimited) or glass (GLASS CSV) |
The output is a Binary resource with contentType: text/csv.
The Encounter profile captures data required for WHO GLASS classification:
Encounter.class): Determines the patient origin field in GLASS (inpatient, outpatient, ICU, emergency).Encounter.period.start): Used with specimen collection date to classify infections. The GLASS algorithm considers a specimen collected >= 2 calendar days after admission as hospital-acquired.Encounter.serviceProvider): Maps to the GLASS laboratory/institution identifier.| Domain | Primary CodeSystem | Usage |
|---|---|---|
| Observation codes | LOINC | DiagnosticReport.code, Observation.code, susceptibility panel codes |
| Organisms | SNOMED CT | OrganismObservation.valueCodeableConcept |
| Antibiotic substances | SNOMED CT | Substance-level coding for susceptibility drugs |
| GLASS antibiotics | ATC (WHO) | Required for GLASS batch submission format |
| S/I/R interpretation | HL7 ObservationInterpretation | Susceptibility interpretation codes |
| Botswana-specific codes | Local CodeSystems | BotswanaAMRLocalOrganismCS, BotswanaAMRLocalMethodCS for codes not yet in SNOMED/LOINC |
ConceptMaps are planned for the following translations:
This implementation guide provides the FHIR foundation for: