OpenMRS Public License FAQ

Frequently Asked Questions

This is the OpenMRS, LLC ("OpenMRS") OpenMRS Public License (OPL) FAQ. It aims to answer the most common questions people have about using and distributing code under the OPL.

If you see any errors in this FAQ, or have suggestions for further questions, please contact OpenMRS at openmrs@openmrs.org. Note that these answers are not the OPL. The explanations are not legal advice. If you need to know exactly what the OPL requires, you need to read and understand the license itself; if you need legal advice; you need to talk to a lawyer.

I want to distribute complete and unchanged binary packages of the Original Code provided by OpenMRS. What do I have to do?

Nothing.

The binary form of the Original Code provided by OpenMRS already meet the requirements of sections 3.1 to 3.5, and include the notices required by section 3.6. You may distribute and use it under the terms of the OPL.

If you are offering a warranty, however, you must make clear that it is offered by you alone (Section 3.5). OpenMRS offers no warranties on the Original Code or any other code we make available.

I want to distribute OpenMRS (or other OPL-covered code) that I have compiled myself but not changed. What do I have to do?

You must:

  • add a conspicuous notice stating where to find the exact source to the binary you are distributing (Section 3.6)
  • if your documentation has a section dealing with licensing or the recipient's rights to the code, put a copy of the OPL in it. (Section 3.5)

You may distribute any binaries you create under a license of your choosing, as long as it doesn't interfere with the recipients' right to the source under the OPL (Section 3.6).

I want to distribute a modified version of OpenMRS (or other OPL-covered code). What do I have to do?

You must

  • add a conspicuous notice stating where to find the exact source to the binary you are distributing. (Section 3.6).
  • if your documentation has a section dealing with licensing or the recipient's rights to the code, put a copy of the OPL in it. (Section 3.5)

In addition, there are several obligations relating to your Modifications. You must

  • have the right to distribute your Modifications (Section 3.4 (c))
  • add a correctly-completed OPL header to any new files which are Modifications (Section 3.5)
  • make your Modifications available in source code form, under the OPL (Section 3.1)
  • make your Modifications available on the same media as the executable version, or via the Internet as long as they are available for 12 months (Section 3.2).
  • document what your Modifications are (Section 3.3)
  • include a statement that your code is derived from the particular piece of OPL code you started with (e.g., the Original Code), and a list of the names of the Initial Developers of that code (Section 3.3).

How "viral" is the OPL? If I use OPL covered code in my proprietary application, will I have to give all the source code away?

The OPL is not as "viral" as the LGPL or the GPL forms of public licenses. To determine the level, you must focus on the definition of a "Modification" in the OPL (Section 1.9).

What is a Modification? Any changes to OPL covered files, or new files into which OPL covered code has been copied, are Modifications and so fall under the OPL. New files containing only your code are not Modifications, and are not covered by the OPL.

Files which fall under the OPL because they are or because they contain Modifications must be made available as detailed in the OPL.

Who has the right to publish new versions of the OPL (Section 6.1)?

Only OpenMRS may publish revised and/or new versions of the OPL from time to time. Each version will be given a distinguishing version number.