Description: This workflow describes the process that the Shared Health Record will go through to save an inbound encounter.
Sponsor: SHR community
Last Modified: 12th March 2015
Interfaces that an SHR should support
A Shared Health Record should support receiving of clinical document using an XDS.b interface. The document that is receives are expected to be IHE profiled CDA templates.
Another option for an interface into the SHR was to parse the document at the IL and pass the document in object form to the SHR for storage using a custom interface. We decided against doing this as the cons out weighed the pros. The pros and cons of this approach are listed below:
- The IL needs to process the CDA document for validation reasons, if we were to parse the CDA documents at both the IL and the SHR this is an inefficiency. It would be better if this was just done in a single place.
- To uphold the architectural principles of OpenHIE we should support a standardised message exchange format such that SHR implementation can be swapped out as needed.
- Even an object model would have to be persisted to some format so that it can be sent across the wire, these may only be slightly more efficient than just persisting the document back to its CDA format.
- Parsing the document was found to occur very quickly, the part that takes time is the validation that the document conforms to a particular template. We could configure the systems such that the IL does the validation and therefore the SHR can skip the validation step for efficiency.
- The SHR can be setup so that it processes the CDA document asynchronously, this allows it to respond to a save document request as quickly as possible (see the workflow below, steps 8 - 10).
For a more detailed design of how this can be implemented in the OpenMRS SHR reference application see: OpenMRS as the SHR design document.
|1||Send clinical document||XDS.b provide and register|
|2||Register document metadata||XDS.b specified transaction|
|4||Forward clinical document||Internal system function|
|5||Store document as-is|
|7||Send clinical document||Internal system function|
|8||Parse and extract understood discrete data from the document|
|9||Persist understood discrete data|
|11||Acknowledgement that document was stored||XDS.b provide and register response|