Sep 02

Each different domain, covered by HL7 v2 standard, has a set of message definitions which support message exchanges for a particular domain. Most of the message definitions for a domain share certain segments. Many of the segments are optional and perhaps not used in a particular messaging environment.
In any but the simplest of HL7 messaging environments there will be multiple sources and multiple destinations of HL7 messages. It is very unlikely that all, or even a majority of these, will use exactly the same HL7 message structures in terms of versions, optional/mandatory segments, extension Z segments, and so on.
It is common for integrating specialists, if the tooling which they use permits, to develop one or few generalised message structures which can be used to represent more than one distinct message from a domain they work with. These are typically called canonical models. The overriding purpose is to standardise the message payload being passed around between integration components, enabling reuse and reducing complexity. The Canonical Message model (CMM) works hand-in-glove with the enterprise architecture in which transformation to/from the CMM is performed at the edges of the integration domain, standardizing as much as possible, payload structure within the integration domain.
The article, whose full text is available at, works through the mechanics of deriving a Canonical Message Model for the series of articles on SOA Suite for healthcare integration using the “Oracle SOA Suite for healthcare integration” tooling. It contains an abridged version of the article “Healthcare Enterprise – IT Architecture Building Blocks – Canonical Message Model for a HL7 Enterprise”, available at, but adds new material related to testing the canonical structure against sample data and modifying the structure to accommodate data idiosyncrasies.

3 Responses to “SOA Suite for healthcare integration Series – Creating a Canonical HL7 v2 Message Model”

  1. Fred Aabedi says:

    Hello Michael,
    Thanks a lot for this very outstanding article!
    I installed the latest version of the Oracle Document Editor ( from link address….

    When I run install.exe at the top level, it installs XML automotive. So I went into the Oracle Document Editor folder and ran setup.exe to install it.
    After I installed the latest version, it installed Oracle Document Editor and I run specbuilder.exe (powered by Edifecs) but the screens for usage of the Oracle Document in your PDF don’t match as this looks like a completely different version. What version are you using?
    Thanks a lot for all of your great help!

    • Hello, Fred.

      Long time no hear.

      I alwasy get all components of the SOA SUite distribution, and associated bits, at the same time. From recollection the B2B Document Editor would have been release 6.6.x.x.x. Release 7.x is somewhat different. For example it has support for debugging mapsets, which 6.6 does not have.

      Here is the BoM for the image I built:
      V29856-01 Oracle WebLogic Server 11gR1 (10.3.6) Generic and Coherence V29856-01 1.0G
      V29672-01 Part 1 of 2 Oracle SOA Suite 11g Patch Set 5 ( (Part 1 of 2) V29672-01 Part 1 of 2 1.6G
      V29672-01 Part 2 of 2 Oracle SOA Suite 11g Patch Set 5 ( (Part 2 of 2) V29672-01 Part 2 of 2 1.2G
      V29790-01 Oracle JDeveloper 11g and Oracle Application Development Framework 11g ( V29790-01 1.9G
      V29774-01 Oracle JDeveloper 11g Extensions ( V29774-01 698M
      V29674-01 Oracle Fusion Middleware Repository Creation Utility 11g ( for Linux x86 V29674-01 390M
      V29675-01 Oracle Fusion Middleware Repository Creation Utility 11g ( for Microsoft Windows V29675-01 319M
      V18738-01 Oracle Fusion Middleware 11g Release 1 Patch Set 1 Patch Scripts V18738-01 6.4M
      V30762-01 Oracle Fusion Middleware Documentation Library 11g Release 1 ( V30762-01 2.5G
      V24561-01 Part 1 of 3 B2B Document Editor v11. (Part 1 of 3) V24561-01 Part 1 of 3 157M
      V24561-01 Part 2 of 3 B2B Document Editor v11. (Part 2 of 3) V24561-01 Part 2 of 3 1.8G
      V24561-01 Part 3 of 3 B2B Document Editor v11. (Part 3 of 3) V24561-01 Part 3 of 3 2.2G
      V30996-01 Oracle JDK 6 Update 31 for Microsoft Windows x64 (64-bit) V30996-01 69M
      V31000-01 Oracle JDK 6 Update 31 documentation (covers JDK and JRE) V31000-01 59M

      I did not bother creating an installation document because tehre are plenty of them around. I used one to guide me through the installaiton process, though once you have done that half a dozen times it sort of goes automatically – dangerous …



Leave a Reply

preload preload preload