At
omnitech, we have been trying to use the ODK to collect data with openXdata however there were many forms that did not render properly on odk.
So we decided to rewrite the whole conversion process of OXD to ODK xforms reusing the library we developed for the text based form designer.
The library is now ready for beta testing. You Can download the protocol and library here
http://goo.gl/N5uW6ZThis library can render almost any openxdata form that was designed by the oxd formdesigner.
So far these are some of the issues that we have tried to address
- Dynamic selects are now working
- Boolean questions support now working
- Basic conversion of XPath expressions referencing boolean or multi-select e.g /data/mutiQn = 'option' is converted to selected(/data/multiQn, 'option')
- Implemented of jr:count on repeats.(this converts expression like length(.) = /data/q1 to jr:count = '/data/q1').
- Fixing Xpath paths e.g data/q1 is corrected to /data/q1
- Visible and invisible attributes are now supported
- Support for hide and disable actions by negating the logic.
- Validation messages
- Start time and end time
The protocol uses the same code as the official openxdata protocol with just a single change in the ODKProtocolHandler.oxd2odk() method which delegates to the conversion library.
Attached is the protocol and library. Unfortunately for now the converter library Cannot be bundled into the protocol because of the classloader magic that happens in the loading of protocol which leads to memory leaks among the groovy classes.
Instruction of how to install:
Copy the oxdmarkup-parser-0.2-SNAPSHOT.jar and the
For any technical questions, please get in touch with Ronald Kayondo.
Peter Khisa Wakholi (PHD)CEO, OMNI-TECH Ltd,
Skype ID: p.khisa