OpenSRP Engineering Documentation

website·Indexed 32 days ago

https://docs.opensrp.io

Technical documentation for configuring and developing with OpenSRP, focusing on FHIR-based application configuration, CQL (Clinical Quality Language) implementation, Android FHIR SDK, and the management of Questionnaire resources, PlanDefinitions, and event workflows.

Tokens
71.6K
Snippets
226
Records
392
Agent score
58%

What's inside OpenSRP

  1. Overview of fhir-tooling utilities

    The fhir-tooling suite provides a set of specialized tools to simplify FHIR data management, including resource conversion, validation, extraction, uploading, and cleaning. The suite consists of four primary utilities:

    • cleaner: Removes specific FHIR resources from a FHIR API based on user-defined filtering criteria for data maintenance.
    • efsity: Manages FHIRCore app configurations and content via command-line conversions, validations, translations, and publishing.
    • importer: Handles bulk operations for FHIR resources and Keycloak roles using CSV files (supports creation, assignment, updates, and duplicate deletion).
    • uploader: Automates the process of uploading content to a FHIR server via command-line execution and configuration.
  2. Overview of OpenSRP 2 data synchronization tags

    OpenSRP 2 uses five key data elements (tags) added to every resource created by the mobile app to determine how data is synchronized from the server to the device. These tags enable precise synchronization based on the user's organizational and geographic assignments.
    - care-team-tag-id
    - practitioner-tag-id
    - location-tag-id
    - organisation-tag-id
    - related-entity-location-tag-id
  3. Overview of OpenSRP and the Smart Register concept

    OpenSRP is a digital health platform designed to augment the capabilities of frontline health workers, particularly in low-resource settings. It replaces traditional paper registers with a "Smart Register" approach. This digital transition focuses on usability and quality of care by introducing "tasks" (assigned to-dos for practitioners to track due services) and automated data validation checks with decision support for health issues.
  4. Overview of the OpenSRP Platform

    OpenSRP is a FHIR-native medical record system designed for health workers to manage patients for child and maternal health. The platform consists of three primary components:

    1. Android App: Used by health workers for patient enrollment, care plan management, task assignment, and tracking overdue patients.
    2. Admin Dashboard: Used by administrators to manage user accounts, organizational structures (locations, facilities), and view patient information.
    3. Analytics Dashboard: Used by M&E analysts and managers for aggregated reporting and data warehouse access.
  5. Overview of OpenSRP Electronic Immunization Registries (EIR) Package

    The OpenSRP EIR Package is a WHO standards-based platform designed for healthcare workers to manage immunization delivery at both facility and community levels. It is built on the FHIR-native OpenSRP 2 platform, supporting WHO SMART Guidelines and interoperability with national platforms like DHIS2. Key capabilities include offline data registration, patient enrollment in care plans, immunization scheduling, and real-time data dashboards to replace paper-based reporting.
  6. Overview of Indicator Reports functionality

    Indicator reports provide a lightweight, configuration-driven method for generating health metrics without requiring Clinical Quality Language (CQL). The system uses FHIR Encounters as the temporal anchor to enable date-based filtering of resources. When a user selects a period (month or year), the system calculates the startDate and endDate and applies these as filters to the configured FHIR queries.
  7. Overview of PDF generation using HtmlPopulator

    The PDF generation feature uses the HtmlPopulator class to dynamically populate HTML templates with data from a QuestionnaireResponse. It works by replacing custom tags in the HTML with actual user responses. To reference data from specific questionnaires, use the questionnaireId/linkId format.
  8. Overview of PlanDefinition in OpenSRP

    A PlanDefinition is a pre-defined group of actions used to generate CarePlan and Task resources for a Patient or Group based on specific workflows (e.g., ANC, PNC, Child Vaccination). It supports conditional logic via triggers and conditions to determine if an action should be taken. The generation of these resources is typically performed via the $apply or $lite operations.
  9. Manage childhood immunizations using the Immunization module

    The Immunization module follows WHO guidelines (supporting child immunization, Covid-19, and HPV) and can be localized to Ministry of Health (MoH) guidelines. Key capabilities include:

    • Patient Management: Register patients with unique IDs and prevent duplicates.
    • Scheduling: Automatic creation of immunization schedules based on WHO guidelines.
    • Service Recording: Track antigen/vaccine, dose, lot, date, and reasons for vaccine refusal.
    • Outreach Planning: Generate lists of children per village/location due for specific vaccines on a given day, featuring color-coding for overdue status.
    • Safety & Growth: Record adverse events linked to vaccine lot numbers and track growth/nutrition (including automatic Z-score and MUAC measurements).
    • Interoperability: HL7 FHIR native with built-in integration for DHIS2 and optional integrations for LMIS and CRVS.
  10. Understand Clinical Quality Language (CQL) basics

    Clinical Quality Language (CQL) is a human-readable authoring language standard by HL7 designed to harmonize electronic clinical quality measures (eCQMs) and clinical decision support (CDS). It provides a structured way to express logic that can be processed electronically, replacing older logic expressions defined in the Quality Data Model (QDM). CQL allows for modular and flexible logic that can be shared across different measures and decision support systems.
  11. Use in-app reports to track health worker progress

    OpenSRP provides in-app reports that generate indicators based on a user's patient list. These indicators allow community health workers to track progress, identify gaps in coverage, and measure achievements against goals or targets set by health supervisors.
  12. Implement Covid-19 Smart Vaccination Certificates using DDCC:VS

    OpenSRP FHIR Core implements the WHO Digital Documentation of COVID-19 Certificates: Vaccination Status (DDCC:VS) protocol. It allows for enrolling patients, tracking vaccination status, and generating Digital Smart Vaccine Certificates embedded in QR codes.

    Supported recording modes include:

    • Paper first: Data is recorded on paper then entered into the digital solution.
    • Offline digital: Data is recorded in a secure offline solution and later uploaded.
    • Online digital: Data is recorded and updated in real-time.

    Required vaccination data elements for recording include:

    • Vaccine/prophylaxis, brand, manufacturer, and market authorization holder
    • Vaccine batch number
    • Date of vaccination, dose number, and total doses
    • Country of vaccination and administering center
    • Health worker identifier
    • Disease or agent targeted
    • Due date of next dose (if applicable)