Clinical Document Architecture
2.0.1-sd - release

This page is part of the CDA: Clinical Document Architecture (v2.0.1-sd: CDA 2.0 - Informative) generated with FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Logical Model: Component - XML Profile

Active as of 2024-12-18

XML representation of the Component logical model.

Raw xml | Download


<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="Component"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p>Component (Document body)</p>
    </div>
  </text>
  <extension
             url="http://hl7.org/fhir/tools/StructureDefinition/logical-target">
    <valueBoolean>
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/data-absent-reason">
        <valueCode value="not-applicable"/>
      </extension>
    </valueBoolean>
  </extension>
  <extension
             url="http://hl7.org/fhir/tools/StructureDefinition/xml-namespace">
    <valueUri value="urn:hl7-org:v3"/>
  </extension>
  <extension url="http://hl7.org/fhir/tools/StructureDefinition/xml-name">
    <valueString value="component"/>
  </extension>
  <extension
             url="http://hl7.org/fhir/tools/StructureDefinition/logical-container">
    <valueUri
              value="http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument"/>
  </extension>
  <extension
             url="http://hl7.org/fhir/tools/StructureDefinition/type-profile-style">
    <valueUri value="cda"/>
  </extension>
  <url value="http://hl7.org/cda/stds/core/StructureDefinition/Component"/>
  <version value="2.0.1-sd"/>
  <name value="Component"/>
  <title value="Component (CDA Class)"/>
  <status value="active"/>
  <experimental value="false"/>
  <date value="2024-12-18T12:03:45+11:00"/>
  <publisher value="Health Level 7"/>
  <contact>
    <name value="HL7 International - Structured Documents"/>
    <telecom>
      <system value="url"/>
      <value value="http://www.hl7.org/Special/committees/structure"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="structdog@lists.HL7.org"/>
    </telecom>
  </contact>
  <description value="Component (CDA Class)"/>
  <fhirVersion value="5.0.0"/>
  <mapping>
    <identity value="rim"/>
    <uri value="http://hl7.org/v3"/>
    <name value="RIM Mapping"/>
  </mapping>
  <kind value="logical"/>
  <abstract value="false"/>
  <type value="http://hl7.org/cda/stds/core/StructureDefinition/Component"/>
  <baseDefinition
                  value="http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"/>
  <derivation value="specialization"/>
  <snapshot>
    <element id="Component">
      <path value="Component"/>
      <short value="Base for all types and resources"/>
      <definition
                  value="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."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="Base"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <constraint>
        <key value="body-choice"/>
        <severity value="error"/>
        <human value="Choice of the body required."/>
        <expression value="(nonXMLBody | structuredBody).count() = 1"/>
      </constraint>
      <isModifier value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Component.nullFlavor">
      <path value="Component.nullFlavor"/>
      <representation value="xmlAttr"/>
      <label value="Exceptional Value Detail"/>
      <definition
                  value="If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="ANY.nullFlavor"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"/>
      </type>
      <binding>
        <strength value="required"/>
        <valueSet
                  value="http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"/>
      </binding>
    </element>
    <element id="Component.realmCode">
      <path value="Component.realmCode"/>
      <definition
                  value="When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="InfrastructureRoot.realmCode"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="http://hl7.org/cda/stds/core/StructureDefinition/CS"/>
      </type>
    </element>
    <element id="Component.typeId">
      <path value="Component.typeId"/>
      <definition
                  value="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."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="InfrastructureRoot.typeId"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="http://hl7.org/cda/stds/core/StructureDefinition/II"/>
      </type>
      <constraint>
        <key value="II-1"/>
        <severity value="error"/>
        <human
               value="An II instance must have either a root or an nullFlavor."/>
        <expression value="root.exists() or nullFlavor.exists()"/>
        <source
                value="http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"/>
      </constraint>
    </element>
    <element id="Component.typeId.nullFlavor">
      <path value="Component.typeId.nullFlavor"/>
      <representation value="xmlAttr"/>
      <label value="Exceptional Value Detail"/>
      <definition
                  value="If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="ANY.nullFlavor"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"/>
      </type>
      <binding>
        <strength value="required"/>
        <valueSet
                  value="http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"/>
      </binding>
    </element>
    <element id="Component.typeId.assigningAuthorityName">
      <path value="Component.typeId.assigningAuthorityName"/>
      <representation value="xmlAttr"/>
      <label value="Assigning Authority Name"/>
      <definition
                  value="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."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="II.assigningAuthorityName"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/st-simple"/>
      </type>
    </element>
    <element id="Component.typeId.displayable">
      <path value="Component.typeId.displayable"/>
      <representation value="xmlAttr"/>
      <label value="Displayable"/>
      <definition
                  value="Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="II.displayable"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"/>
      </type>
    </element>
    <element id="Component.typeId.root">
      <path value="Component.typeId.root"/>
      <representation value="xmlAttr"/>
      <label value="Root"/>
      <definition value="Identifies the type as an HL7 Registered model"/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="II.root"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/oid"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/uuid"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/ruid"/>
      </type>
      <fixedString value="2.16.840.1.113883.1.3"/>
    </element>
    <element id="Component.typeId.extension">
      <path value="Component.typeId.extension"/>
      <representation value="xmlAttr"/>
      <label value="Extension"/>
      <definition
                  value="A character string as a unique identifier within the scope of the identifier root."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="II.extension"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/st-simple"/>
      </type>
    </element>
    <element id="Component.templateId">
      <path value="Component.templateId"/>
      <definition
                  value="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"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="InfrastructureRoot.templateId"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="http://hl7.org/cda/stds/core/StructureDefinition/II"/>
      </type>
    </element>
    <element id="Component.typeCode">
      <path value="Component.typeCode"/>
      <representation value="xmlAttr"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Component.typeCode"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"/>
      </type>
      <fixedCode value="COMP"/>
      <binding>
        <strength value="required"/>
        <valueSet
                  value="http://terminology.hl7.org/ValueSet/v3-ActRelationshipHasComponent"/>
      </binding>
    </element>
    <element id="Component.contextConductionInd">
      <path value="Component.contextConductionInd"/>
      <representation value="xmlAttr"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Component.contextConductionInd"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"/>
      </type>
      <fixedBoolean value="true"/>
    </element>
    <element id="Component.nonXMLBody">
      <path value="Component.nonXMLBody"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Component.nonXMLBody"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code
              value="http://hl7.org/cda/stds/core/StructureDefinition/NonXMLBody"/>
      </type>
    </element>
    <element id="Component.structuredBody">
      <path value="Component.structuredBody"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Component.structuredBody"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code
              value="http://hl7.org/cda/stds/core/StructureDefinition/StructuredBody"/>
      </type>
    </element>
  </snapshot>
  <differential>
    <element id="Component">
      <path value="Component"/>
      <min value="1"/>
      <max value="1"/>
      <constraint>
        <key value="body-choice"/>
        <severity value="error"/>
        <human value="Choice of the body required."/>
        <expression value="(nonXMLBody | structuredBody).count() = 1"/>
      </constraint>
    </element>
    <element id="Component.typeCode">
      <path value="Component.typeCode"/>
      <representation value="xmlAttr"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="code"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"/>
      </type>
      <fixedCode value="COMP"/>
      <binding>
        <strength value="required"/>
        <valueSet
                  value="http://terminology.hl7.org/ValueSet/v3-ActRelationshipHasComponent"/>
      </binding>
    </element>
    <element id="Component.contextConductionInd">
      <path value="Component.contextConductionInd"/>
      <representation value="xmlAttr"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="boolean"/>
        <profile
                 value="http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"/>
      </type>
      <fixedBoolean value="true"/>
    </element>
    <element id="Component.nonXMLBody">
      <path value="Component.nonXMLBody"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code
              value="http://hl7.org/cda/stds/core/StructureDefinition/NonXMLBody"/>
      </type>
    </element>
    <element id="Component.structuredBody">
      <path value="Component.structuredBody"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code
              value="http://hl7.org/cda/stds/core/StructureDefinition/StructuredBody"/>
      </type>
    </element>
  </differential>
</StructureDefinition>