PackagesCanonicalsLogsProblems
    Packages
    rs/hl7.cda.us.ccda@4.0.0-ballot
    http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
description: The Advance Directive Observation template is nested within the Advance Directive Existence Observation, which indicates whether the individual has any advance directive documents. This template provides details about the type of advance directive document and may also include information on the document’s author, as well as any individuals who verified its contents with the patient or their designated healthcare agent.
package_name: rs/hl7.cda.us.ccda
derivation: constraint
name: AdvanceDirectiveObservation
type: http://hl7.org/cda/stds/core/StructureDefinition/Observation
elements:
  value: {index: 18}
  participant:
    index: 21
    slicing:
      rules: open
      discriminator:
      - {path: typeCode, type: value}
      min: null
      slices:
        verifier:
          match: {typeCode: VRF}
          schema:
            constraint:
              should-time: {human: SHOULD contain time, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: time.exists()}
            short: 'π—¨π—¦π—–π——π—œ: Verifier - The participant "VRF" represents the clinician(s) who verified the patient advance directive.'
            array: true
            index: 22
            elements:
              templateId:
                index: 23
                slicing:
                  rules: open
                  discriminator:
                  - {path: root, type: value}
                  min: 1
                  slices:
                    primary:
                      match: {root: 2.16.840.1.113883.10.20.1.58}
                      schema:
                        _required: true
                        index: 24
                        elements:
                          root:
                            pattern: {type: string, value: 2.16.840.1.113883.10.20.1.58}
                            type: string
                            index: 25
                          extension: {index: 26}
                        required: [root]
                        extensions: {}
              typeCode:
                pattern: {type: code, value: VRF}
                type: code
                index: 27
              time:
                constraint:
                  value-only: {human: Interval fields SHALL NOT be present, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: error, expression: (low | high | width | center).empty()}
                index: 28
                elements:
                  value: {short: value should be used instead of low/high, index: 29}
              participantRole:
                constraint:
                  should-code: {human: SHOULD contain code, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: code.exists()}
                index: 30
                elements:
                  code:
                    binding: {strength: preferred, valueSet: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.1066'}
                    index: 31
                  addr: {type: 'http://hl7.org/cda/stds/core/StructureDefinition/AD', index: 32}
                  playingEntity:
                    index: 33
                    elements:
                      name: {type: 'http://hl7.org/cda/stds/core/StructureDefinition/PN', index: 34}
                    required: [name]
                required: [playingEntity]
            required: [templateId]
        custodian:
          match: {typeCode: CST}
          schema:
            short: This custodian (CST) participant identifies a legal representative for healthcare decision-making. Examples of such  individuals are called health care agents, substitute decision makers and/or health care proxies.  Only record a healthcare agent who is acting in that capacitiy and participating in carae decision-making during the documented care encounter.
            array: true
            index: 35
            elements:
              typeCode:
                pattern: {type: code, value: CST}
                type: code
                index: 36
              participantRole:
                constraint:
                  should-code: {human: SHOULD contain code, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: code.exists()}
                  should-addr: {human: SHOULD contain addr, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: addr.exists()}
                  should-telecom: {human: SHOULD contain telecom, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: telecom.exists()}
                index: 37
                elements:
                  classCode:
                    pattern: {type: code, value: AGNT}
                    type: code
                    index: 38
                  code:
                    binding: {strength: preferred, valueSet: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1046.35'}
                    index: 39
                  addr: {type: 'http://hl7.org/cda/stds/core/StructureDefinition/AD', index: 40}
                  telecom: {index: 41}
                  playingEntity:
                    constraint:
                      should-code: {human: SHOULD contain code, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: code.exists()}
                    index: 42
                    elements:
                      code:
                        binding: {strength: preferred, valueSet: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.12.1'}
                        index: 43
                      name: {short: The name of the healthcare agent., index: 44}
                    required: [name]
                required: [classCode, playingEntity]
  classCode:
    pattern: {type: code, value: OBS}
    type: code
    index: 4
  author: {type: 'http://hl7.org/cda/stds/core/StructureDefinition/Author', index: 19}
  reference:
    index: 45
    slicing:
      rules: open
      discriminator:
      - {path: typeCode, type: value}
      min: 1
      slices:
        reference1:
          match: {typeCode: REFR}
          schema:
            array: true
            min: 1
            _required: true
            index: 46
            elements:
              typeCode:
                pattern: {type: code, value: REFR}
                type: code
                index: 47
              externalDocument:
                short: 'π—¨π—¦π—–π——π—œ: External Document'
                index: 48
                elements:
                  id: {index: 49}
                  code:
                    binding: {strength: preferred, valueSet: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.9.69.4'}
                    index: 50
                  text:
                    index: 51
                    elements:
                      reference:
                        short: The URL of a referenced advance directive document **MAY** be present, and **SHALL** be represented in Observation/reference/ExternalDocument/text/reference (CONF:1198-8698).
                        constraint:
                          1198-8699: {human: 'If a URL is referenced, then it **SHOULD** have a corresponding linkHTML element in narrative block (CONF:1198-8699).', source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning}
                        index: 52
                  sdtcAuthor: {short: 'π—¨π—¦π—–π——π—œ: Author', index: 53}
                required: [code, id]
            required: [externalDocument]
  id: {index: 6}
  code:
    short: Advance Directive
    constraint:
      should-translation: {human: SHOULD contain translation, source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: warning, expression: translation.exists()}
    index: 7
    elements:
      code:
        pattern: {type: code, value: 75320-2}
        type: code
        index: 8
      codeSystem:
        short: LOINC
        pattern: {type: string, value: 2.16.840.1.113883.6.1}
        type: string
        index: 9
      translation:
        short: 'π—¨π—¦π—–π——π—œ: Advance Directive Type'
        binding: {strength: preferred, valueSet: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.9.69.4'}
        index: 10
    required: [code, codeSystem]
  moodCode:
    pattern: {type: code, value: EVN}
    type: code
    index: 5
  effectiveTime:
    index: 15
    elements:
      low: {index: 16}
      high:
        constraint:
          1198-32449: {human: 'If the Advance Directive does not have a specified ending time, the  element **SHALL** have the nullFlavor attribute set to *NA* (CONF:1198-32449).', source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: error, expression: value.exists() or nullFlavor = 'NA'}
        index: 17
    required: [high, low]
  templateId:
    index: 0
    slicing:
      rules: open
      discriminator:
      - {path: root, type: value}
      - {path: extension, type: value}
      min: 1
      slices:
        advance-directive-obs:
          match: {root: 2.16.840.1.113883.10.20.22.4.48, extension: '2025-05-01'}
          schema:
            _required: true
            index: 1
            elements:
              root:
                pattern: {type: string, value: 2.16.840.1.113883.10.20.22.4.48}
                type: string
                index: 2
              extension:
                pattern: {type: string, value: '2025-05-01'}
                type: string
                index: 3
            required: [extension, root]
            extensions: {}
  statusCode:
    index: 13
    elements:
      code:
        pattern: {type: code, value: completed}
        type: code
        index: 14
    required: [code]
  informant: {short: SHOULD contain informant, index: 20}
  text:
    short: SHOULD reference the portion of section narrative text corresponding to this entry
    index: 11
    elements:
      reference:
        constraint:
          value-starts-octothorpe: {human: 'If reference/@value is present, it SHALL begin with a ''#'' and SHALL point to its corresponding narrative', source: 'http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation', severity: error, expression: value.exists() implies value.startsWith('#')}
        index: 12
package_version: 4.0.0-ballot
class: logical
kind: logical
url: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
base: http://hl7.org/cda/stds/core/StructureDefinition/Observation
version: 4.0.0-ballot
required: [effectiveTime, id, reference, statusCode, templateId, text]