At the heart of every OpenMRS implementation is a concept dictionary that defines the medical concepts (questions and answers) used as the building blocks for forms, orders, clinical summaries, reports and almost every aspect of the data. Most OpenMRS implementations have an open concept dictionary - one that is considered incomplete and evolves over time. Therefore, as clinicians document conditions, the OpenMRS concept dictionary must be expandable to accommodate meaningful clinical data.
What follows is an introduction to the Concept Dictionary, OpenMRS's unique foundation, and how it provides flexibility for the implementation.
The concept dictionary represents a fundamental building block of OpenMRS. Similar to a dictionary defining the function, meaning, and relationships of the words, the concept dictionary defines the name, code, and appropriate attributes for any observations or data collected (including medical tests, drugs, results, symptoms and conditions). To even further simplify the concept dictionary, one could compare it to an infinitely large Excel spreadsheet, where patients are represented as rows and concepts are represented by columns.
The concept is the basic element of flexibility in OpenMRS. Concepts are the individual data points collected from a population of patients. Concepts include both questions and answers.
For example, blood type data is collected for a patient. The question is "What is the blood type for the patient?", with a set of discrete answers of "A, B, AB or O". To implement this in OpenMRS with concepts, the question is a concept ("blood type") and each response ("A", "B", "AB" and "O") is also a concept. For this one question, a total of 5 concepts are required.
What about a question where the answer is not a discrete answer? If the question is "What is the name of your first pet?", the answer would be expressed in a text box. It would not be possible to provide a complete list of every possible name for your pet. In this example, there would be one concept -- "name of first pet".
The bottom line is, if you need a medical word within your electronic records system, it needs to be defined within the concept dictionary. More detail about all the possible concepts in a later section.
A single, specific interaction between the patient and a provider. An encounter can be any interaction and includes doctor visits, laboratory tests, food distribution, home visits, counselor appointments, etc. Encounters are typically represented as a form (consisting of hundreds of observations), but could also be a touch-screen patient registration or a single lab test for CD4. For example, a patient visits a health center or hospital. For each electronic form completed for that patient, a new encounter is created. Each will have a unique encounter_id and encounter_type. Forms could be completed by different departments (ie. drug pickup, visit with an HIV clinician, Diabetes visit, food package received), and will have an associated encounter_type (ie. ART Drug Regimen Pickup, Adult intake, food assistance, lab test, etc). Each encounter has an encounter type, date/time, location and provider.
Anything actively measured or observed during an encounter. As an example, patients' weights, heights, blood pressures, and BMIs are observations, as well as qualitative facts including the number of years a patient smoked, the activities in which the patient experiences shortness of breath, and finding on an X-ray. Although typically an observable question, demographics are an exception, and are recorded as separate concepts. Each observation has a unique obs_id.
These are possible scenarios for encounters and observations:
Demographics are any descriptive characteristic of a person. This includes: name, address, date of birth, age, and any other social construct involvement.
A fully-specified name is a term that fully describes the concept in an unambiguous way. A concept must have at least one fully-specified name (in any locale).
This is the preferred name to use within a locale. By default, this is the fully-specified name; however, full-specified names are sometimes long and more detailed than necessary for day-to-day use. In those cases, a synonym can be defined to be the locale-preferred name. There can only be one preferred name within a locale. The primary term should be the word(s) used most often by those who will have access to the records to prevent duplicate concept creation.
A shortened version of the primary name for use in space-constrained contexts (e.g., a column header in a spreadsheet). OpenMRS does not enforce a length limit on the short name, but a target of eight (8) or fewer characters is suggested (to work as a column header for programs like SPSS or SAS).
A clear and concise description of the concept, as agreed upon by the members of the organization or the most commonly referenced source.
Any valid, alternative names for the concept. This includes acronyms, abbreviations, and other names that reference the primary name. You can include your organization's more informal names for concepts here.
Index terms are names that should never be displayed as the name of the concept, but are useful for indexing (helping users find concepts). Examples would be common misspellings of names (allowing users who enter the misspelling to still find the concept) or a barcode value for a vaccine (allowing users to scan the bottle when creating an observation and find the appropriate concept).
The classification of a concept. This classification details how a concept will be represented (i.e. as a question or an answer). The current list of classes include:
The structured format you desired the data to be represented as. The current types are as follows:
A method to keep track of the number of updates applied to a specific concept.
Imagine attempting to graph the trend of a patient’s weight over time, and having several different concepts which refer to recorded weights - you’re looking at a lifetime of rummaging through non-standardized paperwork and measurements. If one properly uses the concept dictionary, they will be able to analyze any concept, no matter what encounter and form it was recorded in. The Concept Dictionary guarantees that all weights will be recorded as weights, and not under various headings.
As simple as it can be explained, OpenMRS is an infinitely large filing cabinet. Within that cabinet, each patient has a file. Within that file are a series of encounters, each consisting of hundreds of observations. As the patient continues to utilize the healthcare system, they will become associated with a limitless number of observations. Each of these observations consists of a question (what is the patient’s weight) and an answer (140lbs); the Concept Dictionary easily links these two concepts together. Because of this automatic correlation, there is a necessity for all concepts to be properly crafted.
So, you’re not exhausted from the descriptions, and you want to create a concept? Before you create your concept in OpenMRS, contemplate these three steps:
Do you have all of the information ready? Then it's time to walk through a primary concept definition, and the basic attributes this includes.
This is completely up to you.