[Note: This is an unofficial display/cache version and should be used only for casual purposes. Linked graphics are not displayed. Please see the official and canonical version of the CDA Release 2.0, available from the HL7 website.]

HL7 Clinical Document Architecture, Release 2.0

Chair/Editor Robert H. Dolin, MD
Robert.H.Dolin@kp.org
Kaiser Permanente
Chair/Editor Liora Alschuler
Liora@The-Word-Electric.com
alschuler.spinosa
Chair/Editor Sandy Boyer, BSP
slboyer@attglobal.net
Consultant
Chair/Editor Calvin Beebe
cbeebe@mayo.edu
Mayo Clinic
Editor Fred M. Behlen, PhD
fbehlen@laitek.com
LAI Technology
Editor Paul V. Biron
Paul.V.Biron@kp.org
Kaiser Permanente

Table of Contents

1 CDA Overview
1.1 What is the CDA
1.1.1 Key aspects of the CDA
1.1.2 Scope of the CDA
1.1.3 Goals and Design Principles
1.2 General CDA Concepts
1.2.1 Major Components of a CDA Document
1.2.2 The "A" in "CDA"
1.2.3 Human Readability and Rendering CDA Documents
1.2.4 XML Markup of CDA Documents
1.2.5 Security, Confidentiality, and Data Integrity
1.2.6 Relationship of the CDA to HL7 Messaging Standards
1.3 CDA Conformance
1.3.1 Recipient Responsibilities
1.3.2 Originator Responsibilities
1.4 CDA Extensibility
1.5 Backwards and Forwards Compatibility
2 CDA Technical Specifications
2.1 Introduction to CDA Technical Artifacts
2.1.1 HL7 Reference Information Model
2.1.2 HL7 V3 Data Types
2.1.3 HL7 Vocabulary Domains
2.1.4 HL7 CDA R-MIM
2.1.5 HL7 CDA Hierarchical Description
2.1.6 HL7 CDA Schema
2.2 CDA Document Exchange in HL7 Messages
2.3 CDA R-MIM
2.3.1 Clinical Document
2.3.2 CDA Header
2.3.3 CDA Body
2.3.4 CDA Context
2.4 CDA Hierarchical Description
2.5 CDA Schema
3 Appendices
3.1 Samples
3.1.1 Sample Document
3.1.2 Sample CDA Instance
3.2 Implementation Notes
3.2.1 Creating CDA Documents
3.2.2 LOINC Document Codes
3.2.3 CDA and Semantic Interoperability
3.3 Enumeration of Changes Between Release One and Release Two
3.3.1 Changes from CDA Release 2, Committee Ballot 2
3.3.2 Deprecated Components
3.3.3 Vocabulary Changes
3.3.4 CDA Header Changes
3.3.5 CDA Body Changes
3.3.6 CDA XML Changes

CommitteeNormativeBallot1

1

CDA Overview

1.1

What is the CDA

The HL7 Clinical Document Architecture (CDA) is a document markup standard that specifies the structure and semantics of "clinical documents" for the purpose of exchange. A clinical document contains observations and services and has the following characteristics:

  • Persistence – A clinical document continues to exist in an unaltered state, for a time period defined by local and regulatory requirements 1.
  • Stewardship – A clinical document is maintained by an organization entrusted with its care.
  • Potential for authentication - A clinical document is an assemblage of information that is intended to be legally authenticated.
  • Context - A clinical document establishes the default context for its contents.
  • Wholeness - Authentication of a clinical document applies to the whole and does not apply to portions of the document without the full context of the document.
  • Human readability – A clinical document is human readable.

A CDA document is a defined and complete information object that can include text, images, sounds, and other multimedia content.

1.1.1

Key aspects of the CDA

Key aspects of the CDA include:

  • CDA documents are encoded in Extensible Markup Language (XML).
  • CDA documents derive their meaning from the HL7 Reference Information Model (RIM) and use the HL7 Version 3 Data Types.
  • The CDA specification is richly expressive and flexible. Document-level, section-level and entry-level templates can be used to constrain the generic CDA specification (see The "A" in "CDA" (§ 1.2.2 )).

1.1.2

Scope of the CDA

The scope of the CDA is the standardization of clinical documents for exchange.

The data format of clinical documents outside of the exchange context is not addressed in this specification.

The clinical content of CDA documents is defined in the RIM. CDA documents can be transmitted in HL7 messages designed to transfer clinical documents. The specification for such messages is outside the scope of the CDA, although this standard does specify how to package CDA documents within HL7 messages (see CDA Document Exchange in HL7 Messages (§ 2.2 )).

The CDA does not specify the creation or management of documents, only their exchange markup. While it may be possible to directly use the CDA Schema in a document authoring environment, such use is outside the CDA specification.

Document management is critically interdependent with the CDA specifications, but the specification of document management messages is outside the scope of the CDA. (For more on this, see Relationship of the CDA to HL7 Messaging Standards (§ 1.2.6 )).

1.1.3

Goals and Design Principles

The goals of the CDA are:

  • Give priority to delivery of patient care.
  • Allow cost effective implementation across as wide a spectrum of systems as possible.
  • Support exchange of human-readable documents between users, including those with different levels of technical sophistication.
  • Promote longevity of all information encoded according to this architecture.
  • Enable a wide range of post-exchange processing applications.
  • Be compatible with a wide range of document creation applications.
  • Promote exchange that is independent of the underlying transfer or storage mechanism.
  • Prepare the design reasonably quickly.
  • Enable policy-makers to control their own information requirements without extension to this specification.

A number of design principles follow from consideration of the above goals:

  • This architecture must be compatible with XML and the HL7 RIM
  • Technical barriers to use of the architecture should be minimized.
  • The architecture specifies the schemas required for exchange.
  • The architecture should impose minimal constraints or requirements on document structure and content required for exchange.
  • The architecture must be scalable to accommodate fine-grained markup such as highly structured text and coded data.
  • Document specifications based on this architecture should accommodate such constraints and requirements as supplied by appropriate professional, commercial, and regulatory agencies.
  • Document specifications for document creation and processing, if intended for exchange, should map to this exchange architecture.
  • CDA documents must be human readable using widely-available and commonly-deployed XML-aware browsers and print drivers and a generic CDA style sheet written in a standard style sheet language.
  • Use open standards.

1.2

General CDA Concepts

1.2.1

Major Components of a CDA Document

This section serves as a high-level introduction to the major components of a CDA document, all of which are described again and in greater detail later on. The intent here is to familiarize the reader with the high-level concepts to facilitate an understanding of the sections that follow.

Major components of a prototypic CDA document are shown in Figure 1.

A CDA document is wrapped by the <ClinicalDocument> element, and contains a header (see CDA Header (§ 2.3.2 )) and a body (see CDA Body (§ 2.3.3 )). The header lies between the <ClinicalDocument> and the <StructuredBody> elements, and identifies and classifies the document and provides information on authentication, the encounter, the patient, and the involved providers.

The body contains the clinical report, and can be either an unstructured blob, or can be comprised of structured markup. Figure 1 shows a structured body, which is wrapped by the <StructuredBody> element, and which is divided up into recursively nestable document sections.

A CDA document section is wrapped by the <Section> element. Each section can contain a single narrative block (see CDA Section Narrative Block (§ 2.3.3.5 )), and any number of CDA entries (see CDA Entry Acts (§ 2.3.3.6 )) and external references.

The CDA narrative block is wrapped by the <text> element within the <Section> element, and provides a slot for the human readable content needing to be rendered. See also Human Readability and Rendering CDA Documents (§ 1.2.3 ) and CDA Conformance (§ 1.3 ) for principles governing the representation of the narrative block, and conformance requirements on the part of originators when populating the block, and recipients when rendering it.

Within a document section, the narrative block represents content to be rendered, whereas CDA entries represent structured content provided for a computer. CDA entries encode content present in the narrative block of the same section. Figure 1 shows two <Observation> CDA entries, although several other CDA entries are defined.

CDA external references always occur within the context of a CDA entry, and are wrapped by the <reference> element. External references refer to things that exist outside the CDA document - such as some other image, some other procedure, or some other observation (which is wrapped by the <ExternalObservation> element). The CDA entry that wraps the external reference can be used to encode the specific portions of the external reference that are addressed in the narrative block.

Example 1: Major components of a CDA document
<ClinicalDocument>
  ... CDA Header ...
  <StructuredBody>
    <section>
       <text>...</text>
      <Observation>...</Observation>
      <Observation>
        <reference>
          <ExternalObservation>...</ExternalObservation>
        </reference>
      </Observation>
    </section>
    <section>
        <section>...</section>
    </section>
  </StructuredBody>
</ClinicalDocument>

1.2.2

The "A" in "CDA"

The notion of CDA "levels" in CDA, Release One anticipated a hierarchical set of XML DTDs or XML Schemas to achieve the goals enumerated above (see Goals and Design Principles (§ 1.1.3 )). This hierarchy formed an "architecture", hence the "A" in "CDA".

While the notion of levels in CDA, Release Two remains constant, the approach to representing the hierarchies has changed. The current specification consists of a single CDA XML Schema, and the architecture arises from the ability to apply one or more of a hierarchical set of HL7 Templates, which serve to constrain the richness and flexibility of CDA.

NOTE: HL7 Templates are in a draft state at the time of this writing, therefore no definitive statements can be made regarding the mechanism by which CDA and HL7 Templates will interoperate. There are however, several ways by which CDA can be constrained today - by an approved HL7 mechanism (such as the creation of a derived static model) and/or by the creation of a local implementation guide (which may define constraints using a combination of narrative, constraining vocabulary tables, formal constraint rules, etc), and/or by the creation of a more constrained XML schema (for instance as described in Creating CDA Documents (§ 3.2.1 )).
The RIM's InfrastructureRoot class contains an attribute, templateId, which is available for use in CDA. Thus, while HL7 Templates are in flux at this time, CDA provides a mechanism to reference a template or implementation guide that has been assigned a unique identifier. Until there is a formal HL7 Template specification, there is no universally guaranteed process to test conformance against referenced templates.
There is no requirement that CDA must be constrained in order to be used. However all implementations of CDA that make use of the structured data elements in this specification to drive automated processes shall be either: (1) constrained by an appropriately refined model or other HL7 approved constraint language; or (2) comply with a detailed implementation guide that details the manner in which structured elements are to be represented and their intended interpretation to a level sufficient to ensure a degree of clinical safety that is appropriate to the use case that it is designed to address.

The CDA specification permits the use of document codes and section codes. Thus, it is possible to differentiate a "Consultation Note" from a "Discharge Summary" because the two will have distinct document codes in the document instance. An HL7 Template provides a formal mechanism to say that a particular consultation note or discharge summary must contain certain sections, or that an assessment or plan section must contain certain observations.

There are many kinds of HL7 Templates that might be created. Among them, two are particularly relevant for clinical documents: (1) those that constrain the document sections based on the type of document (section-level templates); (2) those that constrain the entries within document sections (entry-level templates). In fact, a comparison can be made between the prior notion of CDA levels and the current notion of CDA with these two kinds of HL7 Templates:

Table 1: Evolution of CDA "levels" from CDA, Release One to CDA, Release Two
CDA, Release One CDA, Release Two

CDA Level One

The unconstrained CDA specification.

CDA Level Two

The CDA specification with section-level templates applied.

CDA Level Three

The CDA specification with entry-level templates applied.

An illustration of one possible hierarchy of CDA plus HL7 Templates is shown here:

Example 2: Illustration of a possible CDA Document Hierarchy
CDA Schema
   CDA Schema :: Progress 
   	Note section-level template applied.
      CDA Schema :: Progress Note section-level and 
      	Vital Signs entry-level template applied.
         CDA Schema :: Endocrinology Progress 
         		Note section-level and Vital Signs 
         		entry-level template applied.
         CDA Schema :: Progress 
         		Note section-level and 
         		Intensive Care Unit Vital Signs
               entry-level template applied.
      CDA Schema :: Cardiology Progress 
      		Note section-level template applied
         CDA Schema :: Cardiology Progress 
         		Note section-level and 
         		Cardiac Physical Examination 
         		entry-level template applied.
      CDA Schema :: Endocrinology Progress 
      	Note section-level template applied.
         CDA Schema :: Endocrinology Progress 
         		Note section-level and Vital Signs entry-
               level template applied.
					

1.2.3

Human Readability and Rendering CDA Documents

The CDA requirement for human readability guarantees that a receiver of a CDA document can algorithmically display the clinical content of the note on a standard Web browser. CDA, Release Two, with its blend of narrative and CDA entries, presents new challenges to this requirement.

Among the requirements affecting the design of CDA Release 2 are the following:

  • There must be a deterministic way for a recipient of an arbitrary CDA document to render the attested content.
  • Human readability shall not require a sender to transmit a special style sheet along with a CDA document. It must be possible to render all CDA documents with a single style sheet and general-market display tools.
  • Human readability applies to the authenticated content. There may be additional information conveyed in the document that is there primarily for machine processing that is not authenticated and need not be rendered.
  • When structured content is derived from narrative, there must be a mechanism to describe the process (e.g. by author, by human coder, by natural language processing algorithm, by specific software) by which machine-processable portions were derived from a block of narrative.
  • When narrative is derived from structured content, there must be a mechanism to identify the process by which narrative was generated from structured data.

These principles and requirements have led to the current approach, where the material to be rendered is placed into the Section.text field (see CDA Section Narrative Block (§ 2.3.3.5 )). The content model of this field is specially hand crafted to meet the above requirements, and corresponds closely to the content model of sections in CDA, Release One. Structured observations can reference narrative content in the Section.text field. Multimedia observations are encoded outside the Section.text field, and the <renderMultiMedia> tag within the Section.text field provides an outgoing pointer that indicates where the referenced multimedia should be rendered.

1.2.4

XML Markup of CDA Documents

XML markup of CDA documents is prescribed in this specification. CDA instances are valid against the CDA Schema and may be subject to additional validation (see CDA Conformance (§ 1.3 )). There is no prohibition against multiple schema languages (e.g., W3C, DTD, RELAXNG), as long as conforming instances are compatible.

Design Principles of the CDA Schema include:

  • General Requirements: The design of the CDA Schema follows the more general requirements for CDA (see Goals and Design Principles (§ 1.1.3 )).
  • CDA Schema and V3 Implementation Technology Specification (ITS) : The CDA Schema will follow the general V3 XML ITS.
  • RIM Mapping: The CDA Schema describes the style of XML markup of CDA instances for the purpose of exchange. It cannot be understood outside the context of this defining specification including the normative R-MIM and Hierarchical Description.
    the same time, the CDA Schema should be evaluated on its own and is not intended to replicate or take the place of the R-MIM and HD. The CDA Schema, then, is not, in and of itself, an adequate map between conforming instance and the HL7 RIM. Semantic interoperability of CDA instances requires use and knowledge of the CDA Schema, R-MIM and HD as well as the corresponding RIM.
  • Document Analysis: The CDA Schema and conformant instances should adhere to the requirements of document analysis in derivation of the content model.

    NOTE: Document analysis is a process that might be thought of as the document equivalent of a use case. Document analysis looks at a single instance or class of documents and analyzes their structure and content, often representing this is a tree structure "elm" notation. Document analysis also looks at the business rules for the lifecycle of that document or document class. Traditionally, document analysis determines the content model and overall structure and style of XML.
    Document analysis is an iterative step in content model derivation -- the "bottom up" approach to complement the "top down" derivation from the RIM. This will ensure that schemas and instances are not only RIM-derived, but represent recognizable artifacts in a simple manner.

  • Forward and Backward Compatibility: The CDA Schema should adhere to the requirements for forward and backward compatibility. (See Backwards and Forwards Compatibility (§ 1.5 ))
  • Naming: While XML markup, by definition, is for machine processing, it should be optimized for human review, debug, and design. The CDA Schema is not "self-documenting", but meaning should be clear from tag name and documentation (e.g., mapping to RIM). The human-language sense of a tag name should not be counterintuitive
  • Vocabulary: Vocabulary can be enumerated within the CDA Schema or in an external, referenced source. It is preferable to enumerate it when the vocabulary terms are both limited (not too large in number) and stable (not subject to change between ballot cycles). Where vocabulary is either too large or is subject to change, it is preferable to maintain it external to the CDA Schema and incorporate it by reference. In these cases, XML validation will not suffice for conformance.

1.2.5

Security, Confidentiality, and Data Integrity

Application systems sending and receiving CDA documents are responsible for meeting all legal requirements for document authentication, confidentiality, and retention. For communications over public media, cryptographic techniques for source/recipient authentication and secure transport of encapsulated documents may be required, and should be addressed with commercially available tools outside the scope of this standard.

The CDA does provide confidentiality status information to aid application systems in managing access to sensitive data. Confidentiality status may apply to the entire document or to specified segments of the document.

1.2.6

Relationship of the CDA to HL7 Messaging Standards

A CDA document is a defined and complete information object that can exist outside of a messaging context and/or can be a MIME-encoded payload within an HL7 message (see CDA Document Exchange in HL7 Messages (§ 2.2 )). Thus, the CDA complements HL7 messaging specifications.

Clinical documents can be revised, and they can be appended to existing documents. Ideally, an updated document would declare itself as obsolete, and would contain an explicit pointer to a more recent version. This would lessen the chances of a healthcare provider basing treatment decisions on erroneous or incomplete data.

In practice, however, it is impossible to guarantee an explicit forward pointer from an outdated version to the newer version. Without a process that tracks the chain of custody of clinical documents and all of their copies, there can be no way to guarantee that a clinical document being viewed has not been subsequently revised.

To minimize the risk of viewing superseded information, there is a critical interdependence between clinical documents and document management systems. If CDA documents are viewed outside the context of a document management system, it cannot be known with certainty whether or not the viewed document has been revised. HL7 messages that carry CDA documents (such as the MDM messages in HL7 V2.x and the HL7 V3 Medical Records messages) convey critical contextual information that ensures accurate viewing of clinical data.

1.3

CDA Conformance

NOTE: See HL7 V3 Refinement and Localization for a complete discussion of V3 conformance.

A conformant CDA document is one that at a minimum validates against the CDA Schema, and that restricts its use of coded vocabulary to values allowable within the specified vocabulary domains. However a computer cannot validate many aspects 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.

A document originator is an application role that creates a CDA document. CDA documents can be created via transformation from some other format, as a direct output of an authoring application, etc. The document originator often is responsible for communicating with a persistent storage location, often using HL7 V2 MDM or HL7 V3 Medical Records messages. The document originator is responsible for ensuring that generated CDA documents are fully conformant to this specification.

A document recipient is an application role that receives status updates and documents from a document originator or document management system. The document recipient is responsible for ensuring that received CDA documents are rendered in accordance to this specification.

Because CDA is an exchange standard and may not represent the original form of a document, there are no persistent storage requirements for CDA documents defined in this standard. However, as noted below (see Relationship of the CDA to HL7 Messaging Standards (§ 1.2.6 )), document management is critically interdependent with the CDA specification. The custodian identified in the CDA header (see CDA Header Participants (§ 2.3.2.2 )) is the participant charged with maintaining the original document, which may be in some form other than CDA.

1.3.1

Recipient Responsibilities

  • Assume default values where they are defined in this specification, and where the instance does not contain a value : Where CDA defines default values, the recipient must assume these values in the event that no value is contained in a CDA instance. This holds regardless of whether or not the CDA Schema supplies the recipient with the default values.
  • Parse and interpret the complete CDA header : A recipient of a CDA document must be able to parse and interpret the complete CDA header. Because applications may choose to display demographic and other CDA header data drawn from a central master directory, the rendering of the CDA document header is at the discretion of the recipient.
  • Parse and interpret the CDA body sufficiently to be able to render it : A recipient of a CDA document must be able to parse and interpret the body of a CDA document sufficiently to be able to render it, using the following rendering rules:
    • If the CDA Body is non-XML, it will need to be rendered with a software tool that recognizes its particular MIME media type.
    • If the CDA Body is structured, the label of a section, as conveyed in the Section.title component, must be rendered. The absence of the Section.title component signifies an unlabeled section.
    • If the CDA Body is structured, the contents of the Section.text field must rendered per the rules defined in CDA Section Narrative Block (§ 2.3.3.5 ).
  • A recipient of a CDA document is not required to parse and interpret the complete set of CDA entries contained within the CDA body. Within a local implementation, trading partners may ascribe additional recipient responsibilities to parse and interpret various entries.
  • A recipient of a CDA document is not required to validate a CDA document against referenced templates. Within a local implementation, trading partners may ascribe additional recipient responsibilities for template validation.

1.3.2

Originator Responsibilities

  • Properly construct CDA Narrative Blocks : An originator of a CDA document must ensure that the attested portion of the document body is structured such that a recipient, adhering to the recipient responsibilities above, will correctly render the document. This includes:
    • If the CDA Body is structured, the label of a section must be conveyed in the Section.title component. The absence of the Section.title component signifies an unlabeled section.
    • If the CDA Body is structured, the narrative of each section, together with the multimedia content refererenced in the narrative, comprises the complete authenticated content of the section. The attested narrative contents of a section must be placed in the Section.text field, regardless of whether information is also conveyed in CDA entries within a section. Attested multimedia referenced in the narrative must be added as ObservationMedia and/or RegionOfInterest CDA entries.
    • If the CDA Body is structured, the contents of the Section.text field must be created per the rules defined in CDA Section Narrative Block (§ 2.3.3.5 )
  • An originator of a CDA document is not required to fully encode all narrative into CDA entries within the CDA body. Within a local implementation, trading partners may ascribe additional originator responsibilities to create various entries.

1.4

CDA Extensibility

NOTE: See XML ITS - Informal Extensions for a complete discussion of V3 XML Extensibility rules.

Locally-defined markup may be used when local semantics have no corresponding representation in the CDA specification. CDA seeks to standardize the highest level of shared meaning while providing a clean and standard mechanism for tagging meaning that is not shared. In order to support local extensibility requirements, it is permitted to include additional XML elements and attributes that are not included in the CDA schema. These extensions should not change the meaning of any of the standard data items, and receivers must be able to safely ignore these elements. Document recipients must be able to faithfully render the CDA document while ignoring extensions.

Extensions may be included in the instance in a namespace other than the HL7v3 namespace, but must not be included within an ED datatype (since the contents of an ED datatype within the conformant message may be in a different namespace). Since all conformant content (outside of elements of type ED) is in the HL7 namespace, the sender can put any extension content into a foreign namespace (any namespace other than the HL7 namespace). Receiving systems must not report an error if such extensions are present.

When these extension mechanisms mark up content of general relevance, HL7 encourages users to get their requirements formalized in a subsequent version of the standard so as to maximize the use of shared semantics.

1.5

Backwards and Forwards Compatibility

NOTE: A detailed list of all changes between CDA, Release One and CDA, Release Two can be found in the appendix (see Enumeration of Changes Between Release One and Release Two (§ 3.3 )).

The basic model of CDA, Release Two is essentially unchanged. A CDA document has a header and a body. The body contains nested structures (such as sections). These structures can be coded using standard vocabularies, and can contain CDA entries. The main evolutionary steps in CDA, Release Two are that both header and body are fully RIM-derived, and there is a much richer assortment of entries to use within CDA structures. CDA, Release Two enables clinical content to be formally expressed to the extent that is it modeled in the RIM.

This section describes the types of changes that can be introduced to a new release of CDA and CDA principles of forward and backward compatibility. In general, changes can include the addition of new components; a renaming of components (including XML element and attribute names in the CDA Schema); a deprecation of components defined in a prior release; a change in cardinality of a component (either to tighten or to loosen); or a change in a vocabulary domain of a component (to add or change values, to change between CWE and CNE). The following set of guiding principles defines how CDA can continue to evolve, while protecting the investment implementers have made through their adoption of earlier releases.

  • Documentation : A new release of CDA will enumerate all substantive changes from the previous release.
  • Attested content: Attested, human readable content must be completely loss-less across CDA releases. Backwards and forwards compatibility on the attested content will be supported such that it will be possible for an automated transformation script to translate the human readable content in both directions.
  • New components : A new release of CDA can introduce new components. To preserve roundtrip translation capability, a translation from the new release to a prior release must represent the new components as extensions (e.g. local markup or local namespace).
  • Renaming : A new release of CDA can rename components (including XML element and attribute names). Where this occurs, a mapping table will list all changes. Renaming will adhere to the naming convention articulated above (see XML Markup of CDA Documents (§ 1.2.4 )).
  • Deprecated components : A new release of CDA can deprecate components defined in a prior release. Deprecated components will be removed from the subsequent release of the standard, and therefore their use is not recommended.
  • Cardinality : A new release of CDA can change the cardinality of a component. Where an optional component becomes required, a translation between releases requires a dummy value or a null value.
  • Changes to vocabulary domain : A new release of CDA can change the vocabulary domain of a component. Where this occurs, a mapping table will list changes.
  • Change within CNE : Where a value in a CNE domain in a prior release is no longer present or has been renamed, a mapping table will indicate what the current value should be.
  • Change within CWE : When a CWE domain is expanded, users should begin using the new codes in addition to any equivalent local codes they may already be using.
  • Change from CWE to CNE : To preserve roundtrip translation capability, a translation between releases must represent unrecognized components as extensions (e.g. local markup or local namespace). Ideally these situations will surface during a ballot cycle, allowing the CNE domain to be sufficiently inclusive.

These guiding principles have lead to the current approach, defined in this Release Two of the CDA standard. The goal is to ensure that the documents created using Release One can be transformed into minimally compliant Release Two instances and that Release Two documents received can be down-translated to Release One instances using automated means (transformations) with no loss of attested, human-readable content and known limitation on loss of universal processing semantics.

CommitteeNormativeBallot1

2

CDA Technical Specifications

2.1

Introduction to CDA Technical Artifacts

A complete understanding of CDA requires an understanding of the normative artifacts used to define the specification. The CDA Hierarchical Description is the definitive source for CDA conformance rules, and serves as the source from which the CDA Schema is derived. While a CDA instance must validate against the CDA Schema, it must also adhere to the conformance rules stated in the CDA Hierarchical Description. The CDA Hierarchical Description is derived from the CDA R-MIM, which in turn is derived from the HL7 Reference Information Model (RIM). The HL7 RIM is the definitive source for class and attribute definitions.

The following sections summarize the artifacts used by CDA, and how they can be used by those seeking to implement or understand the CDA specification.

2.1.1

HL7 Reference Information Model

The definitive description of the HL7 Reference Information Model can be found here.

The HL7 RIM is the definitive reference source for class and attribute definitions. The CDA specification does not exhaustively replicate RIM definitions, but instead refers the reader to the RIM for complete definitions. While CDA may further constrain RIM definitions, at no time will CDA definitions conflict with those in the RIM.

CDA, Release Two is derived from HL7 RIM, Version 2.03.

Where a reader needs to see the complete definition of a RIM attribute or class, they should refer to the HL7 RIM.

2.1.2

HL7 V3 Data Types

HL7 defines both an abstract data type specification, which is the definitive reference, and an XML-specific data type representation.

Data types define the structural format of the data carried within a RIM attribute and influence the set of allowable values an attribute may assume. Some data types have very little intrinsic semantic content. However HL7 also defines more extensive data types such as the one for an entity's name. Every attribute in the RIM is associated with one and only one data type.

CDA, Release Two is based on the HL7 V3 Data Types, Release One abstract and XML-specific specification.

A reader will often find that the XML-specific description of a data type is sufficient for implementation, but at times will want to refer to the abstract data type specification for a more comprehensive discussion.

2.1.3

HL7 Vocabulary Domains

The definitive description of HL7 V3 Vocabulary Domains can be found here.

Vocabulary domains represent value sets for coded CDA components. These domains can include HL7-defined concepts or can be drawn from HL7-recognized coding systems such as LOINC or SNOMED. The HL7 Vocabulary chapter is the definitive reference source for the definitions of HL7-defined concepts. While CDA may further constrain these definitions, at no time will CDA definitions conflict with those in the Vocabulary chapter.

Vocabulary domains have a coding strength that can be "Coded, No Extensions" (CNE), in which case the only allowable values for the CDA component are those in the vocabulary domain; or "Coded, With Extensions" (CWE), in which case values other than those in the vocabulary domain (such as local codes) can be used if necessary. Every vocabulary domain has a unique HL7-assigned identifier, and every concept within a vocabulary domain has a unique code.

Where a coded CDA component is associated with a CNE value set, the allowable values are fixed by the standard, and are enumerated as shown in the following example:

Table 2: Value set for relatedDocument.typeCode (CNE)
Code Definition

APND (append)

The current document is an addendum to the ParentDocument.

RPLC (replace)

The current document is a replacement of the ParentDocument.

XFRM (transform)

The current document is a transformation of the ParentDocument.

A number of vocabulary domains and coding systems already in existence (e.g., LOINC, SNOMED) may be used to encode concepts in CDA documents (e.g., Section.code, Observation.code). These domains are referenced as external domains according to HL7 V3 processes. Where a coded CDA component is associated with a CWE value set, preferred values may be specified by the standard (such as for ClinicalDocument.code or for ClinicalDocument.confidentialityCode). Where the standard does not enumerate any values, the implementor is free to choose from any external source, such as LOINC or SNOMED or some other realm-specific vocabulary.

Where a reader needs to see the complete definition of an HL7-defined value, they should refer to the HL7 Vocabulary chapter.

2.1.4

HL7 CDA R-MIM

The definitive description of HL7 V3 model refinement, R-MIM development and interpretation can be found here.

The CDA R-MIM is described below (see CDA R-MIM (§ 2.3 )).

Model refinement is used to constrain the RIM and arrive at the R-MIM, through a process know as "cloning". When a refined model (e.g., an R-MIM) uses a class from the base model (e.g., the HL7 RIM), that class in the refined model is referred to as a "clone". The clone is a specialization of the base class, where for instance attribute cardinalities or coded value sets have been constrained. Multiple clones of a particular base class may appear in a refined model, each representing a different specialization.

The CDA R-MIM is a graphical representation of the CDA specification. It is presented using diagramming conventions and notations that were developed by HL7 to represent the specific semantic constructs contained in the critical, "back-bone" classes of the RIM. Although it could be represented in UML notation, as the RIM is, the HL7 notation provides more details about the specific constraints and class clones being represented. The HL7 diagramming convention abbreviates some relationship conventions, enabling diagrams to be smaller and more concise and to convey more information visually.

The CDA R-MIM is a graphical aid to understanding the specification. Because the CDA Hierarchical Description, and subsequently the CDA Schema, are derived from the R-MIM, the R-MIM serves as a good basis for describing the standard. The narrative description of the specific clones used by CDA is organized to correspond with the R-MIM.

2.1.5

HL7 CDA Hierarchical Description

The definitive description of HL7 Hierarchical Description development and interpretation can be found here.

The CDA HD is described below (see CDA Hierarchical Description (§ 2.4 )).

A Hierarchical Description is a tabular representation of the sequence of elements (i.e., classes, attributes and associations) represented in an R-MIM and that define the structure of the instance without reference to XML or any other implementation technology.

The CDA HD is the definitive source for CDA conformance rules, and serves as the source from which the CDA Schema is derived. While a CDA instance must validate against the CDA Schema, it must also adhere to the conformance rules stated in the CDA Hierarchical Description. For CDA, Release Two, the CDA HD is uniquely identified by the string "POCD_HD000020". As described below (see Clinical Document (§ 2.3.1 )), this value must be included in a CDA instance to serve as an unambiguous reference to the CDA, Release Two specification.

The CDA HD is required reading for anyone implementing the CDA specification.

2.1.6

HL7 CDA Schema

The definitive description of HL7 XML Implementation Technology Specification and the process used to go from Hierarchical Description to Schema can be found here.

The CDA Schema is described below (see CDA Schema (§ 2.5 )).

CDA, Release Two is based on the HL7 V3 XML Implementable Technology Specification for V3 Structures, Release One.

Specific enhancements to the CDA Schema, above and beyond those defined in the HL7 V3 XML ITS, are described below in CDA Schema (§ 2.5 ).

Looking at the CDA R-MIM, a reader can typically identify the corresponding XML elements and attributes. Where the correspondence is unclear, the reader should refer to the HL7 V3 XML ITS.

2.2

CDA Document Exchange in HL7 Messages

From the perspective of a V2.x or V3 message, a CDA document is a multimedia object than can be exchanged as a Multipurpose Internet Mail Extensions (MIME, RFC 2046) package, encoded as an encapsulated data type (ED).

Any CDA exchange strategy, such as MIME must accommodate the following requirements:

  • There is no need to change any of the references within the base CDA document when creating the exchange package.
  • There is no need to change any of the references within the base CDA document when extracting the contents of an exchange package.
  • All components of a CDA document that are integral to its state of wholeness (such as a non-XML body or an ObservationMedia) are able to be included in a single exchange package.
  • There are no restrictions on the directory structure used by receivers. Receivers can place the components of the CDA document into directories of their choosing.
NOTE: An exchanged package should typically include all the authenticated content (e.g. base document and authenticated multimedia) and content needing to be rendered if exchanging across a firewall where the links won’t be traversable.

The current recommendation is to follow the approach described in the Internet standard RFC 2557 "MIME Encapsulation of Aggregate Documents, such as HTML (MHTML)", which is the approach for the MIME encapsulations of aggregate documents used by ebXML and DICOM.

In V2.x, CDA documents are to be exchanged in the OBX segment, in any message that can exchange documents (such as MDM). Within the OBX segment, the MIME package is placed in OBX.5 (Field 00573 Observation value), encoded as a V2.x encapsulated data type. The value of OBX.2 (Field 00570 Value Type) should be set to "ED". The value of OBX.3 should be the same as ClinicalDocument.code.

Many fields in the message will overlap in meaning with fields in the CDA document. The following table shows the correspondence between the HL7 V2 MDM message's TXA segment and components of CDA.

Table 3: HL7 V2 TXA Segment :: CDA Mapping
TXA Field CDA Component

TXA-2 Document type

ClinicalDocument.code

TXA-4 Activity date/time

Event.effectiveTime

TXA-5 Primary activity provider code/name

responsibleParty

TXA-6 Origination date/time

ClinicalDocument.effectiveTime

TXA-7 Transcription date/time

dataEnterer.time

TXA-9 Originator code/name

author

TXA-11 Transcriptionist code/name

dataEnterer

TXA-12 Unique document number

ClinicalDocument.id

TXA-13 Parent document number

ParentDocument.id

TXA-18 Document confidentiality status

ClinicalDocument.confidentialityCode

TXA-22 Authentication person, time stamp

authenticator, legalAuthenticator

TXA-23 Distributed copies

informationRecipient

The following figure shows a non-normative, valid use of RFC 2557 in a V2 message. Several other valid representations are possible.

Example 3: Example of a CDA document in an MDM message
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";
	type="text/xml"; start="10.12.45567.43"
	Content-Transfer-Encoding: BASE64

	--HL7-CDA-boundary
	Content-Type: text/xml; charset="US-ASCII"
	Content-ID: <10.12.45567.43>

	... Base 64 of of base CDA document, which contains 
  		...
  		<ObservationMedia>
    			<id root="10.23.4567.345"/> 
    			<value mediaType="image/jpeg>
      			<reference value="canned_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

	... Base64 image ...

	--HL7-CDA-boundary--

	...

In V3, CDA documents can be exchanged in any message that can exchange documents (such as the HL7 V3 Medical Records messages). The Act.text RIM attribute contains the MIME package, encoded as an encapsulated data type.

Because the V3 Medical Records messages and CDA derive from a common model, many fields in the message will overlap in meaning with fields in the CDA document. The following table shows the correspondence between the HL7 V3 Medical Records message and components of CDA.

Table 4: HL7 V3 Medical Records :: CDA Mapping
HL7 V3 Medical Records Component CDA Component Comments

ClinicalDocument

ClinicalDocument

Medical Records includes attributes not present in CDA (text, statusCode, availabilityTime, reasonCode, completioncode, storageCode, copyTime); CDA includes attributes not present in Medical Records (title).

authenticator

authenticator

 

legalAuthenticator

legalAuthenticator

 

dataEnterer

dataEnterer

 

encounterPerformer

encounterPerformer

 

responsibleParty

responsibleParty

 

custodian

custodian

 

participant

participant

 

informationRecipient

informationRecipient

 

recordTarget

recordTarget

 

author

author

 

subject

subject

The Medical Records subject is a directory of all subjects listed in the document.

relatedDocument / ParentDocument

relatedDocument / ParentDocument

 

documentationOf / Event

documentationOf / Event

 

inFulfillmentOf / Order

inFulfillmentOf / Order

 

The following figure shows a non-normative, valid use of RFC 2557 in a V3 message. Several other valid representations are possible.

Example 4: Example of a CDA document in a Version 3 message
<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";
type="text/xml"; start="10.12.45567.43"
Content-Transfer-Encoding: BASE64

--HL7-CDA-boundary
Content-Type: text/xml; charset="US-ASCII"
Content-ID: <10.12.45567.43>

... Base 64 of of base CDA document, which contains 
  ...
  <ObservationMedia>
    <id root="10.23.4567.345"/> 
    <value mediaType="image/jpeg>
      <reference value="canned_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

... Base64 image ...

--HL7-CDA-boundary--
 
      </Act.text>
    </someMessage>

2.3

CDA R-MIM

NOTE: The definitive description of HL7 V3 model refinement, R-MIM development and interpretation can be found here.

The CDA R-MIM POCD_RM000020 can be found here: Link to graphic (opens in a new window)

A CDA document is comprised of a header and a body. The header identifies and classifies the document; provides information on authentication, the encounter, the patient, and the provider; and sets the context for the document as a whole. The body contains the clinical report, and is conceptually divided up into body structures, body entries, and external references.

2.3.1

Clinical Document

The ClinicalDocument class is the entry point into the CDA R-MIM, and corresponds to the <ClinicalDocument> XML element that is the root element of a CDA document.

A CDA document is logically broken up into a CDA Header and a CDA Body. The CDA Header is comprised of ClinicalDocument attributes, participants, and act relationships other than the component relationship. The CDA Body is the target of the ClinicalDocument component act relationship.

The ClinicalDocument class (along with all other classes derived from the RIM’s Act, ActRelationship, Participation, Role, and Entity classes) inherits various attributes from the InfrastructureRoot class of the RIM, including ClinicalDocument.templateId, ClinicalDocument.typeId. When ClinicalDocument.templateId is valued in an instance, it signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the template(s) in question.

ClinicalDocument.typeId is a technology-neutral explicit reference to this CDA, Release Two specification, and must be valued as follows: ClinicalDocument.typeId.Root = "2.16.840.1.113883.1.3" (which is the OID for HL7 Registered models); ClinicalDocument.typeId.Extension = "POCD_HD000020" (which is the unique identifier for the CDA, Release Two Hierarchical Description).

2.3.2

CDA Header

The purpose of the CDA header is to enable clinical document exchange across and within institutions; facilitate clinical document management; and facilitate compilation of an individual patient's clinical documents into a lifetime electronic patient record.

2.3.2.1
CDA Header Attributes

This section describes attributes of the root ClinicalDocument class.

Table 5: Value set for ClinicalDocument.classCode (CNE)
Code Definition

DOCCLIN [default]

A clinical document is a documentation of clinical observations and services, as defined in .

Table 6: Value set for ClinicalDocument.moodCode (CNE)
Code Definition

EVN (event) [default]

An actual occurrence of an event.

ClinicalDocument.id — Represents the unique instance identifier of a clinical document.

ClinicalDocument.code — The code specifying the particular kind of document (e.g. History and Physical, Discharge Summary, Progress Note). These values are preferentially drawn from LOINC.

Within the LOINC database, beginning with version 2.09, May 2003, document type codes are those that have a value of "DOC" in the Scale component. This subset of LOINC is included in the appendix (see LOINC Document Codes (§ 3.2.2 )).

NOTE: The hierarchical relationship among LOINC document codes is in evolution. Per the LOINC version 2.12 (February 2004) manual: As soon as possible, the component terms used in the creation of the names of document type codes will be mapped to either the UMLS Metathesaurus or SNOMED CT. This mapping will help to establish the meaning of the terms and will allow aggregation and classification of document type codes based on definitions, computable relationships, and subsumption hierarchies that exist in the reference terminology.

ClinicalDocument.title — Represents the title of the document. It's commonly the case that clinical documents do not have a title, and are collectively referred to by the display name of ClinicalDocument.code (e.g. a "consultation" or "progress note"). Where these display names are rendered to the clinician, or where the document has a unique title, the ClinicalDocument.title component should be used. In the example document in the appendix (see Sample Document (§ 3.1.1 )), the value of ClinicalDocument.title = "Good Health Clinic Consultation Note".

ClinicalDocument.effectiveTime — Signifies the document creation time, when the document first came into being.

ClinicalDocument.confidentialityCode — Confidentiality is a contextual component of CDA, where the value expressed in the header holds true for the entire document, unless overridden by a nested value (as further described in CDA Context (§ 2.3.4 )).

Table 7: Value set for ClinicalDocument.confidentialityCode (CWE)
Code * Definition

N (normal) (codeSystem 2.16.840.1.113883.5.25) [default]

Normal confidentiality rules (according to good health care practice) apply. That is, only authorized individuals with a legitimate medical or business need may access this item.

R (restricted) (codeSystem 2.16.840.1.113883.5.25)

Restricted access, e.g. only to providers having a current care relationship to the patient.

V (very restricted) (codeSystem 2.16.840.1.113883.5.25)

Very restricted access as declared by the Privacy Officer of the record holder.

* The codeSystem value is included here because confidentialityCode is of type CE, and therefore must carry both a code and a codeSystem.

ClinicalDocument.languageCode — Specifies the human language of character data (whether they be in contents or attribute values). The values of the attribute are language identifiers as defined by the IETF (Internet Engineering Task Force) RFC 3066 for the Identification of Languages, ed. H. Alvestrand. 1995 (), which obsoletes RFC 1766. Language is a contextual component of CDA, where the value expressed in the header holds true for the entire document, unless overridden by a nested value (as further described in CDA Context (§ 2.3.4 )).

ClinicalDocument.setId — Represents an identifier that is common across all document revisions.

ClinicalDocument.versionNumber — An iteger value used to version successive replacement documents.

ClinicalDocument.copyTime (Deprecated) — Represents the time a document is released (i.e. copied or sent to a display device) from a document management system that maintains revisi