OpenMRS project is an open-source electronic medical record system — a system which keeps track of patient records. Mainly the project can be divided into the following layers. They can be identified with the three-tier architecture: data, logic and presentation tiers.
- A flexible data model which holds the medical records. OpenMRS supersedes the work of AMRS project led by Regenstrief Institute.
- An Application Programming Interface (API) which encapsulates the data model.
- A Web application which represents the user interface to the whole system. It accesses the data model through the API layer.
The base project can be extended using OpenMRS modules to satisfy specific requirements. These modules plug in to the base system in two ways.
- Aspect Oriented Programming (AOP) provides access to the events of the API calls.
- Extension points provide access to the user interface layer which is similar to the Eclipse plug in extension points.







