Modeling Patient & Clinical Data in Bahmni (Training)


At the heart of any enterprise electronic medical record system lies a robust, explicit representation of how care information is stored. The structure of this data model dictates the scalability and flexibility of a system. This training will provide a detailed overview of the most important Bahmni data model entities (like Patient, Visit, Encounters, Concepts) and underlying Database schema. This will enabled users to understand the richness associated with a Patient and Clinical Data.


Since Bahmni EMR/Clinical is built on top of OpenMRS, therefore this data model is a representation of how OpenMRS modelling works.

  1. Patient Associated Data Model (MySQL): DB Tables like patient, patient_identifier, person, person_name, person_attribute_type, person_attribute, person_address
  2. Clinical Terminology as Concepts: Concept, concept_name.
  3. Visits and Storing Clinical Data as Observations: Obs, encounter, encounter_type, visit, visit_type,
  4. Patient Identifier Tables: idgen_identifier_source, idgen_seq_id_gen
  5. Creating Observations

Training Video

Data Model & Tables Training Video (Bahmni) (1 hour)

OpenMRS Data Model Overview by Ellen Bell (PIH) (35 mins) 

The Bahmni documentation is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)