Here at Geneuity, we do a lot of contract research work for sponsors of clinical trials. That sometimes means developing and validating custom assays that aren’t available off the shelf. And this, in turn, often means developing special interfaces for data capture that can’t be configured inside OpenClinica (as yet).
Does that mean we jettison OpenClinica?
No, absolutely not!
Since OpenClinica is open source and dedicated to interoperability, it can be easily extended. This article describes the specifics of one such case involving XForms.
A while back, Geneuity was developing an ELISA to measure the abundance of a specific protein in plasma. We needed a single web form with a spreadsheet-like feel and functionality in which lab technicians could enter data, interpolate unknowns, send the resulting interpolated values for insertion into OpenClinica and then perform source data verification. Additionally, the form needed to be pre-populated with the accession numbers of specimens requiring testing. The form had to work on any browser and not be dependent on any browser plugins. And we had to have it fast.
Impossible? No, not with XForms and the open source XForms renderer betterFORM.
XForms have several advantages. First of all, you author the forms in relatively simple XML while the complicated AJAX that makes the spreadsheet-like feel and functionality is rendered by the renderer and presented to the client browser for you. Secondly, XForms allows you to easily call upon webservices to populate data items in the form. In our case, we developed three such services: one to return a list of accession numbers corresponding to specimens yet to be tested along with corresponding hyperlinks directed inside OpenClinica for rapid source data verification (SDV); another to calculate and graph a standard curve and to interpolate the specimen unknowns; and still another to insert the interpolated values into OpenClinica. The data flow is diagrammed in Figure 1. Although a great deal is going on behind the scenes, the user experience is seamless as a single form is being used while data retrieval and refreshment are being done without interrupting the display (thanks to AJAX as automatically implemented by betterFORM). The form itself is pictured in Figure 2.
And there you have it. The bottom-line: no matter how complicated your data capture requirements are, you can count of the interoperability of OpenClinica.