This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "CDA R2 Errata"

From HL7Wiki
Jump to navigation Jump to search
(→‎Schema: Fix uuid datatype)
 
(12 intermediate revisions by 5 users not shown)
Line 1: Line 1:
'''Section 1.2.2 The “A” in “CDA”'''
+
Return to [[Structured Documents TC|SDWG]] page.
 +
 
 +
=Section 1=
 +
==Section 1.2.2 The “A” in “CDA”==
  
 
*Example 2 – hierarchy isn’t correct. Bottom 4 bullets each need to move one step to the right.
 
*Example 2 – hierarchy isn’t correct. Bottom 4 bullets each need to move one step to the right.
  
  
'''Section 3: CDA Document Exchange in HL7 Messages'''
+
==Section 1.3 Conformance==
 +
* Clarification on conformance:
 +
A conformant CDA document is one that at a minimum validates against the CDA Schema <ins>once all extensions have been removed from the instance</ins>, and that restricts its use of coded vocabulary to values allowable within the specified vocabulary domains. However a computer cannot validate every aspect of conformance. The focus of this section is to highlight these aspects of CDA that cannot be machine validated - particularly those aspects related to the CDA human readability requirements.
 +
 
 +
 
 +
=Section 3: CDA Document Exchange in HL7 Messages=
  
 
*Table 4: HL7 V3 Medical Records :: CDA Mapping will need to be updated when the V3 Medical Records ballot becomes normative.  
 
*Table 4: HL7 V3 Medical Records :: CDA Mapping will need to be updated when the V3 Medical Records ballot becomes normative.  
  
 +
*Example 3. Example of a CDA document in an MDM message :: Change the  Content-Transfer-Encoding to each entity, and remove it from head of the message. Change the Content-type to "application/x-hl7-cda-level-two+xml"
 +
 +
<pre>
 +
MSH|...
 +
EVN|...
 +
PID|...
 +
PV1|...
 +
TXA|...
 +
OBX|1|ED|11492-6^History and Physical^LN||
 +
  ^multipart^related^A^
 +
  MIME-Version: 1.0
 +
  Content-Type: multipart/related; boundary="HL7-CDA-boundary";
 +
 +
  --HL7-CDA-boundary
 +
  Content-Type: application/x-hl7-cda-level-two+xml
 +
  Content-ID: &lt;10.12.45567.43>
 +
  Content-Transfer-Encoding: BASE64
 +
 +
  ... Base 64 of base CDA document, which contains
 +
      ...
 +
      <observationMedia classCode="OBS" moodCode="EVN">
 +
        <id root="10.23.4567.345"/>
 +
        <value mediaType="image/jpeg">
 +
            <reference value="left_hand_image.jpeg"/>
 +
        </value>
 +
      </observationMedia>
 +
      ...
 +
 +
  --HL7-CDA-boundary
 +
  Content-ID: &lt;10.23.4567.345>
 +
  Content-Location: canned_left_hand_image.jpeg
 +
  Content-Type: image/JPEG
 +
  Content-Transfer-Encoding: BASE64
 +
 +
  ... Base64 image ...
 +
 +
  --HL7-CDA-boundary--
  
'''Section 4 CDA R-MIM'''
+
  ...
 +
</pre>
  
*(Technical Correction) Visio diagram doesn't show ObservationInterpretation as vocabulary for Observation.interpretationCode (even though it does appear in the Hierarchical Description).  
+
* Example 4. Example of a CDA document in a Version 3 message :: Change the  Content-Transfer-Encoding to each entity, and remove it from the head of the message. Change the Content-type to "application/x-hl7-cda-level-two+xml"
 +
 
 +
 
 +
<pre>
 +
<someMessage>
 +
  <Act.Code code="11488-4"
 +
    codeSystem="2.16.840.1.113883.6.1"
 +
    displayName="Consultation note"/>
 +
  <Act.text type="multipart/related">
 +
MIME-Version: 1.0
 +
Content-Type: multipart/related; boundary="HL7-CDA-boundary";
 +
 
 +
--HL7-CDA-boundary
 +
Content-Type: application/x-hl7-cda-level-two+xml; charset="US-ASCII"
 +
Content-ID: &lt;10.12.45567.43>
 +
Content-Transfer-Encoding: BASE64
 +
 
 +
... Base 64 of base CDA document, which contains
 +
  ...
 +
  <observationMedia classCode="OBS" moodcode="EVN">
 +
    <id root="10.23.4567.345"/>
 +
    <value mediaType="image/jpeg">
 +
      <reference value="left_hand_image.jpeg"/>
 +
    </value>
 +
  </observationMedia>
 +
  ...
 +
 
 +
--HL7-CDA-boundary
 +
Content-ID: &lt;10.23.4567.345>
 +
Content-Location: canned_left_hand_image.jpeg
 +
Content-Type: image/JPEG
 +
Content-Transfer-Encoding: BASE64
 +
 
 +
... Base64 image ...
 +
 
 +
--HL7-CDA-boundary--
  
 +
      </Act.text>
 +
    </someMessage>
 +
</pre>
 +
--[[User:albertosaez|albertosaez]] 23:00, 14 April 2009 (UTC)
  
'''Section 4.3.5 Section Narrative Block'''
+
=Section 4 CDA R-MIM=
  
*(Technical Correction) To improve readability and to minimize ambiguity, the following [<xs:complexType name="StrucDoc.Sup" mixed="true"/>] should be changed to [<xs:element name="StrucDoc.Sup" type="xsd:string"/>].
+
*(Technical Correction) Visio diagram doesn't show ObservationInterpretation as vocabulary for Observation.interpretationCode (even though it does appear in the Hierarchical Description).  
 +
* ConfidentialityCode - first c should be lowercase--[[User:GrahameGrieve|GrahameGrieve]] 04:49, 7 July 2008 (UTC)
  
 +
==Section 4.3.5 Section Narrative Block==
  
'''Section 4.3.5.8: List'''
+
*(Technical Correction) To improve readability and to minimize ambiguity, the following [<xs:complexType name="StrucDoc.Sup" mixed="true"/>] should be changed to [<xs:element name="StrucDoc.Sup" type="xsd:string"/>].  
  
*Cardinality of listType attribute is ambiguous. Section 4.3.5.8 says it's required, but it is optional in the normative narrative block markup (and is not present in the example that we distributed).
+
==4.3.5.8 <list> - listType ==
 +
# Revise listType narrative:<br/>
 +
Change: The required listType attribute specifies whether the <list> is ordered or unordered (with unordered being the default). <br/>
 +
To: The listType attribute specifies whether the <list> is ordered or unordered (with unordered being the default).<br/>
  
 +
==Section 4.3.6.5: Organizer==
  
 +
*Revise constraint (in RMIM and Hierarchal Description) and clarify in narrative:
 +
The Organizer clone can be the source of the component relationship<ins>, the precondition relationship,</ins> or the reference relationship, but not the entryRelationship relationship.
  
'''Section A.2 Sample CDA Instance'''
+
=Appendices=
 +
==Section A.2 Sample CDA Instance==
  
 
*Where Observation.classCode=”COND”, refer to latest recommendations from Patient Care TC regarding how to value Observation.statusCode.  
 
*Where Observation.classCode=”COND”, refer to latest recommendations from Patient Care TC regarding how to value Observation.statusCode.  
Line 68: Line 162:
 
*<act classCode="ACT" moodCode="INT"><id/> - Remove the Act.id element.
 
*<act classCode="ACT" moodCode="INT"><id/> - Remove the Act.id element.
  
'''Section 1.3 Conformance'''
+
=Schema=
* Clarification on conformance [[User:Kboone|Kboone]] 16:22, 30 April 2007 (CDT)
+
==Language Code - data type==
A conformant CDA document is one that at a minimum validates against the CDA Schema <ins>once all extensions have been removed from the instance</ins>, and that restricts its use of coded vocabulary to values allowable within the specified vocabulary domains. However a computer cannot validate every aspect of conformance. The focus of this section is to highlight these aspects of CDA that cannot be machine validated - particularly those aspects related to the CDA human readability requirements.
+
# Currently languageCode is CS data type, needs to be changed to CV or CD (tbd).  In the RIM, CS is reserved for structural elements, not external vocabularies.<br/>
 +
## May want to consider defaulting the codeSystem for this instance.
 +
## Calvin Beebe 11/20/2015 - needs review and discussion
 +
 
 +
==uuid datatype==
 +
* The pattern for this is currently: <code>[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}</code>
 +
*: Since UUID's are hexadecamal, this should instead be: <code>[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}</code>

Latest revision as of 13:52, 10 August 2017

Return to SDWG page.

Section 1

Section 1.2.2 The “A” in “CDA”

  • Example 2 – hierarchy isn’t correct. Bottom 4 bullets each need to move one step to the right.


Section 1.3 Conformance

  • Clarification on conformance:

A conformant CDA document is one that at a minimum validates against the CDA Schema once all extensions have been removed from the instance, and that restricts its use of coded vocabulary to values allowable within the specified vocabulary domains. However a computer cannot validate every aspect of conformance. The focus of this section is to highlight these aspects of CDA that cannot be machine validated - particularly those aspects related to the CDA human readability requirements.


Section 3: CDA Document Exchange in HL7 Messages

  • Table 4: HL7 V3 Medical Records :: CDA Mapping will need to be updated when the V3 Medical Records ballot becomes normative.
  • Example 3. Example of a CDA document in an MDM message :: Change the Content-Transfer-Encoding to each entity, and remove it from head of the message. Change the Content-type to "application/x-hl7-cda-level-two+xml"
MSH|...
EVN|...
PID|...
PV1|...
TXA|...
OBX|1|ED|11492-6^History and Physical^LN||
   ^multipart^related^A^
   MIME-Version: 1.0
   Content-Type: multipart/related; boundary="HL7-CDA-boundary";

   --HL7-CDA-boundary
   Content-Type: application/x-hl7-cda-level-two+xml
   Content-ID: <10.12.45567.43>
   Content-Transfer-Encoding: BASE64

   ... Base 64 of base CDA document, which contains 
      ...
      <observationMedia classCode="OBS" moodCode="EVN">
         <id root="10.23.4567.345"/> 
         <value mediaType="image/jpeg">
            <reference value="left_hand_image.jpeg"/>
         </value>
      </observationMedia>
      ...

   --HL7-CDA-boundary
   Content-ID: <10.23.4567.345>
   Content-Location: canned_left_hand_image.jpeg
   Content-Type: image/JPEG
   Content-Transfer-Encoding: BASE64

   ... Base64 image ...

   --HL7-CDA-boundary--

   ...
  • Example 4. Example of a CDA document in a Version 3 message :: Change the Content-Transfer-Encoding to each entity, and remove it from the head of the message. Change the Content-type to "application/x-hl7-cda-level-two+xml"


<someMessage>
  <Act.Code code="11488-4" 
    codeSystem="2.16.840.1.113883.6.1" 
    displayName="Consultation note"/>
  <Act.text type="multipart/related">
MIME-Version: 1.0
Content-Type: multipart/related; boundary="HL7-CDA-boundary";

--HL7-CDA-boundary
Content-Type: application/x-hl7-cda-level-two+xml; charset="US-ASCII"
Content-ID: <10.12.45567.43>
Content-Transfer-Encoding: BASE64

... Base 64 of base CDA document, which contains 
  ...
  <observationMedia classCode="OBS" moodcode="EVN">
    <id root="10.23.4567.345"/> 
    <value mediaType="image/jpeg">
      <reference value="left_hand_image.jpeg"/>
    </value>
  </observationMedia>
  ...

--HL7-CDA-boundary
Content-ID: <10.23.4567.345>
Content-Location: canned_left_hand_image.jpeg
Content-Type: image/JPEG
Content-Transfer-Encoding: BASE64

... Base64 image ...

--HL7-CDA-boundary--

      </Act.text>
    </someMessage>

--albertosaez 23:00, 14 April 2009 (UTC)

Section 4 CDA R-MIM

  • (Technical Correction) Visio diagram doesn't show ObservationInterpretation as vocabulary for Observation.interpretationCode (even though it does appear in the Hierarchical Description).
  • ConfidentialityCode - first c should be lowercase--GrahameGrieve 04:49, 7 July 2008 (UTC)

Section 4.3.5 Section Narrative Block

  • (Technical Correction) To improve readability and to minimize ambiguity, the following [<xs:complexType name="StrucDoc.Sup" mixed="true"/>] should be changed to [<xs:element name="StrucDoc.Sup" type="xsd:string"/>].

4.3.5.8 <list> - listType

  1. Revise listType narrative:

Change: The required listType attribute specifies whether the <list> is ordered or unordered (with unordered being the default).
To: The listType attribute specifies whether the <list> is ordered or unordered (with unordered being the default).

Section 4.3.6.5: Organizer

  • Revise constraint (in RMIM and Hierarchal Description) and clarify in narrative:

The Organizer clone can be the source of the component relationship, the precondition relationship, or the reference relationship, but not the entryRelationship relationship.

Appendices

Section A.2 Sample CDA Instance

  • Where Observation.classCode=”COND”, refer to latest recommendations from Patient Care TC regarding how to value Observation.statusCode.
  • Incorrect OID. Change OID from “2.16.840.1.113883.5.10588” to “2.16.840.1.113883.5.111” here:
 <healthCareFacility classCode="DSDLOC">
   <code code="GIM" codeSystem="2.16.840.1.113883.5.10588" displayName="General internal medicine clinic"/>
 </healthCareFacility>
  • Incorrect LOINC codes. Replace 10153-2, 10223-2, 10157-2 respectively with: 11348-0 HISTORY OF PAST ILLNESS, 10200-4 PHYSICAL FINDINGS HEART, 10157-6 HISTORY OF FAMILY MEMBER DISEASES
  • Incorrect Date. Replace “200004071530” with “200004071430” as shown.
 <observation classCode="OBS" moodCode="EVN">
   <code code="251076008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Cuff blood pressure"/>
   <statusCode code="completed"/>
   <effectiveTime value="200004071430"/>
   <targetSiteCode code="368208006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Left arm"/>
   <entryRelationship typeCode="COMP">
     <observation classCode="OBS" moodCode="EVN">
       <code code="271649006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Systolic BP"/>
       <statusCode code="completed"/>
       <effectiveTime value="200004071530 --> 200004071430"/>
       <value xsi:type="PQ" value="132" unit="mm[Hg]"/>
     </observation>
   </entryRelationship>
   <entryRelationship typeCode="COMP">
     <observation classCode="OBS" moodCode="EVN">
       <code code="271650006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Diastolic BP"/>
       <statusCode code="completed"/>
       <effectiveTime value="200004071530 --> 200004071430"/>
       <value xsi:type="PQ" value="86" unit="mm[Hg]"/>
     </observation>
   </entryRelationship>
 </observation>
  • <priorityCode code="PRN"/> should include codeSystem attribute, valued with "2.16.840.1.113883.5.7".
  • <routeCode code="IPINHL" codeSystem="2.16.840.1.113883.5.112" ... should be <routeCode code="ORINHL" codeSystem="2.16.840.1.113883.5.112" ...
  • <act classCode="ACT" moodCode="INT"><id/> - Remove the Act.id element.

Schema

Language Code - data type

  1. Currently languageCode is CS data type, needs to be changed to CV or CD (tbd). In the RIM, CS is reserved for structural elements, not external vocabularies.
    1. May want to consider defaulting the codeSystem for this instance.
    2. Calvin Beebe 11/20/2015 - needs review and discussion

uuid datatype

  • The pattern for this is currently: [0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}
    Since UUID's are hexadecamal, this should instead be: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}