GSoC Coding Week 1 updates

And so the first week of GSoC coding period is finally over and here is my report. First let me give a brief overview of what I am trying to achieve for GSoC.

Currently, for radiologist to create reports using the OpenMRS radiology module, they have to fill in a textarea from the webapp which is stored inside the database as a string. But this is very limiting. Radiologist typically use templates(which are html forms) to create their reports. So I am trying to give radiologists the ability to use these templates from within the OpenMRS Radiology Module and also they should be able to create these templates them self from the UI. So as you can see the problems am trying to solve here is how these html templates will be stored, rendered and how reports will be stored after creating them using these templates.

Objectives

  • Explore OpenMRS XForms to understand how it works with forms since i will be applying similar knowledge to work with radiology report templates
  • Together with mentors decide on how to store these html templates either as HTML or xml and how report that will be saved in the system from these templates
  • Start implementing template management, specifically how to store, retrieve and delete templates.

Achievements

  • Explored how XForms module works with forms and even looked at some of the code to understand how things are done on the backend.
  • Realized that xforms creates xml files for every form and also creates xml file with data to hold data entered through the form. Proposed this to my mentors and we said we will do something similar. That is, we’ll store xml files for every template and another to hold report data. But later I was having second thoughts on this aproach. This is because MRRT radiology report templates are perfectly valid html files and converting them to xml files and storing them locally just to reconvert them some how back to html when rendering them in the web interface seems to be to much work for nothing. I mean we could just store these html files as they are which will make it easier to render on the webapp and if later we need export a version of the template that is compatible with xforms, we can just parse this html files and generate proper xforms version.
  • Proposed a change to our initial design agreement. Still waiting for approval from mentors.
  • Started working on how to support report templates inside the radiology module. The jira ticket for this is RAD-272
  • I created a skeleton of some classes that will handle templates and can be found here on GitHub
  • Explored some opensource libraries to parse html documents and came up with jsoup. Am exploring it now, still to discuss it with mentors to see if they have a better idea.

Issues

  • Well this is not really an issue but my progress is a little bit slow due school CAs(Continous Assesments)

Next steps

  • Continue with the exploration of the jsoup library
  • Fill in implementation for the skeleton classes i’ve created above
  • Make sure RAD-272 is completed and system is able to work with templates
  • Continue with school CAs

Leave a comment