Wiki Spaces


Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack


Page tree
Skip to end of metadata
Go to start of metadata

2014 Internship Project

This project is being considered as a potential project for 2014 Internships. If you are a potential intern and are interested in working on this project, please discuss it in detail with the mentor(s) listed here before submitting your internship proposal.

Primary mentorSuranga Kasthurirathne
Backup mentorJeremy Keiper
Assigned toVaibhav Agarwal


As part of the OpenHIE initiative, OpenMRS will be able to support the parsing of CDA documents into OpenMRS domain objects. However, we are yet to identify the best approach to support the parsing of OpenMRS domain objects into a CDA document.

In 2012, OpenMRS introduced the HL7 Query module, which allows users to export OpenMRS data in the form of hl7 v2 data. The hl7 messages are generated based on groovy templates, which are created by administrators, and populated with data based on requests made by users.

Given that OpenMRS is taking steps towards supporting HL7 v3, there is benefit in developing an alternative module which uses a similar approach to generate CDA documents based on the user's requests.


The scope of this project is limited to producing CDA documents. How they will be delivered (wrapped in DS.b envelopes or HL7 messages) will be concluded elsewhere.

Project Champions

Suranga Kasthurirathne


  1. Review and identify CDA profiles to be supported in the first phase of the module release
    (Potential profiles to be considered for implementation are Antepartum Summary (APS), Antepartum History and Physical (APHP) and Antepartum Education (APE) etc.)
    Tangent : The above profiles are all maternal care related profiles. What others are relevant in terms of clinical care?

  2. Create a basic module using the module archetype and upload it to a new Github repository

  3. Following the basic architectural principals adopted for the HL7 Query module, develop a new set of templates and sub templates which can be grouped together to produce CDA documents populated with OpenMRS data
    This includes,
    1. Identification of suitable sub templates
    2. The resolution of zero or many or one or many relationships between sub templates
    3. Validation procedures
    4. Optimal mapping of OpenMRS data to CDA profiles (etc. resolution of 'null flavour' and other challenges)

  4. Implement mechanisms to trigger CDA profile generation and message retrieval from the new module

Extra credit


For more information on IHE profiles and templates, please refer to the following sites,




  • No labels


  1. user-f443b

    Hi Suranga , 

    I need to talk to you about this project , many times I have pinged you on IRC , but I guess couldnt catch u there , what is an appropriate time to chat with you 

    1. Hi Abhishek,

      I'm sorry, unfortunately, we seem to be based in two conflicting time zones, and I see your messages long after you are gone (sad)

      Given that you are normally awake when I'm asleep, perhaps we could communicate via my openmrs email ?

  2. user-f443b

    Hi Suranga , 

    I guess it would be better if we communicate via these comment coz we r unable to catch each other . I had several questions on the module they are as follows :

    1. CDA (Clinical Document Architecture) gives us an overall view of how does a document look like , CCD as well as CCR is a narrower and more precise view of CDA document and last year it was one of the GSOC project to export the patient details in the form of CCD according to me what i understood is APS , APHP , and APE are IHE profiles which you would want to export as a CDA document . Am I right please correct me on this .
    2. Now in order to produce this data , should we use patient search widget or HL7 query module , I am not quite clear on this , I have not checked how does the HL7 query module work , I would check that . 
    3. I also understand since everything is concepts in openmrs we would have to group the concepts according to the above mentioned profiles and then map it . 
      I need to understand , do i have a correct understanding of the project or am i on different track
  3. Hi user-f443b, I'm unable to find your email address on the wiki. Could you please reach out to me on my email address surangak[at]openmrs[dot]org ? and we could discuss your questions.

  4. Hi Suranga,

    I like to work on this. What are the technologies that I should possess before applying/. (smile)