CIEL OpenMRS server for mds packages of concepts

At Partners In Health, we still have a convoluted way of adding CIEL concepts to our OpenMRS software deploy. Hopefully this will be replaced by the ongoing OCL work.

In the past, we supported an OpenMRS cloud-based server (mdsbuilder) with the latest OpenMRS and CIEL releases, and used that to create metadata-sharing packages which were imported into the PIH concept server and module packages ( That server was available to the OpenMRS community.

Since the mdsbuilder server was deleted, I have a local CIEL SDK which I use privately for our pipeline.


  1. What’s the current state of the OCL/OpenMRS server? Does this have the CIEL dictionary and could this be used for creating mds packages? Is this on the latest OpenMRS release? @darius?
  2. Would it be helpful to have an OpenMRS server with the latest CIEL dictionary to replace mdsbuilder? Would others use it? @ssmusoke? @sletchford?
  3. If so, can OpenMRS provide this infrastructure? It’s straightforward OpenMRS (2.1.3) with Legacy UI (1.3.3), Metadata sharing (1.5.0), and Metadata mapping (1.3.4) modules. (No problem with upgrading any of these versions.)


Reportedly, to maintain support for legacy versions of OpenMRS, I am going to have to maintain different versions of OpenMRS with the lastest version of CIEL loaded. I will use OCL to synch, but then export the files in the same manner as I have done with each release for the last xx years. Perhaps these versions should be available in the cloud?

I would say it’s still pre-alpha. Perhaps someone can comment on when exactly the alpha/beta release will happen?

Since the release of the metadata module, requires updating mdsbuilder with the latest version of the CIEL database ( and the mdsbuilder is no longer available), how should this step be performed?

PS: I am referring to this wiki for the steps to release the Metadata module

@ball @akanter @darius

I missed this topic earlier.

We actually have a mdsbuilder server now, thanks to @raff:

In all fairness, you can run locally with docker:

git clone docker-compose-apps
cd docker-compose-apps/files/mdsbuilder
docker-compose up -d

That said, even then the process to include CIEL concepts to OpenMRS is convoluted to say the least. It requires access to manually download things from dropbox, SSH to a machine, run mysql commands.

I now that OCL will be eventually available, but I suppose that we’ll need to use OCL to every bugfix/stable releases of openmrs platform, right? I don’t believe we’ll back port OCL to stable versions.

Is that’s the case (and please let me know if it’s not), I’m really interested on improving this next year.

  1. Is there any reason why the files are not publicly available? My understanding is that access is required. I wouldn’t mind if it’s public on dropbox, bintray, github.

  2. I don’t have access to the files, but docs lead me to think that it’s an SQL that will replace some tables. Wouldn’t it be better to always have a brand new database to import CIEL concepts? Is there any reason why we’d need to keep backups on this server at all?

Thanks and excellent news @cintiadr.

The process is convoluted. Since releases of CIEL are not so frequent, it’s not too tough to do manually. Not ideal, but happy to pitch in. Until OCL fixes everything.

I don’t have access to the files, but docs lead me to think that it’s an SQL that will replace some tables. Wouldn’t it be better to always have a brand new database to import CIEL concepts? Is there any reason why we’d need to keep backups on this server at all?

  1. Better to have a new database, in case some table was modified.
  2. The CIEL releases only have the concept* tables.
  3. No backups needed.
  4. I have access along with hundreds of others.
  5. @akanter can respond on access to the CIEL files. @cintiadr Can you recommend a public preference for this?

On that case, it shouldn’t be very hard to get something together to download the file before starting docker, put in on the right folder, and start db+openmrs docker with an empty database. That would allow anyone with CI access to update it whenever, or run it locally.

To be fair, as far it’s a public url I can use curl to download, it wouldn’t be hard. I believe a public folder in dropbox would be more than enough.

If you want access to the current setup/server, just send me your pub key via a JIRA ticket, it’s not hard.

I asked @reubenv to update the docs to explain the new way of doing it :slight_smile:

@cintiadr sure thing, I’ll update the docs one I have managed to complete the process myself :smile:

Btw, slightly off-topic but what are the credentials to the mdsbuilder server(i.e. the UI)?

Just send it via :smiley:

It’s a small little thing, shouldn’t take long.

The OCL subscription module is progressing nicely. My understanding was that it was going to be back ported to other versions, but that might still be a community decision. As for now, the dropbox files are not available to just anyone. We request that you register and subscribe to the folder which contains the correct versions. You could write your script to access the version that gets synched to your personal folder.

I will be at the Implementer’s meeting next month and we can all discuss better processes for ensuring terminology is managed properly. OCL is the way of the future, however, and it would be best to plan to subscribe via OCL.