Integrated and Simplified Data Quality Tools
Background
We would like to provide and encourage the use of data quality tools to help implementers manage their data. We have a couple of module that provide aspects of support for data quality, namely the ?Data Integrity Module and the ?Patient Flags Module. The goal for ?OpenMRS 1.9 is to fold these modules into the standard distribution of OpenMRS and bring their functionality to a level that there is at least some basic functionality useful "out of the box."
Design
We will have a discussion on the ?2011-01-06 Developers Conference Call to demo existing functionality and flesh out plans/scope.
Requirements
Data Integrity
Administrator can create simple queries to monitor and address simple data errors.
Documentation ready for end users
Patient Flags
Administrator can create simple rules (known as "flags") for displaying messages on the patient dashboard
(An example flag  would be an alert message on the patient dashboard for all patients with a CD4 COUNT above 200)
Can define flag using Logic, Groovy, or SQL
Can define a flag so that it only appears for users with specific roles
Can assign a priority to the flag
Can modify the display style of flag messages based on priority
Configures two display points where flags can be displayed: in the patient header, and on the patient overview page
Provides an interface for defining other display points
Provides the ability to run a flag against the entire patient set and return all patients for which the flag evaluates to "true"
Provides an API so that that other modules can create and modify flags
Documentation ready for end users