Some years ago, when I started working with electronic health records (EHRs), I discovered UCUM, the "Unified Code for Units of Measure" which is used for all quantitative data in them. So I started teaching UCUM to my students. UCUM also publishes an XML file, the "ucum-essence.xml" file, which in principle should allow to do automated unit conversions, as it allows to decompose each string that is in UCUM-notation into the base units (m,g,s,...).
So I found a student, Milos Ilic, who agreed to develop a Java programm for unit conversion with a nice graphical user interface, as part of his Bachelor thesis. He succeeded doing so (well done!) - here is a snapshot of his application:
It allows the user to select a property (pressure in this case), and then allows to select a source unit plus a prefix for it (cm water column in this case) and a target unit plus a prefix (mm mercury column in this case), and then do the unit conversion.
Just to be clear, the application does not use a conversion table, it decomposes both cm[H2O] and mm[Hg] into its base units (m,g,s) allowing to generate the conversion factor "on the fly".
But this was just a first step, as the Java application (though excellenly made) still has a number of disadvantages:
- it requires a human to use it
- you can't call it from within your own application e.g. saying "please let me know how many mm mercury column 100 cm water column is"
- it does not support more complex, composite UCUM strings like "mm[Hg]/min pressure decrease"
- it does not support annotations, like in mmol{creatinine}/ml
So a "web service" was due.
And yesterday, I finally could finalize writing (and especially testing) the code. The service is a RESTful web service, allowing any modern computer application to ask the service questions like: "please let me know how much 0.25 pounds per square inch per minute" is in "millimeter mercury per hour". Here is the result when displayed in a browser:
You can find all the details about the web service at:
http://xml4pharmaserver.com/WebServices/UCUM_webservices.html
So how could this web service be used in healthcare and in clinical research? Here are a few possibilities:
- allow EHR implementations to do unit conversions automatically
- if CDISC would allow / mandate UCUM units (it only very partially does so for lab units), automate the process of converting original results (--ORRES) to standardized units (--STRESN)
- allow the FDA tools to validate whether a conversion between original result and standardized has been done correctly
- allow the FDA to compare lab results across studies and sponsors (they can't right know) - another requirement for this is that they use LOINC for lab test codes
- and much much more
But I do encourage you to at least use this web service in your pilot applications!
No comments:
Post a Comment