Difference between revisions of "CDA R2 mapping to CDA R3"
(Created page with "Back to [CDA_R3_Project] <p style="font-weight: bold;color: red;">This page is work in progress and is not yet suitable for general consumption. Intended to be finished by Frida...") |
m |
||
Line 1: | Line 1: | ||
− | Back to [CDA_R3_Project] | + | Back to [[CDA_R3_Project]] |
<p style="font-weight: bold;color: red;">This page is work in progress and is not yet suitable for general consumption. Intended to be finished by Friday Jan 25, 2013</p> | <p style="font-weight: bold;color: red;">This page is work in progress and is not yet suitable for general consumption. Intended to be finished by Friday Jan 25, 2013</p> |
Revision as of 19:26, 21 January 2013
Back to CDA_R3_Project
This page is work in progress and is not yet suitable for general consumption. Intended to be finished by Friday Jan 25, 2013
Introduction
This page contains information on how CDA R2 maps to CDA R3. The mapping is supported by an XSLT 2.0 transformation. Initial formal presentation of this mapping has been on Friday Q1 during the HL7 WGM 2013 in Phoenix.
Purpose
At first glance CDA R3 could look overwhelming because of the introduction of building blocks (CMETs) that expose the full RIM for participants and the level 3 entries. While it is true that CDA R3 allows for a lot of functionality out of the box, it should be relatively easy to reuse any CDA R2 implementation. It might be expected that by the time CDA R3 hits the market, a lot of vendors have investments in CDA R2. A mapping that leverages this investment should be helpful in making the transition.
Mapping
The column Validation is a true/false indicator of whether or nor the StrucDoc WG has validated this mapping.
CDA R2 | CDA R3 | Comment | Validated |
ClinicalDocument
|
ClinicalDocument
|
||
ClinicalDocument.authenticator
|
ClinicalDocument.authenticator
|
See AssignedEntity for mapping of assignedEntity | |
AssignedEntity
|
AssignedEntity
|
See Person for mapping of assignedPerson, see Organization for mapping of representedOrganization | |
Organization
|
Organization
|
See OrganizationPartOf for mapping of asOrganizationPartOf | |
OrganizationPartOf
|
OrganizationPartOf
|
See Organization for mapping of wholeOrganization | |
Person
|
Person
| ||
ClinicalDocument.legalAuthenticator | ClinicalDocument.legalAuthenticator | ||
ClinicalDocument.informationRecipient | ClinicalDocument.informationRecipient | ||
ClinicalDocument.author | ClinicalDocument.author | ||
ClinicalDocument.custodian | ClinicalDocument.custodian | ||
ClinicalDocument.dataEnterer | ClinicalDocument.dataEnterer | ||
ClinicalDocument.recordTarget | ClinicalDocument.recordTarget | ||
ClinicalDocument.informant | ClinicalDocument.informant | ||
ClinicalDocument.participant | ClinicalDocument.participant1 | ||
ClinicalDocument.relatedDocument | ClinicalDocument.relatedDocument | ||
ClinicalDocument.documentationOf | ClinicalDocument.documentationOf | ||
ClinicalDocument.inFulfillmentOf | ClinicalDocument.inFulfillmentOf | ||
ClinicalDocument.authorization | ClinicalDocument.authorization | ||
ClinicalDocument.componentOf | ClinicalDocument.componentOf | Note: in Ballot Sep 2013 order reversed with ClinicalDocument.component | |
ClinicalDocument.component | ClinicalDocument.component | Note: in Ballot Sep 2013 order reversed with ClinicalDocument.componentOf | |
component.nonXmlbody | component.nonStructuredBody | ||
component.structuredBody | component.structuredBody | ||
structuredBody.component | structuredBody.component | ||
component.section | component.section | ||
section.component... | section.component... | ||
section.author | section.author | ||
section.informant | section.informant | ||
section.subject | section.subject | ||
section.entry | section.entry | ||
entry.observation | entry.observation | ||
entry.observation.referenceRange | entry.observation.referenceRange | ||
entry.regionOfInterest | entry.regionOfInterest | ||
entry.observationMedia | entry.observationMedia | ||
entry.substanceAdministration | entry.substanceAdministration | ||
entry.supply | entry.supply | ||
entry.procedure | entry.procedure | ||
entry.encounter | entry.encounter | ||
entry.organizer | entry.organizer | ||
entry.organizer.component | entry.organizer.component | ||
entry.act | entry.act | ||
entry.*.precondition | entry.*.outboundRelationship | ||
entry.*.reference | entry.*.outboundRelationship | ||
entry.*.entryRelationship | entry.*.outboundRelationship | ||
entry.*.author | entry.*.participation | ||
entry.*.informant | entry.*.participation | ||
entry.*.subject | entry.*.participation | ||
entry.*.performer | entry.*.participation | ||
entry.*.consumable | entry.*.participation | ||
entry.*.product | entry.*.participation | ||
entry.*.specimen | entry.*.participation | ||
entry.*.participant | entry.*.participation |
Known issues
- CDA R2 allows for extensions. It is not possible for a generic mapping to do the necessary datatype conversion as it doesn't know what input datatype is used and if the extension is still applicable in CDA R3. The mapping should be extended to include mapping of these extensions.
- CDA R2 contains the abstract datatype ANY in a number of places, most notably in level 3 Observation and ObservationRange. If a document is instantiated then the mapping reads @xsi:type to determine the actual datatype. This mapping will fail and terminate if the actual datatype is not in use somewhere else in CDA already, e.g. SXCM_PQ.
- CDA R2 contains datatype CS in a number of cases where CDA R3 has datatype CD, e.g. ClinicalDocument.languageCode. Mapping currently does not yet add the appropriate @codeSystem.