Consolidated CDA (C-CDA)
4.0.0 - STU4 United States of America flag

This page is part of the CCDA: Consolidated CDA Release (v4.0.0: CCDA 4.0) generated with FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions

Logical Model: ExternalDocumentReference - Detailed Descriptions

Draft as of 2025-06-20

Definitions for the ExternalDocumentReference logical model.

Guidance on how to interpret the contents of this table can be foundhere

0. ExternalDocument
Definition

Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.


Base definition for all types defined in FHIR type system.

ShortBase for all types and resources
Control10..1*
Is Modifierfalse
Logical ContainerClinicalDocument (CDA Class)
ValidationInstance of this type are validated by templateId
XML FormatIn the XML format, this property has the namespace urn:hl7-org:v3.
Invariantsshould-setId: SHOULD contain setId (setId.exists())
should-versionNumber: SHOULD contain versionNumber (versionNumber.exists())
2. ExternalDocument.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
(required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor)
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
4. ExternalDocument.realmCode
Definition

When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question

Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
6. ExternalDocument.typeId
Definition

When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.

Control0..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
InvariantsII-1: An II instance must have either a root or an nullFlavor. (root.exists() or nullFlavor.exists())
8. ExternalDocument.typeId.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
(required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor)
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
10. ExternalDocument.typeId.assigningAuthorityName
Definition

A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

Control0..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelAssigning Authority Name
12. ExternalDocument.typeId.displayable
Definition

Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

Control0..1
Typeboolean(bl: Boolean)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelDisplayable
14. ExternalDocument.typeId.root
Definition

Identifies the type as an HL7 Registered model

Control1..1
Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelRoot
Fixed Value2.16.840.1.113883.1.3
16. ExternalDocument.typeId.extension
Definition

A character string as a unique identifier within the scope of the identifier root.

Control1..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExtension
18. ExternalDocument.templateId
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
SlicingThis element introduces a set of slices on ExternalDocument.templateId. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ root
  • value @ extension
  • 20. ExternalDocument.templateId:external-doc-ref
    Slice Nameexternal-doc-ref
    Definition

    When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

    Control1..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
    22. ExternalDocument.templateId:external-doc-ref.nullFlavor
    Definition

    If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

    Control0..1
    BindingThe codes SHALL be taken from CDANullFlavor
    (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor)
    Typecode(cs: Coded Simple Value)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    LabelExceptional Value Detail
    24. ExternalDocument.templateId:external-doc-ref.assigningAuthorityName
    Definition

    A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

    Control0..1
    Typestring(st: Character String)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    LabelAssigning Authority Name
    26. ExternalDocument.templateId:external-doc-ref.displayable
    Definition

    Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

    Control0..1
    Typeboolean(bl: Boolean)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    LabelDisplayable
    28. ExternalDocument.templateId:external-doc-ref.root
    Definition

    A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.

    Control1..1
    Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    LabelRoot
    Pattern Value2.16.840.1.113883.10.20.22.4.115
    30. ExternalDocument.templateId:external-doc-ref.extension
    Definition

    A character string as a unique identifier within the scope of the identifier root.

    Control1..1
    Typestring(st: Character String)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    LabelExtension
    Pattern Value2014-06-09
    32. ExternalDocument.classCode
    Comments

    SHALL contain exactly one [1..1] @classCode="DOCCLIN" Clinical Document (CodeSystem: HL7ActClass urn:oid:2.16.840.1.113883.5.6) (CONF:1098-31931).

    Control1..1
    BindingThe codes SHALL be taken from ActClassDocument
    (required to http://terminology.hl7.org/ValueSet/v3-ActClassDocument)
    Typecode(cs: Coded Simple Value)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    Default ValueDOC
    Fixed ValueDOCCLIN
    34. ExternalDocument.moodCode
    Comments

    SHALL contain exactly one [1..1] @moodCode="EVN" Event (CodeSystem: HL7ActMood urn:oid:2.16.840.1.113883.5.1001) (CONF:1098-31932).

    Control1..1
    BindingThe codes SHALL be taken from CDAActMood
    (required to http://hl7.org/cda/stds/core/ValueSet/CDAActMood)
    Typecode(cs: Coded Simple Value)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    XML FormatIn the XML format, this property is represented as an attribute.
    Fixed ValueEVN
    36. ExternalDocument.id
    Comments

    SHALL contain exactly one [1..1] id (CONF:1098-32751).

    Control1..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
    38. ExternalDocument.code
    Comments

    SHALL contain exactly one [1..1] code (CONF:1098-31933).

    Control1..1
    BindingFor example codes, see FHIRDocumentTypeCodes
    (example to http://hl7.org/fhir/ValueSet/doc-typecodes)
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
    40. ExternalDocument.text
    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
    42. ExternalDocument.setId
    Comments

    SHOULD contain zero or one [0..1] setId (CONF:1098-32752).

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
    44. ExternalDocument.versionNumber
    Comments

    SHOULD contain zero or one [0..1] versionNumber (CONF:1098-32753).

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/INT
    46. ExternalDocument.sdtcAuthor
    Control0..*
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/Author
    XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameauthor.

    Guidance on how to interpret the contents of this table can be foundhere

    0. ExternalDocument
    Logical ContainerClinicalDocument (CDA Class)
    ValidationInstance of this type are validated by templateId
    XML FormatIn the XML format, this property has the namespace urn:hl7-org:v3.
    Invariantsshould-setId: SHOULD contain setId (setId.exists())
    should-versionNumber: SHOULD contain versionNumber (versionNumber.exists())
    2. ExternalDocument.templateId
    Control1..?
    SlicingThis element introduces a set of slices on ExternalDocument.templateId. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ root
    • value @ extension
    • 4. ExternalDocument.templateId:external-doc-ref
      Slice Nameexternal-doc-ref
      Control1..1
      6. ExternalDocument.templateId:external-doc-ref.root
      Control1..?
      Pattern Value2.16.840.1.113883.10.20.22.4.115
      8. ExternalDocument.templateId:external-doc-ref.extension
      Control1..?
      Pattern Value2014-06-09
      10. ExternalDocument.classCode
      Comments

      SHALL contain exactly one [1..1] @classCode="DOCCLIN" Clinical Document (CodeSystem: HL7ActClass urn:oid:2.16.840.1.113883.5.6) (CONF:1098-31931).

      Control1..?
      Fixed ValueDOCCLIN
      12. ExternalDocument.moodCode
      Comments

      SHALL contain exactly one [1..1] @moodCode="EVN" Event (CodeSystem: HL7ActMood urn:oid:2.16.840.1.113883.5.1001) (CONF:1098-31932).

      Control1..?
      14. ExternalDocument.id
      Comments

      SHALL contain exactly one [1..1] id (CONF:1098-32751).

      Control1..1
      16. ExternalDocument.code
      Comments

      SHALL contain exactly one [1..1] code (CONF:1098-31933).

      Control1..?
      18. ExternalDocument.setId
      Comments

      SHOULD contain zero or one [0..1] setId (CONF:1098-32752).

      20. ExternalDocument.versionNumber
      Comments

      SHOULD contain zero or one [0..1] versionNumber (CONF:1098-32753).

      Guidance on how to interpret the contents of this table can be foundhere

      0. ExternalDocument
      Definition

      Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.

      ShortBase for all types and resources
      Control1..1
      Is Modifierfalse
      Logical ContainerClinicalDocument (CDA Class)
      ValidationInstance of this type are validated by templateId
      XML FormatIn the XML format, this property has the namespace urn:hl7-org:v3.
      Invariantsshould-setId: SHOULD contain setId (setId.exists())
      should-versionNumber: SHOULD contain versionNumber (versionNumber.exists())
      2. ExternalDocument.nullFlavor
      Definition

      If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

      Control0..1
      BindingThe codes SHALL be taken from CDANullFlavor
      (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor)
      Typecode(cs: Coded Simple Value)
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      LabelExceptional Value Detail
      4. ExternalDocument.realmCode
      Definition

      When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question

      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
      6. ExternalDocument.typeId
      Definition

      When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.

      Control0..1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
      InvariantsII-1: An II instance must have either a root or an nullFlavor. (root.exists() or nullFlavor.exists())
      8. ExternalDocument.typeId.nullFlavor
      Definition

      If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

      Control0..1
      BindingThe codes SHALL be taken from CDANullFlavor
      (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor)
      Typecode(cs: Coded Simple Value)
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      LabelExceptional Value Detail
      10. ExternalDocument.typeId.assigningAuthorityName
      Definition

      A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

      Control0..1
      Typestring(st: Character String)
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      LabelAssigning Authority Name
      12. ExternalDocument.typeId.displayable
      Definition

      Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

      Control0..1
      Typeboolean(bl: Boolean)
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      LabelDisplayable
      14. ExternalDocument.typeId.root
      Definition

      Identifies the type as an HL7 Registered model

      Control1..1
      Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      LabelRoot
      Fixed Value2.16.840.1.113883.1.3
      16. ExternalDocument.typeId.extension
      Definition

      A character string as a unique identifier within the scope of the identifier root.

      Control1..1
      Typestring(st: Character String)
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      LabelExtension
      18. ExternalDocument.templateId
      Definition

      When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

      Control1..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
      SlicingThis element introduces a set of slices on ExternalDocument.templateId. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • value @ root
      • value @ extension
      • 20. ExternalDocument.templateId:external-doc-ref
        Slice Nameexternal-doc-ref
        Definition

        When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

        Control1..1
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
        22. ExternalDocument.templateId:external-doc-ref.nullFlavor
        Definition

        If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

        Control0..1
        BindingThe codes SHALL be taken from CDANullFlavor
        (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor)
        Typecode(cs: Coded Simple Value)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        LabelExceptional Value Detail
        24. ExternalDocument.templateId:external-doc-ref.assigningAuthorityName
        Definition

        A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

        Control0..1
        Typestring(st: Character String)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        LabelAssigning Authority Name
        26. ExternalDocument.templateId:external-doc-ref.displayable
        Definition

        Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

        Control0..1
        Typeboolean(bl: Boolean)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        LabelDisplayable
        28. ExternalDocument.templateId:external-doc-ref.root
        Definition

        A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.

        Control1..1
        Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        LabelRoot
        Pattern Value2.16.840.1.113883.10.20.22.4.115
        30. ExternalDocument.templateId:external-doc-ref.extension
        Definition

        A character string as a unique identifier within the scope of the identifier root.

        Control1..1
        Typestring(st: Character String)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        LabelExtension
        Pattern Value2014-06-09
        32. ExternalDocument.classCode
        Comments

        SHALL contain exactly one [1..1] @classCode="DOCCLIN" Clinical Document (CodeSystem: HL7ActClass urn:oid:2.16.840.1.113883.5.6) (CONF:1098-31931).

        Control1..1
        BindingThe codes SHALL be taken from ActClassDocument
        (required to http://terminology.hl7.org/ValueSet/v3-ActClassDocument)
        Typecode(cs: Coded Simple Value)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        Default ValueDOC
        Fixed ValueDOCCLIN
        34. ExternalDocument.moodCode
        Comments

        SHALL contain exactly one [1..1] @moodCode="EVN" Event (CodeSystem: HL7ActMood urn:oid:2.16.840.1.113883.5.1001) (CONF:1098-31932).

        Control1..1
        BindingThe codes SHALL be taken from CDAActMood
        (required to http://hl7.org/cda/stds/core/ValueSet/CDAActMood)
        Typecode(cs: Coded Simple Value)
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        Fixed ValueEVN
        36. ExternalDocument.id
        Comments

        SHALL contain exactly one [1..1] id (CONF:1098-32751).

        Control1..1
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
        38. ExternalDocument.code
        Comments

        SHALL contain exactly one [1..1] code (CONF:1098-31933).

        Control1..1
        BindingFor example codes, see FHIRDocumentTypeCodes
        (example to http://hl7.org/fhir/ValueSet/doc-typecodes)
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
        40. ExternalDocument.text
        Control0..1
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
        42. ExternalDocument.setId
        Comments

        SHOULD contain zero or one [0..1] setId (CONF:1098-32752).

        Control0..1
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
        44. ExternalDocument.versionNumber
        Comments

        SHOULD contain zero or one [0..1] versionNumber (CONF:1098-32753).

        Control0..1
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/INT
        46. ExternalDocument.sdtcAuthor
        Control0..*
        Typehttp://hl7.org/cda/stds/core/StructureDefinition/Author
        XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameauthor.