AdvanceDirectivesSection
type: StructureDefinition
node role: treeRoot
id:
  v: AdvanceDirectivesSection
text:
  status:
    v: extensions
  div: Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> Section C 1..1 Section XML Namespace: urn:hl7-org:v3 Elements defined in Ancestors: @nullFlavor, realmCode, <a href="http://hl7.org/cda/stds/core/2.0.0-sd-snapshot1/StructureDefinition-InfrastructureRoot.html" title="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.">typeId, templateId, @ID, @classCode, @moodCode, id, code, title, text, confidentialityCode, languageCode, subject, author, informant, entry, component Base for all types and resources Instances of this type are validated by templateId Logical Container: ClinicalDocument (CDA Class) shall-adv-directive-organizer: SHALL contain at least one Advance Directive Organizer @nullFlavor 0..1 cs If a required section contains no information, the @nullFlavor MAY be set to NI Slices for templateId 1..* II Slice: Unordered, Open by value:root, value:extension templateId:section 1..1 II @root 1..1 oid, uuid, ruid Required Pattern: 2.16.840.1.113883.10.20.22.2.21.1 @extension 1..1 st Required Pattern: 2022-02-14 code 1..1 CE Advance Directives @code 1..1 cs Required Pattern: 42348-3 @codeSystem 1..1 oid, uuid, ruid Required Pattern: 2.16.840.1.113883.6.1 title 1..1 ST text 1..1 xhtml Slices for entry 0..* Entry If section/@nullFlavor is not present SHALL contain an Advance Directive Observation OR an Advance Directive Organizer (NEW): Slice: Unordered, Open by profile:observation, profile:organizer entry:observation 0..* Entry observation 1..1 AdvanceDirectiveObservation Base for all types and resources entry:organizer 0..* Entry organizer 1..1 AdvanceDirectiveOrganizer Base for all types and resources <img src="[binary]" al…
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/logical-target
  value: boolean
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/data-absent-reason
      value:
        v: not-applicable
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value:
    v: urn:hl7-org:v3
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value:
    v: section
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/logical-container
  value:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/type-profile-style
  value:
    v: cda
url:
  v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectivesSection
identifier:
  value:
    v: urn:hl7ii:2.16.840.1.113883.10.20.22.2.21.1:2022-02-14
version:
  v: 3.0.0-ballot
name:
  v: AdvanceDirectivesSection
title:
  v: Advance Directives Section
status:
  v: draft
date:
  v: 2023-12-21T01:13:10+10:00
publisher:
  v: Health Level Seven
contact:
  name:
    v: HL7 International - Structured Documents
  telecom:
    system:
      v: url
    value:
      v: http://www.hl7.org/Special/committees/structure
description:
  v: This section contains information describing the patient’s advance directives. The description includes the kind of advance directive source documents and the type of advance directive content included in each kind of advance directive source document. The section includes information about who verified the content available in each advance directive source document, if applicable. It also includes information about who was the acting healthcare agent, if someone was acting on behalf of the patient during the encounter or during certain periods of time during the provision of care covered by the document. It provides references to the supporting documentation, including all kinds of advance directive source documents. Treatment Preferences, Care Experience Preferences and Personal Health Goals considered relevant by the organization rendering care services to the patient's care during the encompassing encounter or considered relevant to the patient's care plan SHALL be included in the Advance Directives Section as documented by the patient or consented by the patient or the patient's healthcare agent. If a person has appointed healthcare agent(s), the Advance Directive Section SHALL include the current healthcare agent(s) information. and a reference to the external document which contains the healthcare agent appointment decisions. If a person has documented treatment preferences under certain health scenarios, the Advance Directive Section SHALL include information about who has reviewed and verified that documentation, and a reference to the external document which was reviewed. This section differentiates between an "advance care plan document" and an “advance care plan order.” It also distinguishes an advance directive that is a consent. Information in this section includes information about the person’s current/relevant goals and preferences, advance directive orders, or advance directive consents.
jurisdiction:
  coding:
    system:
      v: urn:iso:std:iso:3166
    code:
      v: US
fhir version:
  v: 5.0.0
mapping:
  identity:
    v: rim
  uri:
    v: http://hl7.org/v3
  name:
    v: RIM Mapping
kind:
  v: logical
abstract:
  v: false
type:
  v: http://hl7.org/cda/stds/core/StructureDefinition/Section
base definition:
  v: http://hl7.org/cda/stds/core/StructureDefinition/Section
  link: http://hl7.org/cda/stds/core/StructureDefinition/Section
derivation:
  v: constraint
snapshot:
  element:
    id:
      v: Section
    path:
      v: Section
    short:
      v: Base for all types and resources
    definition:
      v: Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.
    min:
      v: 1
    max:
      v: 1
    base:
      path:
        v: Base
      min:
        v: 0
      max:
        v: *
    constraint:
      key:
        v: shall-adv-directive-organizer
      severity:
        v: error
      human:
        v: SHALL contain at least one Advance Directive Organizer
      expression:
        v: nullFlavor.exists() or entry.where(organizer.hasTemplateIdOf('http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer'))
      source:
        v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectivesSection
        link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectivesSection
    is modifier:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: n/a
  element:
    id:
      v: Section.nullFlavor
    path:
      v: Section.nullFlavor
    representation:
      v: xmlAttr
    label:
      v: Exceptional Value Detail
    short:
      v: If a required section contains no information, the @nullFlavor MAY be set to NI
    definition:
      v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
    min:
      v: 0
    max:
      v: 1
    base:
      path:
        v: ANY.nullFlavor
      min:
        v: 0
      max:
        v: 1
    type:
      code:
        v: code
      profile:
        v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
        link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    binding:
      strength:
        v: required
      value set:
        v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
        link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
  element:
    id:
      v: Section.realmCode
    path:
      v: Section.realmCode
    definition:
      v: When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: InfrastructureRoot.realmCode
      min:
        v: 0
      max:
        v: *
    type:
      code:
        v: http://hl7.org/cda/stds/core/StructureDefinition/CS
  element:
    id:
      v: Section.typeId
    path:
      v: Section.typeId
    definition:
      v: When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.
    min:
      v: 0
    max:
      v: 1
    base:
      path:
        v: InfrastructureRoot.typeId
      min:
        v: 0

v: 1

id:
  v: Section.typeId.nullFlavor
path:
  v: Section.typeId.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.typeId.assigningAuthorityName
path:
  v: Section.typeId.assigningAuthorityName
representation:
  v: xmlAttr
label:
  v: Assigning Authority Name
definition:
  v: A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.assigningAuthorityName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.typeId.displayable
path:
  v: Section.typeId.displayable
representation:
  v: xmlAttr
label:
  v: Displayable
definition:
  v: Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.displayable
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple

id:
  v: Section.typeId.root
path:
  v: Section.typeId.root
representation:
  v: xmlAttr
label:
  v: Root
definition:
  v: Identifies the type as an HL7 Registered model
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.root
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    link: http://hl7.org/cda/stds/core/StructureDefinition/uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    link: http://hl7.org/cda/stds/core/StructureDefinition/ruid
fixed:
  v: 2.16.840.1.113883.1.3

id:
  v: Section.typeId.extension
path:
  v: Section.typeId.extension
representation:
  v: xmlAttr
label:
  v: Extension
definition:
  v: A character string as a unique identifier within the scope of the identifier root.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.extension
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.templateId
path:
  v: Section.templateId
slicing:
  discriminator:
    type:
      v: value
    path:
      v: root
  discriminator:
    type:
      v: value
    path:
      v: extension
  rules:
    v: open
definition:
  v: When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question
min:
  v: 1
max:
  v: *
base:
  path:
    v: InfrastructureRoot.templateId
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.templateId:section
path:
  v: Section.templateId
slice name:
  v: section
definition:
  v: When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question
min:
  v: 1
max:
  v: 1
base:
  path:
    v: InfrastructureRoot.templateId
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.templateId:section.nullFlavor
path:
  v: Section.templateId.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.templateId:section.assigningAuthorityName
path:
  v: Section.templateId.assigningAuthorityName
representation:
  v: xmlAttr
label:
  v: Assigning Authority Name
definition:
  v: A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.assigningAuthorityName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.templateId:section.displayable
path:
  v: Section.templateId.displayable
representation:
  v: xmlAttr
label:
  v: Displayable
definition:
  v: Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.displayable
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple

id:
  v: Section.templateId:section.root
path:
  v: Section.templateId.root
representation:
  v: xmlAttr
label:
  v: Root
definition:
  v: A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.root
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    link: http://hl7.org/cda/stds/core/StructureDefinition/uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    link: http://hl7.org/cda/stds/core/StructureDefinition/ruid
pattern:
  v: 2.16.840.1.113883.10.20.22.2.21.1

id:
  v: Section.templateId:section.extension
path:
  v: Section.templateId.extension
representation:
  v: xmlAttr
label:
  v: Extension
definition:
  v: A character string as a unique identifier within the scope of the identifier root.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.extension
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
pattern:
  v: 2022-02-14

id:
  v: Section.ID
path:
  v: Section.ID
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.ID
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: id
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/xs-ID
    link: http://hl7.org/cda/stds/core/StructureDefinition/xs-ID

id:
  v: Section.classCode
path:
  v: Section.classCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.classCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
fixed:
  v: DOCSECT
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-ActClassRecordOrganizer
    link: http://terminology.hl7.org/ValueSet/v3-ActClassRecordOrganizer

id:
  v: Section.moodCode
path:
  v: Section.moodCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.moodCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
fixed:
  v: EVN
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-ActMood
    link: http://terminology.hl7.org/ValueSet/v3-ActMood

id:
  v: Section.id
path:
  v: Section.id
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.code
path:
  v: Section.code
short:
  v: Advance Directives
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Section.code
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CE
binding:
  strength:
    v: example
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-DocumentSectionType
    link: http://terminology.hl7.org/ValueSet/v3-DocumentSectionType

id:
  v: Section.code.nullFlavor
path:
  v: Section.code.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.code.code
path:
  v: Section.code.code
representation:
  v: xmlAttr
label:
  v: Code
definition:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: CD.code
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
pattern:
  v: 42348-3

id:
  v: Section.code.codeSystem
path:
  v: Section.code.codeSystem
representation:
  v: xmlAttr
label:
  v: Code System
definition:
  v: Specifies the code system that defines the code.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: CD.codeSystem
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    link: http://hl7.org/cda/stds/core/StructureDefinition/uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    link: http://hl7.org/cda/stds/core/StructureDefinition/ruid
pattern:
  v: 2.16.840.1.113883.6.1

id:
  v: Section.code.codeSystemName
path:
  v: Section.code.codeSystemName
representation:
  v: xmlAttr
label:
  v: Code System Name
definition:
  v: The common name of the coding system.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CD.codeSystemName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.code.codeSystemVersion
path:
  v: Section.code.codeSystemVersion
representation:
  v: xmlAttr
label:
  v: Code System Version
definition:
  v: If applicable, a version descriptor defined specifically for the given code system.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CD.codeSystemVersion
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.code.displayName
path:
  v: Section.code.displayName
representation:
  v: xmlAttr
label:
  v: Display Name
definition:
  v: A name or title for the code, under which the sending system shows the code value to its users.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CD.displayName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.code.sdtcValueSet
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value:
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value:
    v: valueSet
path:
  v: Section.code.sdtcValueSet
representation:
  v: xmlAttr
definition:
  v: The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CD.valueSet
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid

id:
  v: Section.code.sdtcValueSetVersion
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value:
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value:
    v: valueSetVersion
path:
  v: Section.code.sdtcValueSetVersion
representation:
  v: xmlAttr
definition:
  v: 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.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CD.sdtcValueSetVersion
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.code.originalText
path:
  v: Section.code.originalText
label:
  v: Original Text
definition:
  v: The text or phrase used as the basis for the coding.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CD.originalText
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ED

id:
  v: Section.code.qualifier
path:
  v: Section.code.qualifier
label:
  v: Qualifier
definition:
  v: Specifies additional codes that increase the specificity of the the primary code.
min:
  v: 0
max:
  v: 0
base:
  path:
    v: CD.qualifier
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CR

id:
  v: Section.code.translation
path:
  v: Section.code.translation
representation:
  v: typeAttr
label:
  v: Translation
definition:
  v: A set of other concept descriptors that translate this concept descriptor into other code systems.
min:
  v: 0
max:
  v: *
base:
  path:
    v: CD.translation
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CD

id:
  v: Section.title
path:
  v: Section.title
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Section.title
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ST

id:
  v: Section.text
path:
  v: Section.text
representation:
  v: cdaText
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Section.text
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: xhtml

id:
  v: Section.confidentialityCode
path:
  v: Section.confidentialityCode
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.confidentialityCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CE

id:
  v: Section.languageCode
path:
  v: Section.languageCode
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.languageCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CS
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/fhir/ValueSet/all-languages
    link: http://hl7.org/fhir/ValueSet/all-languages

id:
  v: Section.subject
path:
  v: Section.subject
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.subject
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Subject

id:
  v: Section.author
path:
  v: Section.author
min:
  v: 0
max:
  v: *
base:
  path:
    v: Section.author
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Author

id:
  v: Section.informant
path:
  v: Section.informant
min:
  v: 0
max:
  v: *
base:
  path:
    v: Section.informant
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Informant

id:
  v: Section.entry
path:
  v: Section.entry
slicing:
  discriminator:
    type:
      v: profile
    path:
      v: observation
  discriminator:
    type:
      v: profile
    path:
      v: organizer
  rules:
    v: open
short:
  v: If section/@nullFlavor is not present SHALL contain an Advance Directive Observation OR an Advance Directive Organizer (NEW):
comment:
  v: SHALL contain at least one [1..*] entry (CONF:1198-30235) such that it
min:
  v: 0
max:
  v: *
base:
  path:
    v: Section.entry
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Entry

id:
  v: Section.entry:observation
path:
  v: Section.entry
slice name:
  v: observation
comment:
  v: MAY contain zero or more [0..*] entry such that it
min:
  v: 0
max:
  v: *
base:
  path:
    v: Section.entry
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Entry

id:
  v: Section.entry:observation.nullFlavor
path:
  v: Section.entry.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.entry:observation.realmCode
path:
  v: Section.entry.realmCode
definition:
  v: When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question
min:
  v: 0
max:
  v: *
base:
  path:
    v: InfrastructureRoot.realmCode
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CS

id:
  v: Section.entry:observation.typeId
path:
  v: Section.entry.typeId
definition:
  v: When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: InfrastructureRoot.typeId
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.entry:observation.typeId.nullFlavor
path:
  v: Section.entry.typeId.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.entry:observation.typeId.assigningAuthorityName
path:
  v: Section.entry.typeId.assigningAuthorityName
representation:
  v: xmlAttr
label:
  v: Assigning Authority Name
definition:
  v: A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.assigningAuthorityName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.entry:observation.typeId.displayable
path:
  v: Section.entry.typeId.displayable
representation:
  v: xmlAttr
label:
  v: Displayable
definition:
  v: Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.displayable
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple

id:
  v: Section.entry:observation.typeId.root
path:
  v: Section.entry.typeId.root
representation:
  v: xmlAttr
label:
  v: Root
definition:
  v: Identifies the type as an HL7 Registered model
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.root
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    link: http://hl7.org/cda/stds/core/StructureDefinition/uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    link: http://hl7.org/cda/stds/core/StructureDefinition/ruid
fixed:
  v: 2.16.840.1.113883.1.3

id:
  v: Section.entry:observation.typeId.extension
path:
  v: Section.entry.typeId.extension
representation:
  v: xmlAttr
label:
  v: Extension
definition:
  v: A character string as a unique identifier within the scope of the identifier root.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.extension
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.entry:observation.templateId
path:
  v: Section.entry.templateId
definition:
  v: When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question
min:
  v: 0
max:
  v: *
base:
  path:
    v: InfrastructureRoot.templateId
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.entry:observation.typeCode
path:
  v: Section.entry.typeCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.typeCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
default value:
  v: COMP
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-xActRelationshipEntry
    link: http://terminology.hl7.org/ValueSet/v3-xActRelationshipEntry

id:
  v: Section.entry:observation.contextConductionInd
path:
  v: Section.entry.contextConductionInd
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.contextConductionInd
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
fixed:
  v: true

id:
  v: Section.entry:observation.act
path:
  v: Section.entry.act
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.act
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Act

id:
  v: Section.entry:observation.encounter
path:
  v: Section.entry.encounter
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.encounter
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Encounter

id:
  v: Section.entry:observation.observation
path:
  v: Section.entry.observation
short:
  v: Base for all types and resources
definition:
  v: 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.
comment:
  v: SHALL contain exactly one [1..1] Advance Directive Observation (identifier: urn:hl7ii:2.16.840.1.113883.10.20.22.4.48:2022-02-14) (CONF:1198-15443).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Entry.observation
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Observation
  profile:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
constraint:
  key:
    v: should-text-ref-value
  severity:
    v: warning
  human:
    v: SHOULD contain text/reference/@value
  expression:
    v: text.reference.value.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
constraint:
  key:
    v: should-author
  severity:
    v: warning
  human:
    v: SHOULD contain author
  expression:
    v: author.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
constraint:
  key:
    v: should-informant
  severity:
    v: warning
  human:
    v: SHOULD contain informant
  expression:
    v: informant.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
is modifier:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Section.entry:observation.observationMedia
path:
  v: Section.entry.observationMedia
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.observationMedia
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ObservationMedia

id:
  v: Section.entry:observation.organizer
path:
  v: Section.entry.organizer
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.organizer
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Organizer

id:
  v: Section.entry:observation.procedure
path:
  v: Section.entry.procedure
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.procedure
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Procedure

id:
  v: Section.entry:observation.regionOfInterest
path:
  v: Section.entry.regionOfInterest
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.regionOfInterest
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/RegionOfInterest

id:
  v: Section.entry:observation.substanceAdministration
path:
  v: Section.entry.substanceAdministration
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.substanceAdministration
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/SubstanceAdministration

id:
  v: Section.entry:observation.supply
path:
  v: Section.entry.supply
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.supply
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Supply

id:
  v: Section.entry:organizer
path:
  v: Section.entry
slice name:
  v: organizer
comment:
  v: SHALL contain one or more [1.*] entry such that it
min:
  v: 0
max:
  v: *
base:
  path:
    v: Section.entry
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Entry

id:
  v: Section.entry:organizer.nullFlavor
path:
  v: Section.entry.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.entry:organizer.realmCode
path:
  v: Section.entry.realmCode
definition:
  v: When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question
min:
  v: 0
max:
  v: *
base:
  path:
    v: InfrastructureRoot.realmCode
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CS

id:
  v: Section.entry:organizer.typeId
path:
  v: Section.entry.typeId
definition:
  v: When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: InfrastructureRoot.typeId
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.entry:organizer.typeId.nullFlavor
path:
  v: Section.entry.typeId.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.entry:organizer.typeId.assigningAuthorityName
path:
  v: Section.entry.typeId.assigningAuthorityName
representation:
  v: xmlAttr
label:
  v: Assigning Authority Name
definition:
  v: A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.assigningAuthorityName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.entry:organizer.typeId.displayable
path:
  v: Section.entry.typeId.displayable
representation:
  v: xmlAttr
label:
  v: Displayable
definition:
  v: Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.displayable
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple

id:
  v: Section.entry:organizer.typeId.root
path:
  v: Section.entry.typeId.root
representation:
  v: xmlAttr
label:
  v: Root
definition:
  v: Identifies the type as an HL7 Registered model
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.root
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    link: http://hl7.org/cda/stds/core/StructureDefinition/uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    link: http://hl7.org/cda/stds/core/StructureDefinition/ruid
fixed:
  v: 2.16.840.1.113883.1.3

id:
  v: Section.entry:organizer.typeId.extension
path:
  v: Section.entry.typeId.extension
representation:
  v: xmlAttr
label:
  v: Extension
definition:
  v: A character string as a unique identifier within the scope of the identifier root.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.extension
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.entry:organizer.templateId
path:
  v: Section.entry.templateId
definition:
  v: When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question
min:
  v: 0
max:
  v: *
base:
  path:
    v: InfrastructureRoot.templateId
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.entry:organizer.typeCode
path:
  v: Section.entry.typeCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.typeCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
default value:
  v: COMP
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-xActRelationshipEntry
    link: http://terminology.hl7.org/ValueSet/v3-xActRelationshipEntry

id:
  v: Section.entry:organizer.contextConductionInd
path:
  v: Section.entry.contextConductionInd
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.contextConductionInd
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
fixed:
  v: true

id:
  v: Section.entry:organizer.act
path:
  v: Section.entry.act
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.act
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Act

id:
  v: Section.entry:organizer.encounter
path:
  v: Section.entry.encounter
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.encounter
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Encounter

id:
  v: Section.entry:organizer.observation
path:
  v: Section.entry.observation
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.observation
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Observation

id:
  v: Section.entry:organizer.observationMedia
path:
  v: Section.entry.observationMedia
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.observationMedia
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ObservationMedia

id:
  v: Section.entry:organizer.organizer
path:
  v: Section.entry.organizer
short:
  v: Base for all types and resources
definition:
  v: 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.
comment:
  v: SHALL contain exactly one [1..1] Advance Directive Organizer (identifier: urn:hl7ii:2.16.840.1.113883.10.20.22.4.108:2022-02-14).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Entry.organizer
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Organizer
  profile:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
constraint:
  key:
    v: should-sdtctext-ref-value
  severity:
    v: warning
  human:
    v: SHOULD contain text/reference/@value
  expression:
    v: sdtcText.reference.value.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
constraint:
  key:
    v: should-author
  severity:
    v: warning
  human:
    v: SHOULD contain author
  expression:
    v: author.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
constraint:
  key:
    v: should-informant
  severity:
    v: warning
  human:
    v: SHOULD contain informant
  expression:
    v: informant.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
constraint:
  key:
    v: should-participant
  severity:
    v: warning
  human:
    v: SHOULD contain participant
  expression:
    v: participant.exists()
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
    link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
is modifier:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Section.entry:organizer.procedure
path:
  v: Section.entry.procedure
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.procedure
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Procedure

id:
  v: Section.entry:organizer.regionOfInterest
path:
  v: Section.entry.regionOfInterest
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.regionOfInterest
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/RegionOfInterest

id:
  v: Section.entry:organizer.substanceAdministration
path:
  v: Section.entry.substanceAdministration
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.substanceAdministration
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/SubstanceAdministration

id:
  v: Section.entry:organizer.supply
path:
  v: Section.entry.supply
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Entry.supply
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Supply

id:
  v: Section.component
path:
  v: Section.component
min:
  v: 0
max:
  v: *
base:
  path:
    v: Section.component
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot

id:
  v: Section.component.nullFlavor
path:
  v: Section.component.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.component.realmCode
path:
  v: Section.component.realmCode
definition:
  v: When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question
min:
  v: 0
max:
  v: *
base:
  path:
    v: InfrastructureRoot.realmCode
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CS

id:
  v: Section.component.typeId
path:
  v: Section.component.typeId
definition:
  v: When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: InfrastructureRoot.typeId
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.component.typeId.nullFlavor
path:
  v: Section.component.typeId.nullFlavor
representation:
  v: xmlAttr
label:
  v: Exceptional Value Detail
definition:
  v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: ANY.nullFlavor
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    link: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor

id:
  v: Section.component.typeId.assigningAuthorityName
path:
  v: Section.component.typeId.assigningAuthorityName
representation:
  v: xmlAttr
label:
  v: Assigning Authority Name
definition:
  v: A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.assigningAuthorityName
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.component.typeId.displayable
path:
  v: Section.component.typeId.displayable
representation:
  v: xmlAttr
label:
  v: Displayable
definition:
  v: Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: II.displayable
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple

id:
  v: Section.component.typeId.root
path:
  v: Section.component.typeId.root
representation:
  v: xmlAttr
label:
  v: Root
definition:
  v: Identifies the type as an HL7 Registered model
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.root
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    link: http://hl7.org/cda/stds/core/StructureDefinition/oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    link: http://hl7.org/cda/stds/core/StructureDefinition/uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    link: http://hl7.org/cda/stds/core/StructureDefinition/ruid
fixed:
  v: 2.16.840.1.113883.1.3

id:
  v: Section.component.typeId.extension
path:
  v: Section.component.typeId.extension
representation:
  v: xmlAttr
label:
  v: Extension
definition:
  v: A character string as a unique identifier within the scope of the identifier root.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: II.extension
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/st-simple

id:
  v: Section.component.templateId
path:
  v: Section.component.templateId
definition:
  v: When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question
min:
  v: 0
max:
  v: *
base:
  path:
    v: InfrastructureRoot.templateId
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: Section.component.typeCode
path:
  v: Section.component.typeCode
representation:
  v: xmlAttr
definition:
  v: Drawn from concept domain DocumentSectionType
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.component.typeCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
fixed:
  v: COMP

id:
  v: Section.component.contextConductionInd
path:
  v: Section.component.contextConductionInd
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Section.component.contextConductionInd
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    link: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
fixed:
  v: true

id:
  v: Section.component.section
path:
  v: Section.component.section
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Section.component.section
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Section

element:
  id:
    v: Section
  path:
    v: Section
  constraint:
    key:
      v: shall-adv-directive-organizer
    severity:
      v: error
    human:
      v: SHALL contain at least one Advance Directive Organizer
    expression:
      v: nullFlavor.exists() or entry.where(organizer.hasTemplateIdOf('http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer'))
    source:
      v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectivesSection
      link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectivesSection
element:
  id:
    v: Section.nullFlavor
  path:
    v: Section.nullFlavor
  short:
    v: If a required section contains no information, the @nullFlavor MAY be set to NI
element:
  id:
    v: Section.templateId
  path:
    v: Section.templateId
  slicing:
    discriminator:
      type:
        v: value
      path:
        v: root
    discriminator:
      type:
        v: value
      path:
        v: extension
    rules:
      v: open
  min:
    v: 1
element:
  id:
    v: Section.templateId:section
  path:
    v: Section.templateId
  slice name:
    v: section
  min:
    v: 1
  max:
    v: 1
element:
  id:
    v: Section.templateId:section.root
  path:
    v: Section.templateId.root
  min:
    v: 1
  pattern:
    v: 2.16.840.1.113883.10.20.22.2.21.1
element:
  id:
    v: Section.templateId:section.extension
  path:
    v: Section.templateId.extension
  min:
    v: 1
  pattern:
    v: 2022-02-14
element:
  id:
    v: Section.code
  path:
    v: Section.code
  short:
    v: Advance Directives
  min:
    v: 1
element:
  id:
    v: Section.code.code
  path:
    v: Section.code.code
  min:
    v: 1
  pattern:
    v: 42348-3
element:
  id:
    v: Section.code.codeSystem
  path:
    v: Section.code.codeSystem
  min:
    v: 1
  pattern:
    v: 2.16.840.1.113883.6.1
element:
  id:
    v: Section.title
  path:
    v: Section.title
  min:
    v: 1
element:
  id:
    v: Section.text
  path:
    v: Section.text
  min:
    v: 1
element:
  id:
    v: Section.entry
  path:
    v: Section.entry
  slicing:
    discriminator:
      type:
        v: profile
      path:
        v: observation
    discriminator:
      type:
        v: profile
      path:
        v: organizer
    rules:
      v: open
  short:
    v: If section/@nullFlavor is not present SHALL contain an Advance Directive Observation OR an Advance Directive Organizer (NEW):
  comment:
    v: SHALL contain at least one [1..*] entry (CONF:1198-30235) such that it
element:
  id:
    v: Section.entry:observation
  path:
    v: Section.entry
  slice name:
    v: observation
  comment:
    v: MAY contain zero or more [0..*] entry such that it
  min:
    v: 0
  max:
    v: *
element:
  id:
    v: Section.entry:observation.observation
  path:
    v: Section.entry.observation
  comment:
    v: SHALL contain exactly one [1..1] Advance Directive Observation (identifier: urn:hl7ii:2.16.840.1.113883.10.20.22.4.48:2022-02-14) (CONF:1198-15443).
  min:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/Observation
    profile:
      v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
      link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveObservation
element:
  id:
    v: Section.entry:organizer
  path:
    v: Section.entry
  slice name:
    v: organizer
  comment:
    v: SHALL contain one or more [1.*] entry such that it
  min:
    v: 0
  max:
    v: *
element:
  id:
    v: Section.entry:organizer.organizer
  path:
    v: Section.entry.organizer
  comment:
    v: SHALL contain exactly one [1..1] Advance Directive Organizer (identifier: urn:hl7ii:2.16.840.1.113883.10.20.22.4.108:2022-02-14).
  min:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/Organizer
    profile:
      v: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer
      link: http://hl7.org/cda/us/ccda/StructureDefinition/AdvanceDirectiveOrganizer