au-Reference
type: StructureDefinition
node role: treeRoot
id:
  v: au-Reference
text:
  status:
    v: generated
  div: CDA entries can reference external objects such as external images and prior reports. These external objects are not part of the authenticated document content. They contain sufficient attributes to enable an explicit reference rather than duplicating the entire referenced object. The CDA entry that wraps the external reference can be used to encode the specific portions of the external reference that are addressed in the narrative block. Each object allows for an identifier and a code, and contains the RIM Act.text attribute, which can be used to store the URL and MIME type of the object. External objects always have a fixed moodCode of "EVN". The reference class contains the attribute reference.seperatableInd, which indicates whether or not the source is intended to be interpreted independently of the target. The indicator cannot prevent an individual or application from separating the source and target, but indicates the author's desire and willingness to attest to the content of the source if separated from the target. Typically, where seperatableInd is "false", the exchanged package should include the target of the reference so that the recipient can render it.
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/StructureDefinition/structuredefinition-fmm
  value: integer
    v: 1
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: reference
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://ns.electronichealth.net.au/cda/StructureDefinition/au-Reference
version:
  v: 1.0.1
name:
  v: au-Reference
title:
  v: ADHA Reference (CDA Class)
status:
  v: active
experimental:
  v: false
date:
  v: 2025-10-10T09:58:30+10:00
publisher:
  v: Australian Digital Health Agency
contact:
  name:
    v: Australian Digital Health Agency
  telecom:
    system:
      v: email
description:
  v: **Australian adaptation of the [HL7 International CDA Reference class]( https://hl7.org/cda/stds/core/2.0.1-sd/StructureDefinition-Reference.html)**. This is a generated StructureDefinition that describes CDA - that is, CDA as it actually is for R2. The intent of this StructureDefinition is to enable CDA to be a FHIR resource. That enables the FHIR infrastructure - API, conformance, query - to be used directly against CDA
jurisdiction:
  coding:
    system:
      v: urn:iso:std:iso:3166
    code:
      v: AU
copyright:
  v: Copyright © 2024 Australian Digital Health Agency - All rights reserved. This content is licensed under a Creative Commons Attribution 4.0 International License. See [https://creativecommons.org/licenses/by/4.0/](https://creativecommons.org/licenses/by/4.0/).
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/Reference
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: Reference
    path:
      v: Reference
    short:
      v: Australian adaptation of the HL7 International CDA Reference class
    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: *
    base:
      path:
        v: Base
      min:
        v: 0
      max:
        v: *
    constraint:
      key:
        v: reference-external
      severity:
        v: error
      human:
        v: Must contain one (and only one) external reference
      expression:
        v: (externalAct | externalObservation | externalProcedure | externalDocument).count() = 1
    is modifier:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: n/a
  element:
    id:
      v: Reference.nullFlavor
    path:
      v: Reference.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: Reference.realmCode
    path:
      v: Reference.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: Reference.typeId
    path:
      v: Reference.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

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
  link: http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot

id:
  v: Reference.typeId.nullFlavor
path:
  v: Reference.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: Reference.typeId.assigningAuthorityName
path:
  v: Reference.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: Reference.typeId.displayable
path:
  v: Reference.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: Reference.typeId.root
path:
  v: Reference.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: Reference.typeId.extension
path:
  v: Reference.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: Reference.templateId
path:
  v: Reference.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: Reference.typeCode
path:
  v: Reference.typeCode
representation:
  v: xmlAttr
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Reference.typeCode
  min:
    v: 1
  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://terminology.hl7.org/ValueSet/v3-xActRelationshipExternalReference
    link: http://terminology.hl7.org/ValueSet/v3-xActRelationshipExternalReference

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

id:
  v: Reference.externalAct
path:
  v: Reference.externalAct
short:
  v: Australian-adapted ExternalAct class
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Reference.externalAct
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://ns.electronichealth.net.au/cda/StructureDefinition/au-ExternalAct

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

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

id:
  v: Reference.externalDocument
path:
  v: Reference.externalDocument
short:
  v: Australian-adapted ExternalDocument class
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Reference.externalDocument
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: http://ns.electronichealth.net.au/cda/StructureDefinition/au-ExternalDocument

element:
  id:
    v: Reference
  path:
    v: Reference
  short:
    v: Australian adaptation of the HL7 International CDA Reference class
  min:
    v: 1
  max:
    v: *
  constraint:
    key:
      v: reference-external
    severity:
      v: error
    human:
      v: Must contain one (and only one) external reference
    expression:
      v: (externalAct | externalObservation | externalProcedure | externalDocument).count() = 1
element:
  id:
    v: Reference.typeCode
  path:
    v: Reference.typeCode
  representation:
    v: xmlAttr
  min:
    v: 1
  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://terminology.hl7.org/ValueSet/v3-xActRelationshipExternalReference
      link: http://terminology.hl7.org/ValueSet/v3-xActRelationshipExternalReference
element:
  id:
    v: Reference.seperatableInd
  path:
    v: Reference.seperatableInd
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/BL
element:
  id:
    v: Reference.externalAct
  path:
    v: Reference.externalAct
  short:
    v: Australian-adapted ExternalAct class
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://ns.electronichealth.net.au/cda/StructureDefinition/au-ExternalAct
element:
  id:
    v: Reference.externalObservation
  path:
    v: Reference.externalObservation
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/ExternalObservation
element:
  id:
    v: Reference.externalProcedure
  path:
    v: Reference.externalProcedure
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://hl7.org/cda/stds/core/StructureDefinition/ExternalProcedure
element:
  id:
    v: Reference.externalDocument
  path:
    v: Reference.externalDocument
  short:
    v: Australian-adapted ExternalDocument class
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: http://ns.electronichealth.net.au/cda/StructureDefinition/au-ExternalDocument