Data Tier

The Net4Care server receives observations and queries and depends upon the data tier to provide storage and retrieval.

The data tier is designed to store observations using the Personal Health Monitoring Record (PHMR) format which is a HL7 Clinical Document Architecture (CDA) format. This format has been chosen as it is an international standard adopted by Continua Alliance, and thus a chance that future EHR and GP systems in Denmark will be able to read these observations.

As storage tier Net4Care is designed to use Cross-Enterprise Document Sharing (XDS.b). XDS.b is an IHE standard that allows many large volume document repositories to be indexed by a single registry.

As explained in the "Configuring Net4Care" the server is by default configured with a much simpler data tier, using a SQLite database. This is to facilitate easy experimentation.

Below we describe some notes and experiences of PHMR and XDS. The treatment is not comprehensive, for further information, contact the Net4Care team.

PHMR: Personal Health Monitoring Record

The Net4Care framework stores observations in the HL7 format Personal Health Monitoring Record (PHMR).

Quite a lot of effort has been invested in the project in order to understand the underlying HL7 format and the specific PHMR specialization. The following guide is an attempt to convey our effort to climb the rather steep learning curve in the hope that someone will be able to climb it faster than we did.

Please observe that the following bits-and-pieces of informations and advice reflect our understanding and may be flawed, and also that our aim has been very specific (storing measured clinical values) and thus does not reflect the versatility of the HL7 standard.

Information resources:

You have to be member of HL7 to download from the site.

XDS: Cross-Enterprise Document Sharing

Overview information on XDS can be found at

We have proof-of-concept end-to-end scenarios running on a Microsoft open source XDS. To experiment you need to:

  • Download and install MS XDS. This is an open source, free, implementation available on CodePlex: Our code is based upon the January 2012 release.
  • To install all relevant software and execute the XDS.b on a Windows Server 2008, we have developed the following guide: WinServer2008 XDS Install Guide (In Danish).
  • Optionally follow the alternative XDS konfigurationsvejledning by Ivan Overgaard, Silverbullet. (The guide is in Danish.) It explains how the XDS registry and repository to be run in debug mode in Visual Studio.
  • If you use the guide above, the following minor corrections have been spottet by our programmer, Morten Larsson. XDS remarks
  • Enter proper person ids in table XDSRegistryDB.dbo.Patient, attribute patientUID, using SQL Manager. The XDS Registry will not accept documents for a person whose ID is unknown.


There are many limitations in the current setup.

  • The HL7 OIDs in the PHMR are rooted in a Net4Care OID. Thus we have just invented OIDs for selected entities. See the file for a list of these.
  • The HL7 Author tag is defined by a 'treatment ID' that is sent from the home client and translated in the server. The current translation is a fake translation as it always identifies the same clinician at our local hospital Skejby Sygehus.
  • The MS Codeplex adapter code that generates ebXML SOAP messages for the XDS registry is desperately in need of clean up, and defines many ebXML (key,value) pairs to dummy values.
  • The advanced query in the manual testing program (when you enter codes in the 'Filter on clinical codes' text boxes) will not work on the Microsoft XDS.b implementation. We discovered some issues in the implementation that we believe are defects. We have a version of XDS.b in which these defects have been fixed and queries that filter on clinical codes work correctly. Contact the Net4Care team in case you are interested.