CBS Data Integration Demonstration Solution
This solution demonstrates the DISI MVP for data centralization and reporting for HIV case-based surveillance.
Core problem
There is a need for countries to centralize and report on data that is captured at the point of service systems to effectively measure and monitor the progression and outcome of HIV through CBS sentinel events.
Commonly this is done ad hoc per country. DISI refers to the practice of centralizing and integrating HIV case-based surveillance data in a central repository for further reporting, analysis, and visualization.
DISI proposes to create a standards-based architecture that would allow multiple countries to adopt a similar framework for generating the reports that they require.
This would drive the re-use of components and allow countries to rapidly make progress based on what others have done before.
Code Repository
DISI Architecture
The following document describes the DISI architecture in detail as well as describes the set of technologies used in the DISI MVP to create the reference solution.
The description of the conceptual architecture is the most important piece of information to read to gain an understanding of what the DISI architecture can provide.
There is a variety of additional documentation that is available if you would like to deep dive into the system specifications and the details of how everything works together. The following document help to provide those additional details:
Additional References
This document describes the components of the HIV CBS system, from a programmatic perspective. These components together achieve the goal of integrating data from multiple sources while ensuring the availability of quality data in a manner that ensures privacy, security, and confidentiality.
The minimum dataset specifies the data points needed per sentinel event needed for CBS. Like the sentinel events, this dataset is the absolute minimum required and a good starting point for a CBS system. Countries may wish, and in many cases do, expand the minimum dataset to a more appropriate list meeting their use case.
This spreadsheet maps the minimum data set to FHIR resources
Functional and Non-Functional Requirements
The requirements specification document describes a minimal viable product (MVP) that is intended to specify and track the necessary information required to effectively define business, functional, and non-functional requirements to establish a CR and DR for CBS data.
This document outlines the processes for patient matching and linking for the DISI MVP. The business processes are described using process flow diagrams.
This document describes the data exchange processes and workflows, the bidirectional transactions between the components and the boundaries of each system and their interaction. In addition, standard messaging formats are included with a recommended standard for the DISI MVP.
Data Repository SpecificationThis document describes the technical solution designed for the DISI MVP to support the HIV case based surveillance use case. This is in line with the OpenHIE framework. The solution includes the high level patient record data structure on the Data Repository (DR) and how it is combined with the Client Registry (CR) data to be used for later analysis, reporting and visualization. Included is how the data from different source systems is managed so that a single longitudinal record is considered.
Patient Matching and Linking Processes
This document describes the technical patient matching patterns, detailing the creating and updating of new HIV case report data as well as how to resolve possible duplicate records by linking and unlinking records.
The purpose of this document is to outline the use cases for all the components of the DISI MVP.
Analytics and visualisation specificationsThis document specifies case-based surveillance trends and outcomes typically by demographics or region, all geared towards informing the HIV epidemic. Dashboards are developed with this in mind and provide visual representations of this information.
Integration documentation
For details on how to integrate with the DISI MVP solution, see the FHIR Implementation Guide that has been created. It describes the message formats as well as the API endpoints to be used.
A postman collection is provided as an example of how to interact with the DISI Solution. The folder that you should look at for submitting case reports is the "Submit bundle" folder.
A test environment has been set up in the sandbox that you may use for ad hoc testing. The endpoints to use are:
- CSV: https://oh-route.gicsandbox.org/csv
- FHIR Bundle: https://oh-route.gicsandbox.org/fhir
The required auth header for both of the above is:
Authorization:Custom test
MVP Reference Technologies Used
- OpenCR
- OpenHIM
- HapiFHIR
- FHIR
- jsReport
- Elastic stack
- Instant OpenHIE
Solution Demonstration
Video demonstration
Hands-on
To view a live running instance of the MVP use the links below. To send in test data to the system you may use the following postman collection:
Submit data by using the "Submit random bundle - full" request. Edit the request URL to point to the hosted demo implementation: ‘https://oh-route.gicsandbox.org/fhir’
Once you submit data you should be able to:
- View the transaction in the OpenHIM
- View the newly created patient in OpenCR
- See the figure change in the HIV Dashboard in Kibana
- See the figure change on the report in jsReport
Kibana | Explore data, view live dashboards | elastic | dev_password_only | |
Component | Purpose | Username | Password | Link |
jsReport | Generate specific reports | admin | dev_password_only | |
OpenCR | View client registry records and manage patient matches and links | root@intrahealth.org | intrahealth | |
OpenHIM | View incoming transactions and history | root@openhim.org | instant101 | |
For OpenHIM: Please ignore the red warning and click the blue link within that to continue.
Solution setup
Note: the MVP is for demonstration purposes only, it will be productionized over time
See the Github readme for details on how the solution can be set up.
Community Pages
Content will be added when available.