Showing posts with label HL7 v3. Show all posts
Showing posts with label HL7 v3. Show all posts

Friday, November 2, 2007

HL7 v3 sample Code from Microsoft

My complaint has always been the lack of available open source code for HL7 v3. Microsoft has been great in recent years by releasing sample .NET code such as the "Application Blocks" (see for example) and various reference architectures. They have now released code for a working sample HL7 v3 application using BizTalk. I'm not really crazy about the undue complexity in implementing HL7 v3, but I hope Microsoft can make it more practical to implement using their platforms such as BizTalk.

Go take a look at Roberto Ruggeri's blog item: Getting Started with HL7 Version 3 and BizTalk Server 2006 (R2) for more information.

Here is the link to the sample code. Here is the whitepaper on getting started with BizTalk and HL7 v3.

Wednesday, October 10, 2007

HL7 v3, A Challenge in Implementation

Its been a while since I've written a technical blog entry. HL7 is a favorite topic of mine, especially HL7 v3. Therefore, after reading David Li's piece in NeoTool's blog, Preparing for HL7 V3, I was motivated to give my 2 cents on the topic.

I've spent a lot of time trying to implement a practical HL7 v3 solution. I quickly realized that to use it for messaging would be highly impractical. There are just too many possible interpretations of how to convey a message using the v3 messaging model. A great quote I remember describing HL7 v3's XML structure, was "they used every trick in the book".

What I did find helpful however was the RIM (Reference Information Model) as a health-care data model. Having said that, I would caution against using the HL7 v3 RIM to model a logical relational database design.

RIM can serve as a very useful starting point for a design, but do not use it too literally. Doing so can lead to a very inefficient and needlessly complex database design. As I learned in engineering school, learning where to make trade-offs is the difference between a practical design and an exact, but impractical design.