Uzbekistan Digital Health Platform - Integrations
0.1.0 - ci-build
Uzbekistan Digital Health Platform - Integrations - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
This page documents how tuberculosis case-management data is represented as FHIR resources.
The DHIS tuberculosis module captures the registration, diagnosis, laboratory work-up and treatment course of tuberculosis (TB) patients. The data originates from the DHIS tuberculosis information system and is added to the DHP as individual, atomic FHIR resources. Resources conform to the DHIS profiles linked in each section, and to UZ Core or standard FHIR profiles otherwise.
Wherever a concept has a standard equivalent, resources carry the standard code directly - SNOMED CT for diagnoses, specimen types, identified species and processing states, LOINC for diagnostic tests and drug-susceptibility agents. The source system records this data with its own local codes; every local code is kept in its DHIS CodeSystem and mapped to its nearest standard concept by a ConceptMap, so an integrator can always look up the standard code for a code they hold. In resources, use the standard code wherever an exact (equivalent) match exists - the value set bound to each field offers the standard code for those concepts and keeps a local code only where no exact standard equivalent exists (for example culture-medium variants, smear/culture grades and drug-susceptibility bands). Each section below gives the governing profile, a concrete example resource, and a table of the value set and an example code for every field that carries a code.
A typical record links together: a patient, one or more TB diagnoses, an episode of care that groups the treatment course, the specimens collected, and the diagnostic test results produced from them.
The subject of every TB record. There is no DHIS-specific Patient profile; use UZ Core directly.
Profile: UZCorePatient
Example: example-patient-john
| Information to record | Stored in |
|---|---|
| National identifier | identifier (national ID slice) |
| Name, gender, birth date | name, gender, birthDate |
| Address | address (UZ address slice) |
| Responsible facility | managingOrganization → Organization |
Set Condition.code to the TB diagnosis (or a relevant comorbidity). Most diagnoses use SNOMED CT directly; a few that have no 1:1 SNOMED CT match use local codes.
Profile: DHISCondition
Example: example-tbc-diagnosis
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Diagnosis | DHISConditionCodeVS | SNOMED CT#88356006 (Primary tuberculous complex) |
Condition.code |
| Clinical status | condition-clinical | condition-clinical#active (Active) |
clinicalStatus |
| Verification status | condition-ver-status | condition-ver-status#confirmed (Confirmed) |
verificationStatus |
| Category | condition-category | condition-category#encounter-diagnosis (Encounter Diagnosis) |
category |
| When it started | - | 2025-06-03 |
onsetDateTime |
| Subject | - | reference to Patient | subject |
Use the SNOMED CT code wherever an exact match exists; only the few diagnoses without a 1:1 SNOMED CT match (e.g. fibro-cavitary TB and the non-TB comorbidities) keep a local code. The dhis-tuberculosis-to-snomed ConceptMap maps every DHIS diagnosis code to its SNOMED CT concept, so an integrator can find the standard code for any local code they hold.
An episode of care groups a patient's TB diagnosis, treatment and follow-up over the whole course of care, and names the care manager.
Profile: DHISEpisodeOfCare
Example: example-dhis-episode-of-care
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Episode type | episode-of-care-type-cs | episode-of-care-type-cs#mserv-0001-00004 (Treatment services) |
type |
| Status | EpisodeOfCareStatus | active |
status |
| Care period | - | 2025-03-12 to 2025-09-12 |
period.start / period.end |
| Diagnosis being treated | - | reference to DHISCondition | diagnosis.condition |
| Patient | - | reference to Patient | patient |
| Care manager | - | reference to PractitionerRole | careManager |
Each sample collected for laboratory testing. Specimen.type records what kind of sample it is; Specimen.feature.type records its processing state (primary sample, sediment, culture isolate).
Profile: DHISSpecimen
Example: example-dhis-specimen
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Specimen type | SpecimenTypeVS | SNOMED CT#119334006 (Sputum specimen) |
Specimen.type |
| Processing state | SpecimenFeatureTypeVS | specimen-feature-type-cs#Spec002-0001 (Primary sample) |
feature.type |
| Status | specimen-status | available |
status |
| Subject | - | reference to Patient | subject |
| Derived from | - | reference to a parent Specimen | parent |
Use the SNOMED CT code wherever an exact match exists; only the site groupings and culture media without a 1:1 SNOMED CT match keep a local code. The specimen-type-conceptmap ConceptMap maps every DHIS specimen type to its SNOMED CT concept, and the specimen-feature-type-to-snomed ConceptMap does the same for the processing states (the culture isolate uses a SNOMED CT code; primary sample and sediment keep a local code).
Every laboratory or imaging result is its own Observation. In all four profiles below, Observation.code identifies the test, drawn from DHISObservationCodeVS - LOINC where an exact code exists, otherwise a local code for culture-medium and assay variants. The observation-tuberculosis-code ConceptMap maps every DHIS test code to its LOINC concept. What differs is how the result is carried:
POS/NEG),Choose the profile that matches the test:
| Test | Profile | Result is carried as |
|---|---|---|
| Sputum smear microscopy | DHISObservationMicroscopy | coded AFB grade in a component |
| Culture, species identification, drug-susceptibility testing (DST), line-probe assay | DHISObservation | coded value and/or per-agent components |
| Chest X-ray | DHISObservationXray | boolean (finding present/absent) |
| HIV test | DHISObservationHIV | boolean |
Records the acid-fast bacilli (AFB) load found on a stained smear. The grade is stored in a component.
Profile: DHISObservationMicroscopy
Example: example-microscopy
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Test code | DHISObservationCodeVS | LOINC#53904-9 (Sputum smear microscopy, fluorescent) |
Observation.code |
| What the component reports | DHISObservationComponentCodeVS | observation-component-code-cs#Tub004-0032 (Grading) |
component.code |
| AFB grade | DHISObservationCodeableConceptVS | dhis-observation-codeable-concept-cs#Tub003-0008 (3+ / 40 fields) |
component.valueCodeableConcept |
| Specimen tested | - | reference to DHISSpecimen | specimen |
Covers solid/liquid culture, species identification and drug-susceptibility testing (DST), including line-probe assays. The overall result goes in valueCodeableConcept; in a DST panel each drug is a component whose code is the agent and whose value is the susceptibility outcome.
Profile: DHISObservation
Example: example-tb-microscopy
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Test code | DHISObservationCodeVS | observation-dhis-code-cs#Tub002-0007 (Phenotypic DST on MGIT) |
Observation.code |
| Overall result | DHISObservationCodeableConceptVS | SNOMED CT#113858008 (M. tuberculosis complex) |
valueCodeableConcept |
| Drug tested (DST) | DHISObservationComponentCodeVS | observation-component-code-cs#Tub004-0008 (Isoniazid 0.1 mg/mL) |
component.code |
| Susceptibility outcome | ObservationCodeableConceptVS | v3-ObservationInterpretation#R (Resistant) |
component.valueCodeableConcept |
| Specimen tested | - | reference to DHISSpecimen | specimen |
Identified species and the trace and identification qualifiers use their SNOMED CT code directly; the observation-result-to-snomed ConceptMap records the DHIS result code each one replaces, while smear/culture grades and resistance-band outcomes without a standard equivalent keep a local code.
For DST components, plain drug-name agents use the LOINC <drug> [Susceptibility] code directly; concentration-bearing agents keep a local code (the critical concentration a standard code drops). The observation-component-to-loinc ConceptMap maps every DHIS drug agent to its LOINC concept.
Records whether a TB-related finding was seen on a chest X-ray.
Profile: DHISObservationXray
Example: example-observation-xray
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Test code | DHISObservationCodeVS | LOINC#30745-4 (Chest X-ray) |
Observation.code |
| Finding present | - | false |
Observation.value (boolean) |
Records the result of an HIV test performed as part of TB/HIV co-infection screening.
Profile: DHISObservationHIV
Example: example-obs-hiv
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Test code | DHISObservationCodeVS | LOINC#56888-1 (HIV testing) |
Observation.code |
| Result | - | true |
Observation.value (boolean) |
An inpatient admission for TB treatment. There is no DHIS-specific Encounter profile; use UZ Core directly. diagnosis.condition links the admission to the TB diagnosis.
Profile: UZCoreEncounter
Example: example-dhis-encounter
| Information to record | Value set | Example code | Stored in |
|---|---|---|---|
| Class | v3-ActCode | v3-ActCode#IMP (inpatient encounter) |
class |
| Status | EncounterStatus | completed |
status |
| Admission period | - | 2026-02-12 to 2026-02-18 |
actualPeriod |
| Diagnosis | - | reference to DHISCondition | diagnosis.condition |
| Diagnosis role | encounter-diagnosis-use | encounter-diagnosis-use#final (Final) |
diagnosis.use |
These resources are referenced by the records above and use UZ Core profiles directly.
| Resource | Profile | Example | Role |
|---|---|---|---|
| Organization | UZCoreOrganization | example-organization | The TB treatment facility |
| Practitioner | UZCorePractitioner | example-practitioner | A clinician involved in care |
| PractitionerRole | UZCorePractitionerRole | practitionerrole-001 | Links a clinician to a facility |