5

The company I work for recently started a project delving into the world of HL7 messaging and data trading. We are using BizTalk Server 2010 with the BTAHL7 accelerator for 2010 with success so far for HL7 v2 but now we have a need to accept HL7 v3 (CDA R2) documents. These are CCD's we will be accepting from an external vendor.

I have the full suite of .xsd schemas from HL7 for CDA R2 (all 1541 of them) but am struggling with how to figure out which schemas relate to the messages we will be receiving. All I have to work with are test CCD messages from our trading partner and no other information. I have tried to use the code and display name along with the templateId's to figure out which subschemas this will match so I can appropriately map into our internal canonical formats for data loading but I am struggling to figure that out.

I'd rather not create one project in BizTalk that holds all 1541 schemas to parse and validate these files as that would make reading my maps and transformation mechanisms that much more difficult. Has anyone with experience in HL7 v3 and BizTalk got any guidance on how I can identify the appropriate subschemas based on the information available in the test files?

Here is the header information:

<realmCode code="US"/>
<typeId root="XXX" extension="POCD_HD000040"/>        
<templateId root="2.16.840.1.113883.10.20.1"/>
<templateId root="2.16.840.1.113883.3.88.11.32.1"/>
<templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.6"/>
<templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.2"/>
<templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.1"/>
<templateId root="2.16.840.1.113883.10.20.3"/>
<templateId root="2.16.840.1.113883.3.88.11.83.1"/>
<id root="1.2.840.113619.21.1.3164884235793924544.1704986688012700"/>
<code code="34133-9" codeSystem="XXX" codeSystemName="LOINC" displayName="Summarization of episode note"/>
<title>XXX</title>
<effectiveTime value="20140110152448-0500"/>
<confidentialityCode code="N" codeSystem="XXX"/><languageCode code="en-US"/>
Ritley572
  • 299
  • 4
  • 15
  • 1
    what 1541 schemas? There is only 8 schemas, and they are not hooked up to the templateId. Have you got the full v3 schema set? these are not related to your CDA task. – Grahame Grieve Feb 17 '14 at 20:28
  • Yes I suppose I do have the full v3 schema set. But according to this documentation about HL7 V3 for BizTalk even in the example there are 20 schemas: http://msdn.microsoft.com/en-us/library/bb967001(v=bts.10).aspx – Ritley572 Feb 17 '14 at 22:57
  • 1
    CDA is not like the rest of V3, and the v3 schemas are irrelevant. I would've thought Biztalk included CDA schemas specifically. The ones you need are: datatypes-base.xsd, NarrativeBlock.xsd, voc.xsd, datatypes.xsd, POCD_MT000040.xsd, CDA.xsd – Grahame Grieve Feb 17 '14 at 23:28
  • Ahh, much obliged Grahame. Would you mind adding that as a post rather than a comment so I can mark it as the answer? This HL7 v3 stuff is a bear. There is very little in the way of solid help out there, appropriate information is hard to find and discern. – Ritley572 Feb 17 '14 at 23:48
  • ok made it an answer. v3 was never friendly for implementers - it's really a meta-spec for other specifications, such as CDA, and I would've thought biztalk would have a CDA package ready to go – Grahame Grieve Feb 18 '14 at 00:48
  • Unfortunately they do not. I'd venture that's because the xsds are readily available from HL7 and you just need to add a couple namespaces and import them and you are good to go. Much different animal than the flat files of V2. The problem is that the HL7 documentation is hard to grasp for a beginner. Even the "Quick Start" guides didn't offer this novice much help. – Ritley572 Feb 18 '14 at 02:06
  • HL7 requires you to obtain a license from them for the CDA schemas, which only recently became free. I'd wager that Microsoft was not allowed to distribute the CDA schemas as a result. – schellack Feb 18 '14 at 03:29
  • Good point, I believe the xsds still cost money if you are not a member, they are only free if you are already an HL7 member. – Ritley572 Feb 18 '14 at 03:49

2 Answers2

6

CDA is not like the rest of V3, and the v3 schemas are irrelevant. I would've thought Biztalk included CDA schemas specifically. The ones you need are:

  • datatypes-base.xsd
  • NarrativeBlock.xsd
  • voc.xsd
  • datatypes.xsd
  • POCD_MT000040.xsd
  • CDA.xsd
Grahame Grieve
  • 3,538
  • 3
  • 15
  • 17
  • I am going to tag this question in another question asked i guess an year ago! This does adds clarity over the usage of v3 and CDA. – Sid Feb 18 '14 at 11:04
1

As @Grahame stated, having the HL7 V3 schemas does not really help you implement the CDA in BizTalk. The CCD (Continuity of Care Document) is a defined set of constraints on the CDA (Clinical Document Architecture) standard.

In order to obtain the CCD schemas, you have to go to HL7. You can download the CCD spec, samples, and required schemas directly by going here, accepting the HL7 licensing agreement, and giving them your data.

Once you download the ZIP file, look inside the CDASchemas folder for the actual schema files. The CDASchemas\cda\Schemas\CDA.xsd file will act as the "root" schema.

schellack
  • 10,144
  • 1
  • 29
  • 33
  • Yep, this is exactly what I did (though I already had the CDA schemas). Thanks again for the help everyone. – Ritley572 Feb 18 '14 at 16:17