Documentation
Overview
The aim of this project is to produce CDA documents from OpenMRS data objects on the user's requests.The Clinical Document Architecture(CDA) is a xml based standard for exchange of health information records, it is means to ensure interoperability.we have used MDHT API to produce CDA Documents.
This document will cover following information :-
- What types of CDA Documents or Messages are currently supported by the CDA Generator module
- How users can extend on CDA Generator module
- How we are populating sections of APHP CDA Message
- Installation of the Module
- Screenshots
- Quick Demo
What types of CDA Documents or Messages are currently generated by the CDA Generator module ?
This release of module only generate APHP CDA Document type. However, developers are free to write up new CDA documents or message ,which can be added to the module. There are many type of CDA documents (APHP, APS, APL,APE, e.t.c) many people refer it as IHE Profiles.
How users can extend on CDA Generator module?
Users can extend module by adding new CDA document Type or Editing existing one. Each CDA document consist of few sections and users can also add new sections to the module or Edit existing ones.The Editing/Adding/Deleting of Sections and CDA document types can be done programmatically through code not the User Interface.
1) Steps to Add a new CDA Document Type
- fork our module from gitub here
- open "CDAGenerator-api"folder
- In src/main/java package try to locate "org.openmrs.module.CDAGenerator.CDAHandlers" package
- Now in this "org.openmrs.module.CDAGenerator.CDAHandlers" package, Create class for new CDA Document Type you need and Note that this class must extend BaseCdaTypeHandler class.
- Add details about documents either using setter methods or adding in constructor. Thats it and new CDA document type is ready!
Image showing location to add new CDA Document Type
Sample Code
package org.openmrs.module.CDAGenerator.CDAHandlers; public class MyCDADocument extends BaseCdaTypeHandler { public MyCDADocument() { this.documentFullName="MyCDADocument"; this.documentShortName="MCD"; this.documentDescription="to add new cda document type"; this.templateid="some free text";//required attribute,not null this.formatCode=null; //optional attribute } }
2) Steps to Add a new Section
- fork our module from gitub here
- open "CDAGenerator-api"folder
- In src/main/java package try to locate "org.openmrs.module.CDAGenerator.SectionHandlers" package
- Now in this "org.openmrs.module.CDAGenerator.SectionHandlers" package, Create class for new section you need and Note that this class must extend BaseCdaSectionHandler class.
- Add details about section either using setter methods or adding in constructor. Thats it and new Section is ready!
Image showing location to add new sections
Sample Code
package org.openmrs.module.CDAGenerator.SectionHandlers; public class MySection extends BaseCdaSectionHandler { public ChiefComplaintSection() { this.sectionName="My Section"; this.templateid="";//ihe specific id this.sectionDescription="This is my new section"; this.code="";//Ihe specific code for section } }
Screenshots
1) When module is loaded Administration tab looks like this
2) Export CDA Document Link
3) Validation of Export CDA Form
4) Successful Generation of CDA Document
5) Error reported, If generated document is invalid
6) Manage CDA Section Link
It list out all sections present in our module and also provide details of each section
7) Manage CDA Type Link
It list out all CDA Document types present in our module and also provide details of each document type