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

Consolidated CDA (C-CDA), published by Health Level Seven. This guide is not an authorized publication; it is the continuous build for version 4.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/CDA-ccda/ and changes regularly. See the Directory of published versions

Logical Model: SmokingStatus - Detailed Descriptions

Draft as of 2025-05-06

Definitions for the SmokingStatus logical model.

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

0. Observation
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-text-ref-value: SHOULD contain text/reference/@value (text.reference.value.exists())
coded-value: When code is Smoking Status (72166-2) or Tobacco Use (11367-0), the value SHALL be coded ((code.code = '72166-2' or code.code = '11367-0') implies value.code.exists())
2. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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 Observation.templateId. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ root
  • value @ extension
  • 20. Observation.templateId:tobacco-use
    Slice Nametobacco-use
    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. Observation.templateId:tobacco-use.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. Observation.templateId:tobacco-use.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. Observation.templateId:tobacco-use.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. Observation.templateId:tobacco-use.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.511
    30. Observation.templateId:tobacco-use.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 Value2024-05-01
    32. Observation.classCode
    Control1..1
    BindingThe codes SHALL be taken from CDAActClassObservation
    (required to http://hl7.org/cda/stds/core/ValueSet/CDAActClassObservation)
    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 ValueOBS
    34. Observation.moodCode
    Control1..1
    BindingThe codes SHALL be taken from XActMoodDocumentObservation (2.0.0)
    (required to http://terminology.hl7.org/ValueSet/v3-xActMoodDocumentObservation|2.0.0)
    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. Observation.negationInd
    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.
    38. Observation.id
    Definition

    The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

    ShortLogical id of this artifact
    Comments

    Within the context of the FHIR RESTful interactions, the resource has an id except for cases like the create and conditional update. Otherwise, the use of the resouce id depends on the given use case.

    Control10..*1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/IIid
    Is Modifierfalse
    40. Observation.sdtcCategory
    Control0..*
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
    XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namecategory.
    42. Observation.code
    Definition

    Describes what was observed. Sometimes this is called the observation "name".

    ShortType of observation (code / type)
    Comments

    All code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.

    Control1..1
    This element is affected by the following invariants: obs-7
    BindingThe codes SHALL be taken from For example codes, see Smoking Status Type .http://hl7.org/fhir/ValueSet/observation-codes
    (required to http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1267.6)

    Smoking status type


    Codes identifying names of simple observations.

    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CDCodeableConcept
    Is Modifierfalse
    XML FormatThe type of this property is determined using the xsi:typeattribute.
    Requirements

    Knowing what kind of observation is being made is essential to understanding the observation.

    Alternate NamesName
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    44. Observation.code.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
    46. Observation.code.code
    Definition

    The plain code symbol defined by the code system. For example, "784.0" is the code symbol of the ICD-9 code "784.0" for headache.

    Control1..1
    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.
    LabelCode
    48. Observation.code.codeSystem
    Definition

    Specifies the code system that defines the code.

    Control0..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.
    LabelCode System
    50. Observation.code.codeSystemName
    Definition

    The common name of the coding system.

    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.
    LabelCode System Name
    52. Observation.code.codeSystemVersion
    Definition

    If applicable, a version descriptor defined specifically for the given code system.

    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.
    LabelCode System Version
    54. Observation.code.displayName
    Definition

    A name or title for the code, under which the sending system shows the code value to its users.

    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.
    LabelDisplay Name
    56. Observation.code.sdtcValueSet
    Definition

    The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.

    Control0..1
    Typestring(oid: ISO Object Identifier)
    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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSet.
    58. Observation.code.sdtcValueSetVersion
    Definition

    The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.

    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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSetVersion.
    60. Observation.code.originalText
    Definition

    The text or phrase used as the basis for the coding.

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
    LabelOriginal Text
    62. Observation.code.qualifier
    Definition

    Specifies additional codes that increase the specificity of the the primary code.

    Control0..*
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CR
    LabelQualifier
    64. Observation.code.translation
    Definition

    A set of other concept descriptors that translate this concept descriptor into other code systems.

    Control0..*
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
    XML FormatThe type of this property is determined using the xsi:typeattribute.
    LabelTranslation
    66. Observation.derivationExpr
    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/ST
    68. Observation.text
    Definition

    A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

    ShortSHOULD reference the portion of section narrative text corresponding to this entryText summary of the resource, for human interpretation
    Comments

    Contained resources do not have a narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

    Control0..1
    This element is affected by the following invariants: dom-6
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/EDNarrative
    Is Modifierfalse
    XML FormatThe type of this property is determined using the xsi:typeattribute.
    Alternate Namesnarrative, html, xhtml, display
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    70. Observation.text.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
    72. Observation.text.compression
    Definition

    Indicates whether the raw byte data is compressed, and what compression algorithm was used.

    Control0..1
    BindingThe codes SHALL be taken from CDACompressionAlgorithm
    (required to http://hl7.org/cda/stds/core/ValueSet/CDACompressionAlgorithm)
    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.
    LabelCompression
    74. Observation.text.integrityCheck
    Definition

    The integrity check is a short binary value representing a cryptographically strong checksum that is calculated over the binary data. The purpose of this property, when communicated with a reference is for anyone to validate later whether the reference still resolved to the same data that the reference resolved to when the encapsulated data value with reference was created.

    Control0..1
    Typebase64Binary(bin: Binary Data)
    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.
    LabelIntegrity Check
    76. Observation.text.integrityCheckAlgorithm
    Definition

    Specifies the algorithm used to compute the integrityCheck value. The cryptographically strong checksum algorithm Secure Hash Algorithm-1 (SHA-1) is currently the industry standard. It has superseded the MD5 algorithm only a couple of years ago, when certain flaws in the security of MD5 were discovered. Currently the SHA-1 hash algorithm is the default choice for the integrity check algorithm. Note that SHA-256 is also entering widespread usage.

    Control0..1
    BindingThe codes SHALL be taken from IntegrityCheckAlgorithm (2.0.0)
    (required to http://terminology.hl7.org/ValueSet/v3-IntegrityCheckAlgorithm|2.0.0)
    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.
    LabelIntegrity Check Algorithm
    78. Observation.text.language
    Definition

    For character based information the language property specifies the human language of the text.

    Control0..1
    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.
    LabelLanguage
    80. Observation.text.mediaType
    Definition

    Identifies the type of the encapsulated data and identifies a method to interpret or render the data.

    Control0..1
    BindingFor example codes, see MediaType
    (example to http://terminology.hl7.org/ValueSet/v3-MediaType)
    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.
    LabelMedia Type
    82. Observation.text.representation
    Control0..1
    BindingThe codes SHALL be taken from CDABinaryDataEncoding
    (required to http://hl7.org/cda/stds/core/ValueSet/BinaryDataEncoding)
    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.
    84. Observation.text.xmlText
    Definition

    Data that is primarily intended for human interpretation or for further machine processing is outside the scope of HL7. This includes unformatted or formatted written language, multimedia data, or structured information as defined by a different standard (e.g., XML-signatures.)

    ShortAllows for mixed text content. If @representation='B64', this SHALL be a base64binary string.
    Comments

    This element is represented in XML as textual content. The actual name "xmlText" will not appear in a CDA instance.

    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 unadorned text.
    86. Observation.text.reference
    Definition

    A telecommunication address (TEL), such as a URL for HTTP or FTP, which will resolve to precisely the same binary data that could as well have been provided as inline data.

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/TEL
    LabelReference
    Invariantsvalue-starts-octothorpe: If reference/@value is present, it SHALL begin with a '#' and SHALL point to its corresponding narrative (value.exists() implies value.startsWith('#'))
    88. Observation.text.thumbnail
    Definition

    An abbreviated rendition of the full data. A thumbnail requires significantly fewer resources than the full data, while still maintaining some distinctive similarity with the full data. A thumbnail is typically used with by-reference encapsulated data. It allows a user to select data more efficiently before actually downloading through the reference.

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
    LabelThumbnail
    90. Observation.statusCode
    Control1..1
    BindingThe codes SHALL be taken from ActStatus
    (required to http://terminology.hl7.org/ValueSet/v3-ActStatus)
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
    92. Observation.statusCode.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
    94. Observation.statusCode.code
    Definition

    The plain code symbol defined by the code system. For example, "784.0" is the code symbol of the ICD-9 code "784.0" for headache.

    Control1..1
    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.
    LabelCode
    Fixed Valuecompleted
    96. Observation.statusCode.codeSystem
    Definition

    Specifies the code system that defines the code.

    Control0..0
    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.
    LabelCode System
    98. Observation.statusCode.codeSystemName
    Definition

    The common name of the coding system.

    Control0..0
    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.
    LabelCode System Name
    100. Observation.statusCode.codeSystemVersion
    Definition

    If applicable, a version descriptor defined specifically for the given code system.

    Control0..0
    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.
    LabelCode System Version
    102. Observation.statusCode.displayName
    Definition

    A name or title for the code, under which the sending system shows the code value to its users.

    Control0..0
    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.
    LabelDisplay Name
    104. Observation.statusCode.sdtcValueSet
    Definition

    The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.

    Control0..1
    Typestring(oid: ISO Object Identifier)
    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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSet.
    106. Observation.statusCode.sdtcValueSetVersion
    Definition

    The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.

    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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSetVersion.
    108. Observation.statusCode.originalText
    Definition

    The text or phrase used as the basis for the coding.

    Control0..0
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
    LabelOriginal Text
    110. Observation.statusCode.qualifier
    Definition

    Specifies additional codes that increase the specificity of the the primary code.

    Control0..0
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CR
    LabelQualifier
    112. Observation.statusCode.translation
    Definition

    A set of other concept descriptors that translate this concept descriptor into other code systems.

    Control0..0
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
    XML FormatThe type of this property is determined using the xsi:typeattribute.
    LabelTranslation
    114. Observation.effectiveTime
    Control1..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVL-TS
    116. Observation.effectiveTime.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
    118. Observation.effectiveTime.value
    Definition

    A quantity specifying a point on the axis of natural time. A point in time is most often represented as a calendar expression.

    ShortRepresents a timestamp indicating a "point in time" when the observation was true
    Control0..1
    TypedateTime(ts: Point in Time)
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Date FormatYYYYMMDDHHMMSS.UUUU[+|-ZZzz]
    XML FormatIn the XML format, this property is represented as an attribute.
    120. Observation.effectiveTime.operator
    Definition

    A code specifying whether the set component is included (union) or excluded (set-difference) from the set, or other set operations with the current set component and the set as constructed from the representation stream up to the current point.

    Control0..1
    BindingThe codes SHALL be taken from CDASetOperator
    (required to http://hl7.org/cda/stds/core/ValueSet/CDASetOperator)
    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 ValueI
    122. Observation.effectiveTime.low
    Definition

    This is the low limit of the interval.

    ShortRepresents the earliest time the observation was true. Should not be used for temporal codes (e.g. 266919005 - Never smoked tobacco)
    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVXB-TS
    LabelLow Boundary
    124. Observation.effectiveTime.center
    Definition

    The arithmetic mean of the interval (low plus high divided by 2). The purpose of distinguishing the center as a semantic property is for conversions of intervals from and to point values.

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/TS
    LabelCentral Value
    126. Observation.effectiveTime.width
    Definition

    The difference between high and low boundary. The purpose of distinguishing a width property is to handle all cases of incomplete information symmetrically. In any interval representation only two of the three properties high, low, and width need to be stated and the third can be derived.

    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/PQ
    LabelWidth
    128. Observation.effectiveTime.high
    Definition

    This is the high limit of the interval.

    ShortRepresents the last known time the observation was true. If the observation is still true, set `@nullFlavor` to `UNK`.
    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVXB-TS
    LabelHigh Boundary
    130. Observation.priorityCode
    Control0..1
    BindingFor example codes, see ActPriority
    (example to http://terminology.hl7.org/ValueSet/v3-ActPriority)
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
    132. Observation.repeatNumber
    Control0..1
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVL-INT
    134. Observation.languageCode
    Control0..1
    BindingThe codes SHALL be taken from AllLanguages
    (required to http://hl7.org/fhir/ValueSet/all-languages)
    Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
    136. Observation.value
    ShortREAL shall only be used for Smoking Status where code = 401201003 or 782516008
    Control1..1
    TypeChoice of: http://hl7.org/cda/stds/core/StructureDefinition/CD, http://hl7.org/cda/stds/core/StructureDefinition/REAL
    XML FormatThe type of this property is determined using the xsi:typeattribute.
    SlicingThis element introduces a set of slices on Observation.value. The slices areUnordered and Closed, and can be differentiated using the following discriminators:
    • type @ $this
    • 138. Observation.value:packYears
      Slice NamepackYears
      ShortOnly used for Smoking Status where code = 401201003 or 782516008
      Control0..1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/REAL
      XML FormatThe type of this property is determined using the xsi:typeattribute.
      140. Observation.value:coded
      Slice Namecoded
      Control0..1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
      XML FormatThe type of this property is determined using the xsi:typeattribute.
      142. Observation.value:coded.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
      144. Observation.value:coded.code
      Definition

      The plain code symbol defined by the code system. For example, "784.0" is the code symbol of the ICD-9 code "784.0" for headache.

      Control1..1
      BindingThe codes SHALL be taken from Smoking status comprehensive .
      (required to http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1267.3)

      Smoking status comprehensive

      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.
      LabelCode
      146. Observation.value:coded.codeSystem
      Definition

      Specifies the code system that defines the code.

      Control0..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.
      LabelCode System
      148. Observation.value:coded.codeSystemName
      Definition

      The common name of the coding system.

      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.
      LabelCode System Name
      150. Observation.value:coded.codeSystemVersion
      Definition

      If applicable, a version descriptor defined specifically for the given code system.

      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.
      LabelCode System Version
      152. Observation.value:coded.displayName
      Definition

      A name or title for the code, under which the sending system shows the code value to its users.

      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.
      LabelDisplay Name
      154. Observation.value:coded.sdtcValueSet
      Definition

      The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.

      Control0..1
      Typestring(oid: ISO Object Identifier)
      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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSet.
      156. Observation.value:coded.sdtcValueSetVersion
      Definition

      The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.

      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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSetVersion.
      158. Observation.value:coded.originalText
      Definition

      The text or phrase used as the basis for the coding.

      Control0..1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
      LabelOriginal Text
      160. Observation.value:coded.qualifier
      Definition

      Specifies additional codes that increase the specificity of the the primary code.

      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CR
      LabelQualifier
      162. Observation.value:coded.translation
      Definition

      A set of other concept descriptors that translate this concept descriptor into other code systems.

      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
      XML FormatThe type of this property is determined using the xsi:typeattribute.
      LabelTranslation
      164. Observation.interpretationCode
      Control0..*
      BindingThe codes SHALL be taken from CDAObservationInterpretation
      (required to http://hl7.org/cda/stds/core/ValueSet/CDAObservationInterpretation)
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
      166. Observation.methodCode
      Control0..*
      BindingFor example codes, see ObservationMethod
      (example to http://terminology.hl7.org/ValueSet/v3-ObservationMethod)
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
      168. Observation.targetSiteCode
      Definition

      Drawn from concept domain ActSite

      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
      170. Observation.subject
      Definition

      The patient, or group of patients, location, device, organization, procedure or practitioner this observation is about and into whose or what record the observation is placed. If the actual focus of the observation is different from the subject (or a sample of, part, or region of the subject), the focus element or the code itself specifies the actual focus of the observation.

      ShortWho and/or what the observation is about
      Comments

      One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated. The subject of an Observation may in some cases be a procedure. This supports the regulatory inspection use case where observations are captured during inspections of a procedure that is being performed (independent of any particular patient or whether patient related at all).

      Control0..1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/SubjectReference(Patient, Group, Device, Location, Organization, Procedure, Practitioner, Medication, Substance, BiologicallyDerivedProduct, NutritionProduct)
      Is Modifierfalse
      Requirements

      Observations have no value if you don't know who or what they're about.

      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      172. Observation.specimen
      Definition

      The specimen that was used when this observation was made.

      ShortSpecimen used for this observation
      Comments

      Should only be used if not implicit in code found in Observation.code. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).

      Control0..*1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/SpecimenReference(Specimen, Group)
      Is Modifierfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      obs-9: If Observation.specimen is a reference to Group, the group can only have specimens ((reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen))
      174. Observation.performer
      Definition

      Who was responsible for asserting the observed value as "true".

      ShortWho is responsible for the observation
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Performer2Reference(Practitioner, PractitionerRole, Organization, CareTeam, Patient, RelatedPerson)
      Is Modifierfalse
      Requirements

      May give a degree of confidence in the observation and also indicates where follow-up questions should be directed.

      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      176. Observation.author
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Author
      178. Observation.informant
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Informant
      180. Observation.participant
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Participant2
      182. Observation.entryRelationship
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship
      184. Observation.reference
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Reference
      186. Observation.precondition
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Precondition
      188. Observation.sdtcPrecondition2
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/Precondition2
      XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameprecondition2.
      190. Observation.referenceRange
      Definition

      Relates an Observation to the ObservationRange class, where the expected range of values for a particular observation can be specified.


      Guidance on how to interpret the value by comparison to a normal or recommended range. Multiple reference ranges are interpreted as an "OR". In other words, to represent two distinct target populations, two referenceRange elements would be used.

      ShortProvides guide for interpretation
      Comments

      Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.

      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRootBackboneElement
      Is Modifierfalse
      Requirements

      Knowing what values are considered "normal" can help evaluate the significance of a particular result. Need to be able to provide multiple reference ranges for different contexts.

      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      obs-3: Must have at least a low or a high or text (low.exists() or high.exists() or text.exists())
      192. Observation.referenceRange.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
      194. Observation.referenceRange.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
      196. Observation.referenceRange.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())
      198. Observation.referenceRange.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
      200. Observation.referenceRange.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
      202. Observation.referenceRange.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
      204. Observation.referenceRange.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
      206. Observation.referenceRange.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
      208. Observation.referenceRange.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

      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
      210. Observation.referenceRange.typeCode
      Control0..1
      BindingThe codes SHALL be taken from CDAActRelationshipType
      (required to http://hl7.org/cda/stds/core/ValueSet/CDAActRelationshipType)
      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 ValueREFV
      212. Observation.referenceRange.observationRange
      Control1..1
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/ObservationRange
      214. Observation.sdtcInFulfillmentOf1
      Control0..*
      Typehttp://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf1
      XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameinFulfillmentOf1.

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

      0. Observation
      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-text-ref-value: SHOULD contain text/reference/@value (text.reference.value.exists())
      coded-value: When code is Smoking Status (72166-2) or Tobacco Use (11367-0), the value SHALL be coded ((code.code = '72166-2' or code.code = '11367-0') implies value.code.exists())
      2. Observation.templateId
      Control1..?
      SlicingThis element introduces a set of slices on Observation.templateId. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • value @ root
      • value @ extension
      • 4. Observation.templateId:tobacco-use
        Slice Nametobacco-use
        Control1..1
        6. Observation.templateId:tobacco-use.root
        Control1..?
        Pattern Value2.16.840.1.113883.10.20.22.4.511
        8. Observation.templateId:tobacco-use.extension
        Control1..?
        Pattern Value2024-05-01
        10. Observation.classCode
        Fixed ValueOBS
        12. Observation.moodCode
        Fixed ValueEVN
        14. Observation.id
        Control1..?
        16. Observation.code
        BindingThe codes SHALL be taken from Smoking Status Type .
        (required to http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1267.6)

        Smoking status type

        18. Observation.code.code
        Control1..?
        20. Observation.text
        ShortSHOULD reference the portion of section narrative text corresponding to this entry
        22. Observation.text.reference
        Invariantsvalue-starts-octothorpe: If reference/@value is present, it SHALL begin with a '#' and SHALL point to its corresponding narrative (value.exists() implies value.startsWith('#'))
        24. Observation.statusCode
        Control1..?
        26. Observation.statusCode.code
        Control1..?
        Fixed Valuecompleted
        28. Observation.effectiveTime
        Control1..?
        30. Observation.effectiveTime.value
        ShortRepresents a timestamp indicating a "point in time" when the observation was true
        32. Observation.effectiveTime.low
        ShortRepresents the earliest time the observation was true. Should not be used for temporal codes (e.g. 266919005 - Never smoked tobacco)
        34. Observation.effectiveTime.high
        ShortRepresents the last known time the observation was true. If the observation is still true, set `@nullFlavor` to `UNK`.
        36. Observation.value
        ShortREAL shall only be used for Smoking Status where code = 401201003 or 782516008
        Control1..1
        TypeChoice of: http://hl7.org/cda/stds/core/StructureDefinition/CD, http://hl7.org/cda/stds/core/StructureDefinition/REAL, http://hl7.org/cda/stds/core/StructureDefinition/EIVL-TS, http://hl7.org/cda/stds/core/StructureDefinition/CO, http://hl7.org/cda/stds/core/StructureDefinition/TEL, http://hl7.org/cda/stds/core/StructureDefinition/EN, http://hl7.org/cda/stds/core/StructureDefinition/BL, http://hl7.org/cda/stds/core/StructureDefinition/AD, http://hl7.org/cda/stds/core/StructureDefinition/PIVL-TS, http://hl7.org/cda/stds/core/StructureDefinition/RTO-PQ-PQ, http://hl7.org/cda/stds/core/StructureDefinition/SXPR-TS, http://hl7.org/cda/stds/core/StructureDefinition/ED, http://hl7.org/cda/stds/core/StructureDefinition/TS, http://hl7.org/cda/stds/core/StructureDefinition/II, http://hl7.org/cda/stds/core/StructureDefinition/ST, http://hl7.org/cda/stds/core/StructureDefinition/PQ, http://hl7.org/cda/stds/core/StructureDefinition/IVL-PQ, http://hl7.org/cda/stds/core/StructureDefinition/CE, http://hl7.org/cda/stds/core/StructureDefinition/MO, http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS, http://hl7.org/cda/stds/core/StructureDefinition/ANY, http://hl7.org/cda/stds/core/StructureDefinition/INT, http://hl7.org/cda/stds/core/StructureDefinition/CV, http://hl7.org/cda/stds/core/StructureDefinition/SC
        SlicingThis element introduces a set of slices on Observation.value. The slices areUnordered and Closed, and can be differentiated using the following discriminators:
        • type @ $this
        • 38. Observation.value:packYears
          Slice NamepackYears
          ShortOnly used for Smoking Status where code = 401201003 or 782516008
          Control0..1
          Typehttp://hl7.org/cda/stds/core/StructureDefinition/REAL
          40. Observation.value:coded
          Slice Namecoded
          Control0..1
          Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
          42. Observation.value:coded.code
          Control1..?
          BindingThe codes SHALL be taken from Smoking status comprehensive .
          (required to http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1267.3)

          Smoking status comprehensive

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

          0. Observation
          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-text-ref-value: SHOULD contain text/reference/@value (text.reference.value.exists())
          coded-value: When code is Smoking Status (72166-2) or Tobacco Use (11367-0), the value SHALL be coded ((code.code = '72166-2' or code.code = '11367-0') implies value.code.exists())
          2. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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. Observation.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 Observation.templateId. The slices areUnordered and Open, and can be differentiated using the following discriminators:
          • value @ root
          • value @ extension
          • 20. Observation.templateId:tobacco-use
            Slice Nametobacco-use
            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. Observation.templateId:tobacco-use.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. Observation.templateId:tobacco-use.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. Observation.templateId:tobacco-use.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. Observation.templateId:tobacco-use.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.511
            30. Observation.templateId:tobacco-use.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 Value2024-05-01
            32. Observation.classCode
            Control1..1
            BindingThe codes SHALL be taken from CDAActClassObservation
            (required to http://hl7.org/cda/stds/core/ValueSet/CDAActClassObservation)
            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 ValueOBS
            34. Observation.moodCode
            Control1..1
            BindingThe codes SHALL be taken from XActMoodDocumentObservation (2.0.0)
            (required to http://terminology.hl7.org/ValueSet/v3-xActMoodDocumentObservation|2.0.0)
            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. Observation.negationInd
            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.
            38. Observation.id
            Control1..*
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
            40. Observation.sdtcCategory
            Control0..*
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
            XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namecategory.
            42. Observation.code
            Control1..1
            BindingThe codes SHALL be taken from Smoking Status Type .
            (required to http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1267.6)

            Smoking status type

            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
            XML FormatThe type of this property is determined using the xsi:typeattribute.
            44. Observation.code.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
            46. Observation.code.code
            Definition

            The plain code symbol defined by the code system. For example, "784.0" is the code symbol of the ICD-9 code "784.0" for headache.

            Control1..1
            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.
            LabelCode
            48. Observation.code.codeSystem
            Definition

            Specifies the code system that defines the code.

            Control0..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.
            LabelCode System
            50. Observation.code.codeSystemName
            Definition

            The common name of the coding system.

            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.
            LabelCode System Name
            52. Observation.code.codeSystemVersion
            Definition

            If applicable, a version descriptor defined specifically for the given code system.

            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.
            LabelCode System Version
            54. Observation.code.displayName
            Definition

            A name or title for the code, under which the sending system shows the code value to its users.

            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.
            LabelDisplay Name
            56. Observation.code.sdtcValueSet
            Definition

            The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.

            Control0..1
            Typestring(oid: ISO Object Identifier)
            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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSet.
            58. Observation.code.sdtcValueSetVersion
            Definition

            The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.

            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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSetVersion.
            60. Observation.code.originalText
            Definition

            The text or phrase used as the basis for the coding.

            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
            LabelOriginal Text
            62. Observation.code.qualifier
            Definition

            Specifies additional codes that increase the specificity of the the primary code.

            Control0..*
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CR
            LabelQualifier
            64. Observation.code.translation
            Definition

            A set of other concept descriptors that translate this concept descriptor into other code systems.

            Control0..*
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
            XML FormatThe type of this property is determined using the xsi:typeattribute.
            LabelTranslation
            66. Observation.derivationExpr
            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/ST
            68. Observation.text
            ShortSHOULD reference the portion of section narrative text corresponding to this entry
            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
            XML FormatThe type of this property is determined using the xsi:typeattribute.
            70. Observation.text.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
            72. Observation.text.compression
            Definition

            Indicates whether the raw byte data is compressed, and what compression algorithm was used.

            Control0..1
            BindingThe codes SHALL be taken from CDACompressionAlgorithm
            (required to http://hl7.org/cda/stds/core/ValueSet/CDACompressionAlgorithm)
            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.
            LabelCompression
            74. Observation.text.integrityCheck
            Definition

            The integrity check is a short binary value representing a cryptographically strong checksum that is calculated over the binary data. The purpose of this property, when communicated with a reference is for anyone to validate later whether the reference still resolved to the same data that the reference resolved to when the encapsulated data value with reference was created.

            Control0..1
            Typebase64Binary(bin: Binary Data)
            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.
            LabelIntegrity Check
            76. Observation.text.integrityCheckAlgorithm
            Definition

            Specifies the algorithm used to compute the integrityCheck value. The cryptographically strong checksum algorithm Secure Hash Algorithm-1 (SHA-1) is currently the industry standard. It has superseded the MD5 algorithm only a couple of years ago, when certain flaws in the security of MD5 were discovered. Currently the SHA-1 hash algorithm is the default choice for the integrity check algorithm. Note that SHA-256 is also entering widespread usage.

            Control0..1
            BindingThe codes SHALL be taken from IntegrityCheckAlgorithm (2.0.0)
            (required to http://terminology.hl7.org/ValueSet/v3-IntegrityCheckAlgorithm|2.0.0)
            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.
            LabelIntegrity Check Algorithm
            78. Observation.text.language
            Definition

            For character based information the language property specifies the human language of the text.

            Control0..1
            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.
            LabelLanguage
            80. Observation.text.mediaType
            Definition

            Identifies the type of the encapsulated data and identifies a method to interpret or render the data.

            Control0..1
            BindingFor example codes, see MediaType
            (example to http://terminology.hl7.org/ValueSet/v3-MediaType)
            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.
            LabelMedia Type
            82. Observation.text.representation
            Control0..1
            BindingThe codes SHALL be taken from CDABinaryDataEncoding
            (required to http://hl7.org/cda/stds/core/ValueSet/BinaryDataEncoding)
            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.
            84. Observation.text.xmlText
            Definition

            Data that is primarily intended for human interpretation or for further machine processing is outside the scope of HL7. This includes unformatted or formatted written language, multimedia data, or structured information as defined by a different standard (e.g., XML-signatures.)

            ShortAllows for mixed text content. If @representation='B64', this SHALL be a base64binary string.
            Comments

            This element is represented in XML as textual content. The actual name "xmlText" will not appear in a CDA instance.

            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 unadorned text.
            86. Observation.text.reference
            Definition

            A telecommunication address (TEL), such as a URL for HTTP or FTP, which will resolve to precisely the same binary data that could as well have been provided as inline data.

            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/TEL
            LabelReference
            Invariantsvalue-starts-octothorpe: If reference/@value is present, it SHALL begin with a '#' and SHALL point to its corresponding narrative (value.exists() implies value.startsWith('#'))
            88. Observation.text.thumbnail
            Definition

            An abbreviated rendition of the full data. A thumbnail requires significantly fewer resources than the full data, while still maintaining some distinctive similarity with the full data. A thumbnail is typically used with by-reference encapsulated data. It allows a user to select data more efficiently before actually downloading through the reference.

            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
            LabelThumbnail
            90. Observation.statusCode
            Control1..1
            BindingThe codes SHALL be taken from ActStatus
            (required to http://terminology.hl7.org/ValueSet/v3-ActStatus)
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
            92. Observation.statusCode.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
            94. Observation.statusCode.code
            Definition

            The plain code symbol defined by the code system. For example, "784.0" is the code symbol of the ICD-9 code "784.0" for headache.

            Control1..1
            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.
            LabelCode
            Fixed Valuecompleted
            96. Observation.statusCode.codeSystem
            Definition

            Specifies the code system that defines the code.

            Control0..0
            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.
            LabelCode System
            98. Observation.statusCode.codeSystemName
            Definition

            The common name of the coding system.

            Control0..0
            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.
            LabelCode System Name
            100. Observation.statusCode.codeSystemVersion
            Definition

            If applicable, a version descriptor defined specifically for the given code system.

            Control0..0
            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.
            LabelCode System Version
            102. Observation.statusCode.displayName
            Definition

            A name or title for the code, under which the sending system shows the code value to its users.

            Control0..0
            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.
            LabelDisplay Name
            104. Observation.statusCode.sdtcValueSet
            Definition

            The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.

            Control0..1
            Typestring(oid: ISO Object Identifier)
            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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSet.
            106. Observation.statusCode.sdtcValueSetVersion
            Definition

            The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.

            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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSetVersion.
            108. Observation.statusCode.originalText
            Definition

            The text or phrase used as the basis for the coding.

            Control0..0
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
            LabelOriginal Text
            110. Observation.statusCode.qualifier
            Definition

            Specifies additional codes that increase the specificity of the the primary code.

            Control0..0
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CR
            LabelQualifier
            112. Observation.statusCode.translation
            Definition

            A set of other concept descriptors that translate this concept descriptor into other code systems.

            Control0..0
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
            XML FormatThe type of this property is determined using the xsi:typeattribute.
            LabelTranslation
            114. Observation.effectiveTime
            Control1..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVL-TS
            116. Observation.effectiveTime.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
            118. Observation.effectiveTime.value
            Definition

            A quantity specifying a point on the axis of natural time. A point in time is most often represented as a calendar expression.

            ShortRepresents a timestamp indicating a "point in time" when the observation was true
            Control0..1
            TypedateTime(ts: Point in Time)
            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
            Date FormatYYYYMMDDHHMMSS.UUUU[+|-ZZzz]
            XML FormatIn the XML format, this property is represented as an attribute.
            120. Observation.effectiveTime.operator
            Definition

            A code specifying whether the set component is included (union) or excluded (set-difference) from the set, or other set operations with the current set component and the set as constructed from the representation stream up to the current point.

            Control0..1
            BindingThe codes SHALL be taken from CDASetOperator
            (required to http://hl7.org/cda/stds/core/ValueSet/CDASetOperator)
            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 ValueI
            122. Observation.effectiveTime.low
            Definition

            This is the low limit of the interval.

            ShortRepresents the earliest time the observation was true. Should not be used for temporal codes (e.g. 266919005 - Never smoked tobacco)
            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVXB-TS
            LabelLow Boundary
            124. Observation.effectiveTime.center
            Definition

            The arithmetic mean of the interval (low plus high divided by 2). The purpose of distinguishing the center as a semantic property is for conversions of intervals from and to point values.

            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/TS
            LabelCentral Value
            126. Observation.effectiveTime.width
            Definition

            The difference between high and low boundary. The purpose of distinguishing a width property is to handle all cases of incomplete information symmetrically. In any interval representation only two of the three properties high, low, and width need to be stated and the third can be derived.

            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/PQ
            LabelWidth
            128. Observation.effectiveTime.high
            Definition

            This is the high limit of the interval.

            ShortRepresents the last known time the observation was true. If the observation is still true, set `@nullFlavor` to `UNK`.
            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVXB-TS
            LabelHigh Boundary
            130. Observation.priorityCode
            Control0..1
            BindingFor example codes, see ActPriority
            (example to http://terminology.hl7.org/ValueSet/v3-ActPriority)
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
            132. Observation.repeatNumber
            Control0..1
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/IVL-INT
            134. Observation.languageCode
            Control0..1
            BindingThe codes SHALL be taken from AllLanguages
            (required to http://hl7.org/fhir/ValueSet/all-languages)
            Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
            136. Observation.value
            ShortREAL shall only be used for Smoking Status where code = 401201003 or 782516008
            Control1..1
            TypeChoice of: http://hl7.org/cda/stds/core/StructureDefinition/CD, http://hl7.org/cda/stds/core/StructureDefinition/REAL
            XML FormatThe type of this property is determined using the xsi:typeattribute.
            SlicingThis element introduces a set of slices on Observation.value. The slices areUnordered and Closed, and can be differentiated using the following discriminators:
            • type @ $this
            • 138. Observation.value:packYears
              Slice NamepackYears
              ShortOnly used for Smoking Status where code = 401201003 or 782516008
              Control0..1
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/REAL
              XML FormatThe type of this property is determined using the xsi:typeattribute.
              140. Observation.value:coded
              Slice Namecoded
              Control0..1
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
              XML FormatThe type of this property is determined using the xsi:typeattribute.
              142. Observation.value:coded.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
              144. Observation.value:coded.code
              Definition

              The plain code symbol defined by the code system. For example, "784.0" is the code symbol of the ICD-9 code "784.0" for headache.

              Control1..1
              BindingThe codes SHALL be taken from Smoking status comprehensive .
              (required to http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1267.3)

              Smoking status comprehensive

              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.
              LabelCode
              146. Observation.value:coded.codeSystem
              Definition

              Specifies the code system that defines the code.

              Control0..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.
              LabelCode System
              148. Observation.value:coded.codeSystemName
              Definition

              The common name of the coding system.

              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.
              LabelCode System Name
              150. Observation.value:coded.codeSystemVersion
              Definition

              If applicable, a version descriptor defined specifically for the given code system.

              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.
              LabelCode System Version
              152. Observation.value:coded.displayName
              Definition

              A name or title for the code, under which the sending system shows the code value to its users.

              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.
              LabelDisplay Name
              154. Observation.value:coded.sdtcValueSet
              Definition

              The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.

              Control0..1
              Typestring(oid: ISO Object Identifier)
              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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSet.
              156. Observation.value:coded.sdtcValueSetVersion
              Definition

              The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.

              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.In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual namevalueSetVersion.
              158. Observation.value:coded.originalText
              Definition

              The text or phrase used as the basis for the coding.

              Control0..1
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED
              LabelOriginal Text
              160. Observation.value:coded.qualifier
              Definition

              Specifies additional codes that increase the specificity of the the primary code.

              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/CR
              LabelQualifier
              162. Observation.value:coded.translation
              Definition

              A set of other concept descriptors that translate this concept descriptor into other code systems.

              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
              XML FormatThe type of this property is determined using the xsi:typeattribute.
              LabelTranslation
              164. Observation.interpretationCode
              Control0..*
              BindingThe codes SHALL be taken from CDAObservationInterpretation
              (required to http://hl7.org/cda/stds/core/ValueSet/CDAObservationInterpretation)
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
              166. Observation.methodCode
              Control0..*
              BindingFor example codes, see ObservationMethod
              (example to http://terminology.hl7.org/ValueSet/v3-ObservationMethod)
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
              168. Observation.targetSiteCode
              Definition

              Drawn from concept domain ActSite

              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/CD
              170. Observation.subject
              Control0..1
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Subject
              172. Observation.specimen
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Specimen
              174. Observation.performer
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Performer2
              176. Observation.author
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Author
              178. Observation.informant
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Informant
              180. Observation.participant
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Participant2
              182. Observation.entryRelationship
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship
              184. Observation.reference
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Reference
              186. Observation.precondition
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Precondition
              188. Observation.sdtcPrecondition2
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/Precondition2
              XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameprecondition2.
              190. Observation.referenceRange
              Definition

              Relates an Observation to the ObservationRange class, where the expected range of values for a particular observation can be specified.

              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
              192. Observation.referenceRange.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
              194. Observation.referenceRange.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
              196. Observation.referenceRange.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())
              198. Observation.referenceRange.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
              200. Observation.referenceRange.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
              202. Observation.referenceRange.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
              204. Observation.referenceRange.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
              206. Observation.referenceRange.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
              208. Observation.referenceRange.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

              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
              210. Observation.referenceRange.typeCode
              Control0..1
              BindingThe codes SHALL be taken from CDAActRelationshipType
              (required to http://hl7.org/cda/stds/core/ValueSet/CDAActRelationshipType)
              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 ValueREFV
              212. Observation.referenceRange.observationRange
              Control1..1
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/ObservationRange
              214. Observation.sdtcInFulfillmentOf1
              Control0..*
              Typehttp://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf1
              XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameinFulfillmentOf1.