Introduction
This page provides an abstract specification for the vEHR (virtual EHR) service in openEHR.
Source Specifications
Below are some service definitions used in current openEHR products, from which design concepts have been drawn for the openEHR vEHR service.
Iaso IEHR - A Patterson
To get the thought juices flowing - here is the IEHR interface our product uses - it works ok for our specific use cases but obviously could be
fleshed out with other use cases. I am interested in other approaches people are taking.
All interactions in the session have ACID properties
Iaso IEHR
[ServiceContract(ProtectionLevel = ProtectionLevel.EncryptAndSign, SessionMode=SessionMode.Required)] public interface IEHR { [OperationContract(IsInitiating=true)] void StartSession(string recordTargetRoot, string recordTargetExtension); [OperationContract(IsTerminating=true)] void EndSession(); [OperationContract] void AddVersionedDocument(Message request); [OperationContract] Message GetVersionedDocument(string documentRoot, string documentExtension); [OperationContract] Message GetVersionedDocumentTransformed(string documentRoot, string documentExtension, string transformRoot, string transformExtension); [OperationContract] void Commit(); }