AuthorParticipation
type: StructureDefinition
node role: treeRoot
id:
  v: AuthorParticipation
text:
  status:
    v: extensions
  div:
    v: Generated Narrative: StructureDefinition AuthorParticipation Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> Author Author XML Namespace: urn:hl7-org:v3 Instance of this type are validated by templateId Logical Container: ClinicalDocument (CDA Class) #xD; Slices for templateId 1..* II Slice: Unordered, Open by value:root #xD; templateId:author 1..1 II #xD; @root 1..1 oid, uuid, ruid Required Pattern: 2.16.840.1.113883.10.20.22.4.119 #xD; @extension 0..0 #xD; time 1..1 TS #xD; assignedAuthor <a style="padding-left: 3px; padding-right: 3px; border: 1px maroon solid; font-weight: bold; color: #301212; background-color: #fdf4f4;; padding-left: 3px; padding-right: 3px; border: 1px maroon solid; font-weight: bold; color: #301212; background-color: #fdf4f4;" href="http://hl7.org/fhir/R5/conformance-rules.html#constraints" title="This element has or is affected by constraints ( author-details )">C 1..1 AssignedAuthor Constraints: author-details #xD; id 1..* II The first id may be set equal to (a pointer to) an id on a participant elsewhere in the document (header or entries) or a new author participant can be described here. If the id is pointing to a participant already described elsewhere in the document, assignedAuthor/id is sufficient to identify this participant and none of the remaining details of assignedAuthor are required to be set. Application Software must be responsible for resolving the identifier back to its original object and then rendering the information in the correct place in the containing section's narrative text. This id must be a pointer to another author participant. #xD; code 0..1 CE Binding: Healthcare Provider Taxonomy (preferred) Additional Bindings Purpose Documentation Personal And Legal Relationship Role Type Preferred Patient-authored content #xD; sdtcSpecialty 0..* CE Binding: PracticeSettingCodeValueSet (preferred) #xD; addr <a style="padding-left: 3px; padding-right: 3px; b…
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/logical-target
    l: logical-target
  value: Boolean
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/data-absent-reason
        l: data-absent-reason
      value: Code
        v: not-applicable
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    l: xml-namespace
  value: Uri
    v: urn:hl7-org:v3
    l: v3
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    l: xml-name
  value: String
    v: author
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/logical-container
    l: logical-container
  value: Uri
    v: http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument
    l: ClinicalDocument
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/type-profile-style
    l: type-profile-style
  value: Code
    v: cda
url:
  v: http://hl7.org/cda/us/ccda/StructureDefinition/AuthorParticipation
  l: AuthorParticipation
identifier:
  system:
    v: urn:ietf:rfc:3986
    l: 3986
  value:
    v: urn:oid:2.16.840.1.113883.10.20.22.4.119
version:
  v: 5.0.0
name:
  v: AuthorParticipation
title:
  v: Author Participation
status:
  v: draft
date:
  v: 2026-06-13T01:56:42+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 template represents the Author Participation (including the author timestamp). CDA R2 requires that Author and Author timestamp be asserted in the document header. From there, authorship propagates to contained sections and contained entries, unless explicitly overridden. The Author Participation template was added to those templates in scope for analysis in R2. Although it is not explicitly stated in all templates the Author Participation template can be used in any template.
jurisdiction:
  coding:
    system:
      v: urn:iso:std:iso:3166
      l: 3166
    code:
      v: US
fhir version:
  v: 5.0.0
mapping:
  identity:
    v: rim
  uri:
    v: http://hl7.org/v3
    l: v3
  name:
    v: RIM Mapping
kind:
  v: logical
abstract:
  v: false
type:
  v: http://hl7.org/cda/stds/core/StructureDefinition/Author
  l: Author
base definition:
  v: http://hl7.org/cda/stds/core/StructureDefinition/Author
  l: Author
derivation:
  v: constraint
snapshot:
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version
      l: snapshot-base-version
    value: String
      v: 2.0.3-sd
  element:
    id:
      v: Author
    path:
      v: Author
    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: *
    is modifier:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: n/a
  element:
    id:
      v: Author.nullFlavor
    path:
      v: Author.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
        l: code
      profile:
        v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
        l: cs-simple
    binding:
      strength:
        v: required
      value set:
        v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
        l: CDANullFlavor
  element:
    id:
      v: Author.realmCode
    path:
      v: Author.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
        l: CS
  element:
    id:
      v: Author.typeId
    path:
      v: Author.typeId

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.

v: 0

v: 1

path:
  v: InfrastructureRoot.typeId
min:
  v: 0
max:
  v: 1

key:
  v: II-1
severity:
  v: error
human:
  v: An II instance must have either a root or an nullFlavor.
expression:
  v: root.exists() or nullFlavor.exists()
source:
  v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
  l: InfrastructureRoot

id:
  v: Author.typeId.nullFlavor
path:
  v: Author.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.typeId.assigningAuthorityName
path:
  v: Author.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.typeId.displayable
path:
  v: Author.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
    l: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    l: bl-simple

id:
  v: Author.typeId.root
path:
  v: Author.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    l: oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    l: uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    l: ruid
fixed: String
  v: 2.16.840.1.113883.1.3

id:
  v: Author.typeId.extension
path:
  v: Author.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.templateId
path:
  v: Author.templateId
slicing:
  discriminator:
    type:
      v: value
    path:
      v: root
  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
    l: II

id:
  v: Author.templateId:author
path:
  v: Author.templateId
slice name:
  v: author
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
    l: II

id:
  v: Author.templateId:author.nullFlavor
path:
  v: Author.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.templateId:author.assigningAuthorityName
path:
  v: Author.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.templateId:author.displayable
path:
  v: Author.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
    l: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    l: bl-simple

id:
  v: Author.templateId:author.root
path:
  v: Author.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    l: oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    l: uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    l: ruid
pattern: String
  v: 2.16.840.1.113883.10.20.22.4.119

id:
  v: Author.templateId:author.extension
path:
  v: Author.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: 0
max:
  v: 0
base:
  path:
    v: II.extension
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.typeCode
path:
  v: Author.typeCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Author.typeCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: AUT
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDAParticipationType
    l: CDAParticipationType

id:
  v: Author.contextControlCode
path:
  v: Author.contextControlCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Author.contextControlCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: OP
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDAContextControl
    l: CDAContextControl

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

id:
  v: Author.time
path:
  v: Author.time
comment:
  v: SHALL contain exactly one [1..1] time (CONF:1098-31471).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Author.time
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/TS
    l: TS

id:
  v: Author.assignedAuthor
path:
  v: Author.assignedAuthor
comment:
  v: SHALL contain exactly one [1..1] assignedAuthor (CONF:1098-31472).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Author.assignedAuthor
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/AssignedAuthor
    l: AssignedAuthor
constraint:
  key:
    v: author-details
  severity:
    v: error
  human:
    v: Authors require addr, telecom, and either assignedPerson/name or assignedAuthoringDevice/manufacturerModelName. These may be present on this author or on another instance of an Author Participation in the document that has an id that matches the first id of this author.
  expression:
    v: nullFlavor.exists() or (addr.exists() and telecom.exists() and (assignedPerson.name.exists() or assignedAuthoringDevice.manufacturerModelName.exists())) or (%resource.descendants().ofType(CDA.AssignedAuthor).where(id.exists($this.root = %context.id.first().root and $this.extension ~ %context.id.first().extension) and addr.exists() and telecom.exists() and (assignedPerson.name.exists() or assignedAuthoringDevice.manufacturerModelName.exists())))
  source:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/AuthorParticipation
    l: AuthorParticipation

id:
  v: Author.assignedAuthor.nullFlavor
path:
  v: Author.assignedAuthor.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.realmCode
path:
  v: Author.assignedAuthor.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
    l: CS

id:
  v: Author.assignedAuthor.typeId
path:
  v: Author.assignedAuthor.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
    l: II
constraint:
  key:
    v: II-1
  severity:
    v: error
  human:
    v: An II instance must have either a root or an nullFlavor.
  expression:
    v: root.exists() or nullFlavor.exists()
  source:
    v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
    l: InfrastructureRoot

id:
  v: Author.assignedAuthor.typeId.nullFlavor
path:
  v: Author.assignedAuthor.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.typeId.assigningAuthorityName
path:
  v: Author.assignedAuthor.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.typeId.displayable
path:
  v: Author.assignedAuthor.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
    l: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    l: bl-simple

id:
  v: Author.assignedAuthor.typeId.root
path:
  v: Author.assignedAuthor.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    l: oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    l: uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    l: ruid
fixed: String
  v: 2.16.840.1.113883.1.3

id:
  v: Author.assignedAuthor.typeId.extension
path:
  v: Author.assignedAuthor.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.templateId
path:
  v: Author.assignedAuthor.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
    l: II

id:
  v: Author.assignedAuthor.classCode
path:
  v: Author.assignedAuthor.classCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: AssignedAuthor.classCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: ASSIGNED
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-RoleClassAssignedEntity
    l: v3-RoleClassAssignedEntity

id:
  v: Author.assignedAuthor.id
path:
  v: Author.assignedAuthor.id
short:
  v: The first id may be set equal to (a pointer to) an id on a participant elsewhere in the document (header or entries) or a new author participant can be described here. If the id is pointing to a participant already described elsewhere in the document, assignedAuthor/id is sufficient to identify this participant and none of the remaining details of assignedAuthor are required to be set. Application Software must be responsible for resolving the identifier back to its original object and then rendering the information in the correct place in the containing section's narrative text. This id must be a pointer to another author participant.
comment:
  v: This assignedAuthor SHALL contain at least one [1..*] id (CONF:1098-31473).
min:
  v: 1
max:
  v: *
base:
  path:
    v: AssignedAuthor.id
  min:
    v: 1
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II
    l: II

id:
  v: Author.assignedAuthor.sdtcIdentifiedBy
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    l: xml-namespace
  value: Uri
    v: urn:hl7-org:sdtc
    l: sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    l: xml-name
  value: String
    v: identifiedBy
path:
  v: Author.assignedAuthor.sdtcIdentifiedBy
min:
  v: 0
max:
  v: *
base:
  path:
    v: AssignedAuthor.sdtcIdentifiedBy
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/IdentifiedBy
    l: IdentifiedBy

id:
  v: Author.assignedAuthor.code
path:
  v: Author.assignedAuthor.code
comment:
  v: This assignedAuthor SHOULD contain zero or one [0..1] code, which SHOULD be selected from ValueSet Healthcare Provider Taxonomy urn:oid:2.16.840.1.114222.4.11.1066 DYNAMIC (CONF:1098-31671).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: AssignedAuthor.code
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CE
    l: CE
binding:
  strength:
    v: preferred
  value set:
    v: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.1066
    l: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.1066
  additional:
    purpose:
      v: preferred
    value set:
      v: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.12.1
      l: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.12.1
    documentation:
      v: If the content is patient authored the code **SHOULD** be selected from Personal And Legal Relationship Role Type (2.16.840.1.113883.11.20.12.1) (CONF:1098-32315).
    short doco:
      v: Patient-authored content

id:
  v: Author.assignedAuthor.sdtcSpecialty
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    l: xml-namespace
  value: Uri
    v: urn:hl7-org:sdtc
    l: sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    l: xml-name
  value: String
    v: specialty
path:
  v: Author.assignedAuthor.sdtcSpecialty
min:
  v: 0
max:
  v: *
base:
  path:
    v: AssignedAuthor.sdtcSpecialty
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CE
    l: CE
binding:
  strength:
    v: preferred
  value set:
    v: http://hl7.org/fhir/ValueSet/c80-practice-codes
    l: c80-practice-codes

id:
  v: Author.assignedAuthor.addr
path:
  v: Author.assignedAuthor.addr
short:
  v: Required on at least one instance of this author in the document
min:
  v: 0
max:
  v: *
base:
  path:
    v: AssignedAuthor.addr
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/AD
    l: AD
  profile:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/USRealmAddress
    l: USRealmAddress
condition:
  v: author-details

id:
  v: Author.assignedAuthor.telecom
path:
  v: Author.assignedAuthor.telecom
short:
  v: Required on at least one instance of this author in the document
min:
  v: 0
max:
  v: *
base:
  path:
    v: AssignedAuthor.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/TEL
    l: TEL
condition:
  v: author-details

id:
  v: Author.assignedAuthor.assignedPerson
path:
  v: Author.assignedAuthor.assignedPerson
short:
  v: assignedPerson/name or assignedAuthoringDevice/manufacturerModelName is required on at least one instance of this author in the document
comment:
  v: This assignedAuthor MAY contain zero or one [0..1] assignedPerson (CONF:1098-31474).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: AssignedAuthor.assignedPerson
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Person
    l: Person

id:
  v: Author.assignedAuthor.assignedPerson.nullFlavor
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.assignedPerson.realmCode
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: CS

id:
  v: Author.assignedAuthor.assignedPerson.typeId
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: II
constraint:
  key:
    v: II-1
  severity:
    v: error
  human:
    v: An II instance must have either a root or an nullFlavor.
  expression:
    v: root.exists() or nullFlavor.exists()
  source:
    v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
    l: InfrastructureRoot

id:
  v: Author.assignedAuthor.assignedPerson.typeId.nullFlavor
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.assignedPerson.typeId.assigningAuthorityName
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.assignedPerson.typeId.displayable
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    l: bl-simple

id:
  v: Author.assignedAuthor.assignedPerson.typeId.root
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    l: oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    l: uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    l: ruid
fixed: String
  v: 2.16.840.1.113883.1.3

id:
  v: Author.assignedAuthor.assignedPerson.typeId.extension
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.assignedPerson.templateId
path:
  v: Author.assignedAuthor.assignedPerson.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
    l: II

id:
  v: Author.assignedAuthor.assignedPerson.classCode
path:
  v: Author.assignedAuthor.assignedPerson.classCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Person.classCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: PSN
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-EntityClassLivingSubject
    l: v3-EntityClassLivingSubject

id:
  v: Author.assignedAuthor.assignedPerson.determinerCode
path:
  v: Author.assignedAuthor.assignedPerson.determinerCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Person.determinerCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: INSTANCE
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-EntityDeterminer
    l: v3-EntityDeterminer

id:
  v: Author.assignedAuthor.assignedPerson.name
path:
  v: Author.assignedAuthor.assignedPerson.name
comment:
  v: The assignedPerson, if present, MAY contain zero or more [0..*] name (CONF:1098-31475).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Person.name
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/PN
    l: PN
condition:
  v: author-details

id:
  v: Author.assignedAuthor.assignedPerson.sdtcDesc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    l: xml-namespace
  value: Uri
    v: urn:hl7-org:sdtc
    l: sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    l: xml-name
  value: String
    v: desc
path:
  v: Author.assignedAuthor.assignedPerson.sdtcDesc
definition:
  v: The desc extension allows multimedia depictions of patients, healthcare providers, or other individuals to be included in a CDA document.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Person.sdtcDesc
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ED
    l: ED

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    l: xml-namespace
  value: Uri
    v: urn:hl7-org:sdtc
    l: sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    l: xml-name
  value: String
    v: asPatientRelationship
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship
definition:
  v: Each participant role other than an informant/relatedEntity may have zero or more relationship roles with the patient. Each of these roles can be expressed with an asPatientRelationship element which further describes the type of role using a code element.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Person.sdtcAsPatientRelationship
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
    l: InfrastructureRoot

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.nullFlavor
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.realmCode
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: CS

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.typeId
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: II
constraint:
  key:
    v: II-1
  severity:
    v: error
  human:
    v: An II instance must have either a root or an nullFlavor.
  expression:
    v: root.exists() or nullFlavor.exists()
  source:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Author
    l: Author

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.typeId.nullFlavor
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.typeId.assigningAuthorityName
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.typeId.displayable
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    l: bl-simple

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.typeId.root
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    l: oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    l: uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    l: ruid
fixed: String
  v: 2.16.840.1.113883.1.3

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.typeId.extension
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.templateId
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.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
    l: II

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.classCode
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.classCode
representation:
  v: xmlAttr
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Person.sdtcAsPatientRelationship.classCode
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: PRS

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.determinerCode
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.determinerCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Person.sdtcAsPatientRelationship.determinerCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: INSTANCE

id:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.code
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    l: xml-namespace
  value: Uri
    v: urn:hl7-org:sdtc
    l: sdtc
path:
  v: Author.assignedAuthor.assignedPerson.sdtcAsPatientRelationship.code
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Person.sdtcAsPatientRelationship.code
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CE
    l: CE

id:
  v: Author.assignedAuthor.assignedAuthoringDevice
path:
  v: Author.assignedAuthor.assignedAuthoringDevice
min:
  v: 0
max:
  v: 1
base:
  path:
    v: AssignedAuthor.assignedAuthoringDevice
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/AuthoringDevice
    l: AuthoringDevice

id:
  v: Author.assignedAuthor.representedOrganization
path:
  v: Author.assignedAuthor.representedOrganization
short:
  v: assignedPerson/name or representedOrganization/name is required on at least one instance of this author in the document
comment:
  v: This assignedAuthor MAY contain zero or one [0..1] representedOrganization (CONF:1098-31476).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: AssignedAuthor.representedOrganization
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/Organization
    l: Organization

id:
  v: Author.assignedAuthor.representedOrganization.nullFlavor
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.representedOrganization.realmCode
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: CS

id:
  v: Author.assignedAuthor.representedOrganization.typeId
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: II
constraint:
  key:
    v: II-1
  severity:
    v: error
  human:
    v: An II instance must have either a root or an nullFlavor.
  expression:
    v: root.exists() or nullFlavor.exists()
  source:
    v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
    l: InfrastructureRoot

id:
  v: Author.assignedAuthor.representedOrganization.typeId.nullFlavor
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor
    l: CDANullFlavor

id:
  v: Author.assignedAuthor.representedOrganization.typeId.assigningAuthorityName
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.representedOrganization.typeId.displayable
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: boolean
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/bl-simple
    l: bl-simple

id:
  v: Author.assignedAuthor.representedOrganization.typeId.root
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/oid
    l: oid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/uuid
    l: uuid
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ruid
    l: ruid
fixed: String
  v: 2.16.840.1.113883.1.3

id:
  v: Author.assignedAuthor.representedOrganization.typeId.extension
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: string
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/st-simple
    l: st-simple

id:
  v: Author.assignedAuthor.representedOrganization.templateId
path:
  v: Author.assignedAuthor.representedOrganization.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
    l: II

id:
  v: Author.assignedAuthor.representedOrganization.classCode
path:
  v: Author.assignedAuthor.representedOrganization.classCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.classCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: ORG
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-EntityClassOrganization
    l: v3-EntityClassOrganization

id:
  v: Author.assignedAuthor.representedOrganization.determinerCode
path:
  v: Author.assignedAuthor.representedOrganization.determinerCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.determinerCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
  profile:
    v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
    l: cs-simple
fixed: Code
  v: INSTANCE
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-EntityDeterminer
    l: v3-EntityDeterminer

id:
  v: Author.assignedAuthor.representedOrganization.id
path:
  v: Author.assignedAuthor.representedOrganization.id
comment:
  v: The representedOrganization, if present, MAY contain zero or more [0..*] id (CONF:1098-31478).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.id
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II
    l: II

id:
  v: Author.assignedAuthor.representedOrganization.name
path:
  v: Author.assignedAuthor.representedOrganization.name
comment:
  v: The representedOrganization, if present, MAY contain zero or more [0..*] name (CONF:1098-31479).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.name
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ON
    l: ON

id:
  v: Author.assignedAuthor.representedOrganization.telecom
path:
  v: Author.assignedAuthor.representedOrganization.telecom
comment:
  v: The representedOrganization, if present, MAY contain zero or more [0..*] telecom (CONF:1098-31480).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/TEL
    l: TEL

id:
  v: Author.assignedAuthor.representedOrganization.addr
path:
  v: Author.assignedAuthor.representedOrganization.addr
comment:
  v: The representedOrganization, if present, MAY contain zero or more [0..*] addr (CONF:1098-31481).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.addr
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/AD
    l: AD
  profile:
    v: http://hl7.org/cda/us/ccda/StructureDefinition/USRealmAddress
    l: USRealmAddress

id:
  v: Author.assignedAuthor.representedOrganization.standardIndustryClassCode
path:
  v: Author.assignedAuthor.representedOrganization.standardIndustryClassCode
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.standardIndustryClassCode
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/CE
    l: CE
binding:
  strength:
    v: example
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-OrganizationIndustryClassNAICS
    l: v3-OrganizationIndustryClassNAICS

id:
  v: Author.assignedAuthor.representedOrganization.asOrganizationPartOf
path:
  v: Author.assignedAuthor.representedOrganization.asOrganizationPartOf
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.asOrganizationPartOf
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/OrganizationPartOf
    l: OrganizationPartOf

element:
  id:
    v: Author.templateId
  path:
    v: Author.templateId
  slicing:
    discriminator:
      type:
        v: value
      path:
        v: root
    rules:
      v: open
  min:
    v: 1
element:
  id:
    v: Author.templateId:author
  path:
    v: Author.templateId
  slice name:
    v: author
  min:
    v: 1
  max:
    v: 1
element:
  id:
    v: Author.templateId:author.root
  path:
    v: Author.templateId.root
  min:
    v: 1
  pattern: String
    v: 2.16.840.1.113883.10.20.22.4.119
element:
  id:
    v: Author.templateId:author.extension
  path:
    v: Author.templateId.extension
  max:
    v: 0
element:
  id:
    v: Author.time
  path:
    v: Author.time
  comment:
    v: SHALL contain exactly one [1..1] time (CONF:1098-31471).
element:
  id:
    v: Author.assignedAuthor
  path:
    v: Author.assignedAuthor
  comment:
    v: SHALL contain exactly one [1..1] assignedAuthor (CONF:1098-31472).
  constraint:
    key:
      v: author-details
    severity:
      v: error
    human:
      v: Authors require addr, telecom, and either assignedPerson/name or assignedAuthoringDevice/manufacturerModelName. These may be present on this author or on another instance of an Author Participation in the document that has an id that matches the first id of this author.
    expression:
      v: nullFlavor.exists() or (addr.exists() and telecom.exists() and (assignedPerson.name.exists() or assignedAuthoringDevice.manufacturerModelName.exists())) or (%resource.descendants().ofType(CDA.AssignedAuthor).where(id.exists($this.root = %context.id.first().root and $this.extension ~ %context.id.first().extension) and addr.exists() and telecom.exists() and (assignedPerson.name.exists() or assignedAuthoringDevice.manufacturerModelName.exists())))
    source:
      v: http://hl7.org/cda/us/ccda/StructureDefinition/AuthorParticipation
      l: AuthorParticipation
element:
  id:
    v: Author.assignedAuthor.id
  path:
    v: Author.assignedAuthor.id
  short:
    v: The first id may be set equal to (a pointer to) an id on a participant elsewhere in the document (header or entries) or a new author participant can be described here. If the id is pointing to a participant already described elsewhere in the document, assignedAuthor/id is sufficient to identify this participant and none of the remaining details of assignedAuthor are required to be set. Application Software must be responsible for resolving the identifier back to its original object and then rendering the information in the correct place in the containing section's narrative text. This id must be a pointer to another author participant.
  comment:
    v: This assignedAuthor SHALL contain at least one [1..*] id (CONF:1098-31473).
element:
  id:
    v: Author.assignedAuthor.code
  path:
    v: Author.assignedAuthor.code
  comment:
    v: This assignedAuthor SHOULD contain zero or one [0..1] code, which SHOULD be selected from ValueSet Healthcare Provider Taxonomy urn:oid:2.16.840.1.114222.4.11.1066 DYNAMIC (CONF:1098-31671).
  binding:
    strength:
      v: preferred
    value set:
      v: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.1066
      l: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.1066
    additional:
      purpose:
        v: preferred
      value set:
        v: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.12.1
        l: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.11.20.12.1
      documentation:
        v: If the content is patient authored the code **SHOULD** be selected from Personal And Legal Relationship Role Type (2.16.840.1.113883.11.20.12.1) (CONF:1098-32315).
      short doco:
        v: Patient-authored content
element:
  id:
    v: Author.assignedAuthor.sdtcSpecialty
  path:
    v: Author.assignedAuthor.sdtcSpecialty
  binding:
    strength:
      v: preferred
    value set:
      v: http://hl7.org/fhir/ValueSet/c80-practice-codes
      l: c80-practice-codes
element:
  id:
    v: Author.assignedAuthor.addr
  path:
    v: Author.assignedAuthor.addr
  short:
    v: Required on at least one instance of this author in the document
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/AD
      l: AD
    profile:
      v: http://hl7.org/cda/us/ccda/StructureDefinition/USRealmAddress
      l: USRealmAddress
  condition:
    v: author-details
element:
  id:
    v: Author.assignedAuthor.telecom
  path:
    v: Author.assignedAuthor.telecom
  short:
    v: Required on at least one instance of this author in the document
  condition:
    v: author-details
element:
  id:
    v: Author.assignedAuthor.assignedPerson
  path:
    v: Author.assignedAuthor.assignedPerson
  short:
    v: assignedPerson/name or assignedAuthoringDevice/manufacturerModelName is required on at least one instance of this author in the document
  comment:
    v: This assignedAuthor MAY contain zero or one [0..1] assignedPerson (CONF:1098-31474).
element:
  id:
    v: Author.assignedAuthor.assignedPerson.name
  path:
    v: Author.assignedAuthor.assignedPerson.name
  comment:
    v: The assignedPerson, if present, MAY contain zero or more [0..*] name (CONF:1098-31475).
  condition:
    v: author-details
element:
  id:
    v: Author.assignedAuthor.representedOrganization
  path:
    v: Author.assignedAuthor.representedOrganization
  short:
    v: assignedPerson/name or representedOrganization/name is required on at least one instance of this author in the document
  comment:
    v: This assignedAuthor MAY contain zero or one [0..1] representedOrganization (CONF:1098-31476).
element:
  id:
    v: Author.assignedAuthor.representedOrganization.id
  path:
    v: Author.assignedAuthor.representedOrganization.id
  comment:
    v: The representedOrganization, if present, MAY contain zero or more [0..*] id (CONF:1098-31478).
element:
  id:
    v: Author.assignedAuthor.representedOrganization.name
  path:
    v: Author.assignedAuthor.representedOrganization.name
  comment:
    v: The representedOrganization, if present, MAY contain zero or more [0..*] name (CONF:1098-31479).
element:
  id:
    v: Author.assignedAuthor.representedOrganization.telecom
  path:
    v: Author.assignedAuthor.representedOrganization.telecom
  comment:
    v: The representedOrganization, if present, MAY contain zero or more [0..*] telecom (CONF:1098-31480).
element:
  id:
    v: Author.assignedAuthor.representedOrganization.addr
  path:
    v: Author.assignedAuthor.representedOrganization.addr
  comment:
    v: The representedOrganization, if present, MAY contain zero or more [0..*] addr (CONF:1098-31481).
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/AD
      l: AD
    profile:
      v: http://hl7.org/cda/us/ccda/StructureDefinition/USRealmAddress
      l: USRealmAddress