Primary Mentor

Backup Mentor

Assigned toTBD

This project has significant ramifications not only within OpenMRS, but also with content providers (e.g., CIEL) and is not a priority for any stakeholders. Therefore, this project is being shelved and its associated ticket marked as "wont fix." We can revisit this in the future if/when needed.


OpenMRS uses a central concept dictionary to define much of the clinical data that are stored. Instead of having a "pulse" attribute hardcoded into a database table, the idea of "pulse" is entered into the concept dictionary and, when a patient's pulse is recorded, an entry is added to the observation table referencing the "pulse" concept within the dictionary. Concepts in the dictionary are categorized (or classified) using Concept Classes.  Some of the pre-defined concepts classes include "Test", "Procedure", "Drug", "Diagnosis", "Question", "Anatomy", etc. This list was a rather arbitrary classification scheme created to place concepts into high level "buckets" based on how there going to be used within the system. We've gotten very far using a relatively small number of concept classes and the constraint of each concept being assigned to a single concept class; however, as the number of implementations & distributions of OpenMRS grows, the constraints of concept classes are beginning to cause problems.


The goal of this project is to provide more flexibility in classifying concepts by allowing concepts to be assigned to more than one class, while providing backwards compatibility so the large body of existing code does not break in the process.

Required Skills