Here’s an example of a binding that uses existing standards (specifically OpenSearch and hData/RHEx) to transfer patient prescription history in NCPDP XML format over HTTP. It consists of two components: a PDMP testbed written in Ruby on Rails that simulates a PDMP serving prescription history, and a plug-in module for the OpenMRS electronic health record system written in Java. Both are open source.
hData is what’s known as a “RESTful” style transport. It’s very flexible. We originally implemented both components using a Green CCDA, but when the working group reached consensus on NCPDP as a data representation, I was able to add NCPDP to the testbed in a completely back-compatible way: existing clients saw the CCDA data that they wanted to see while new clients saw the NCPDP format. This allows old clients to co-exist with new ones so you don’t need complicated “flag day” upgrades.
The spec is https://raw.github.com/project-pdmp/spike/master/doc/srpp.txt.
You can find background info on OpenSearch at http://www.opensearch.org/, Project RHEx at http://wiki.siframework.org/RHEx and hData at http://www.projecthdata.org/ .
The code for both the testbed and OpenMRS module is at https://github.com/project-pdmp .
Comments welcome!
So my net is that by reusing the HIEs that are already in place we minimize the work required by the state PDMP teams as well as by the EHR vendors. We will still need the EHR vendors to add some workflow functionality to make the use of PMP much more seamless for the providers. I can write on my vision for workflow later and in a more relevant topic.
Eric Hilman