SubjectPerson
type: StructureDefinition
node role: treeRoot
id:
  v: SubjectPerson
text:
  status:
    v: generated
  div: The entity playing the role is a person (SubjectPerson class).
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: code
        v: not-applicable
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:v3
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: subjectPerson
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/logical-container
  value: uri
    v: http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/type-profile-style
  value: code
    v: cda
url:
  v: http://hl7.org/cda/stds/core/StructureDefinition/SubjectPerson
version:
  v: 1.0.1
name:
  v: SubjectPerson
title:
  v: SubjectPerson (CDA Class)
status:
  v: active
experimental:
  v: false
date:
  v: 2025-10-10T09:58:30+10:00
publisher:
  v: HL7
description:
  v: The entity playing the role is a person (SubjectPerson class).
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/SubjectPerson
base definition:
  v: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
  link: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
derivation:
  v: specialization
snapshot:
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version
    value: string
      v: 1.0.1
  element:
    id:
      v: SubjectPerson
    path:
      v: SubjectPerson
    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: SubjectPerson.nullFlavor
    path:
      v: SubjectPerson.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
  element:
    id:
      v: SubjectPerson.realmCode
    path:
      v: SubjectPerson.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: SubjectPerson.typeId
    path:
      v: SubjectPerson.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
    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
        link: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot
  element:
    id:
      v: SubjectPerson.typeId.nullFlavor
    path:
      v: SubjectPerson.typeId.nullFlavor
    representation:
      v: xmlAttr

v: Exceptional Value Detail

v: If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

v: 0

v: 1

path:
  v: ANY.nullFlavor
min:
  v: 0
max:
  v: 1

code:
  v: code
profile:
  v: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple
  link: http://hl7.org/cda/stds/core/StructureDefinition/cs-simple

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: SubjectPerson.typeId.assigningAuthorityName
path:
  v: SubjectPerson.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: SubjectPerson.typeId.displayable
path:
  v: SubjectPerson.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: SubjectPerson.typeId.root
path:
  v: SubjectPerson.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: string
  v: 2.16.840.1.113883.1.3

id:
  v: SubjectPerson.typeId.extension
path:
  v: SubjectPerson.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: SubjectPerson.templateId
path:
  v: SubjectPerson.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: SubjectPerson.classCode
path:
  v: SubjectPerson.classCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.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: code
  v: PSN
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-EntityClassLivingSubject
    link: http://terminology.hl7.org/ValueSet/v3-EntityClassLivingSubject

id:
  v: SubjectPerson.determinerCode
path:
  v: SubjectPerson.determinerCode
representation:
  v: xmlAttr
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.determinerCode
  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: code
  v: INSTANCE
binding:
  strength:
    v: required
  value set:
    v: http://terminology.hl7.org/ValueSet/v3-EntityDeterminer
    link: http://terminology.hl7.org/ValueSet/v3-EntityDeterminer

id:
  v: SubjectPerson.sdtcId
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: id
path:
  v: SubjectPerson.sdtcId
definition:
  v: A CDA Document identifies each participant through the application of a role identifier. This identifier can be used to trace the participation of an entity in a given role, but cannot necessarily be used to determine that two entities are the same. While more role identities could be provided whose intended use is to unify the entities, this is better modeled through the use of an entity identifier. Therefore, to facilitate this capability, this guide defines an extension to CDA Release 2.0 that allows the person or organization playing the role to be uniquely identified, by the inclusion of an identifier on the entity.
min:
  v: 0
max:
  v: *
base:
  path:
    v: SubjectPerson.sdtcId
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/II

id:
  v: SubjectPerson.name
path:
  v: SubjectPerson.name
min:
  v: 0
max:
  v: *
base:
  path:
    v: SubjectPerson.name
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/PN

id:
  v: SubjectPerson.sdtcDesc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: desc
path:
  v: SubjectPerson.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: SubjectPerson.sdtcDesc
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/ED

id:
  v: SubjectPerson.administrativeGenderCode
path:
  v: SubjectPerson.administrativeGenderCode
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.administrativeGenderCode
  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-AdministrativeGender
    link: http://terminology.hl7.org/ValueSet/v3-AdministrativeGender

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

id:
  v: SubjectPerson.sdtcDeceasedInd
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: deceasedInd
path:
  v: SubjectPerson.sdtcDeceasedInd
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.sdtcDeceasedInd
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/BL

id:
  v: SubjectPerson.sdtcDeceasedTime
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: deceasedTime
path:
  v: SubjectPerson.sdtcDeceasedTime
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.sdtcDeceasedTime
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/TS

id:
  v: SubjectPerson.sdtcMultipleBirthInd
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: multipleBirthInd
path:
  v: SubjectPerson.sdtcMultipleBirthInd
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.sdtcMultipleBirthInd
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/BL

id:
  v: SubjectPerson.sdtcMultipleBirthOrderNumber
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: multipleBirthOrderNumber
path:
  v: SubjectPerson.sdtcMultipleBirthOrderNumber
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SubjectPerson.sdtcMultipleBirthOrderNumber
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/INT-POS

element:
  id:
    v: SubjectPerson
  path:
    v: SubjectPerson
  min:
    v: 1
  max:
    v: 1
element:
  id:
    v: SubjectPerson.classCode
  path:
    v: SubjectPerson.classCode
  representation:
    v: xmlAttr
  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: code
    v: PSN
  binding:
    strength:
      v: required
    value set:
      v: http://terminology.hl7.org/ValueSet/v3-EntityClassLivingSubject
      link: http://terminology.hl7.org/ValueSet/v3-EntityClassLivingSubject
element:
  id:
    v: SubjectPerson.determinerCode
  path:
    v: SubjectPerson.determinerCode
  representation:
    v: xmlAttr
  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: code
    v: INSTANCE
  binding:
    strength:
      v: required
    value set:
      v: http://terminology.hl7.org/ValueSet/v3-EntityDeterminer
      link: http://terminology.hl7.org/ValueSet/v3-EntityDeterminer
element:
  id:
    v: SubjectPerson.sdtcId
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    value: uri
      v: urn:hl7-org:sdtc
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    value: string
      v: id
  path:
    v: SubjectPerson.sdtcId
  definition:
    v: A CDA Document identifies each participant through the application of a role identifier. This identifier can be used to trace the participation of an entity in a given role, but cannot necessarily be used to determine that two entities are the same. While more role identities could be provided whose intended use is to unify the entities, this is better modeled through the use of an entity identifier. Therefore, to facilitate this capability, this guide defines an extension to CDA Release 2.0 that allows the person or organization playing the role to be uniquely identified, by the inclusion of an identifier on the entity.
  min:
    v: 0
  max:
    v: *
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/II
element:
  id:
    v: SubjectPerson.name
  path:
    v: SubjectPerson.name
  min:
    v: 0
  max:
    v: *
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/PN
element:
  id:
    v: SubjectPerson.sdtcDesc
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    value: uri
      v: urn:hl7-org:sdtc
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    value: string
      v: desc
  path:
    v: SubjectPerson.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
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/ED
element:
  id:
    v: SubjectPerson.administrativeGenderCode
  path:
    v: SubjectPerson.administrativeGenderCode
  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-AdministrativeGender
      link: http://terminology.hl7.org/ValueSet/v3-AdministrativeGender
element:
  id:
    v: SubjectPerson.birthTime
  path:
    v: SubjectPerson.birthTime
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/TS
element:
  id:
    v: SubjectPerson.sdtcDeceasedInd
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    value: uri
      v: urn:hl7-org:sdtc
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    value: string
      v: deceasedInd
  path:
    v: SubjectPerson.sdtcDeceasedInd
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/BL
element:
  id:
    v: SubjectPerson.sdtcDeceasedTime
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    value: uri
      v: urn:hl7-org:sdtc
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
    value: string
      v: deceasedTime
  path:
    v: SubjectPerson.sdtcDeceasedTime
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/TS
element:
  id:
    v: SubjectPerson.sdtcMultipleBirthInd
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
    value: uri
      v: urn:hl7-org:sdtc

url:
  v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
value: string
  v: multipleBirthInd

v: SubjectPerson.sdtcMultipleBirthInd

v: 0

v: 1

id:
  v: SubjectPerson.sdtcMultipleBirthOrderNumber
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-namespace
  value: uri
    v: urn:hl7-org:sdtc
extension:
  url:
    v: http://hl7.org/fhir/tools/StructureDefinition/xml-name
  value: string
    v: multipleBirthOrderNumber
path:
  v: SubjectPerson.sdtcMultipleBirthOrderNumber
min:
  v: 0
max:
  v: 1
type:
  code:
    v: http://hl7.org/cda/stds/core/StructureDefinition/INT-POS