uid
type: StructureDefinition
node role: treeRoot
id:
  v: uid
text:
  status:
    v: generated
  div: Primitive type 'uid'
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/logical-container
  value: uri
    v: http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-type-characteristics
  value: code
    v: can-bind
url:
  v: http://hl7.org/cda/stds/core/StructureDefinition/uid
version:
  v: 1.0.1
name:
  v: uid
title:
  v: uid: Unique Identifier String
status:
  v: active
experimental:
  v: false
date:
  v: 2025-10-10T09:58:30+10:00
publisher:
  v: HL7
description:
  v: A unique identifier string is a character string which identifies an object in a globally unique and timeless manner. The allowable formats and values and procedures of this data type are strictly controlled by HL7. At this time, user-assigned identifiers may be certain character representations of ISO Object Identifiers (OID) and DCE Universally Unique Identifiers (UUID). HL7 also reserves the right to assign other forms of UIDs (RUID), such as mnemonic identifiers for code systems.
fhir version:
  v: 5.0.0
kind:
  v: primitive-type
abstract:
  v: false
type:
  v: string
base definition:
  v: http://hl7.org/fhir/StructureDefinition/string
  link: http://hl7.org/fhir/StructureDefinition/string
derivation:
  v: constraint
snapshot:
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version
    value: string
      v: 5.0.0
  element:
    id:
      v: string
    path:
      v: string
    short:
      v: Primitive Type string
    definition:
      v: A sequence of Unicode characters
    comment:
      v: Note that FHIR strings SHALL NOT exceed 1,048,576 (1024*1024) characters in size
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: string
      min:
        v: 0
      max:
        v: *
    constraint:
      key:
        v: ele-1
      severity:
        v: error
      human:
        v: All FHIR elements must have a @value or children
      expression:
        v: hasValue() or (children().count() > id.count())
      source:
        v: http://hl7.org/fhir/StructureDefinition/Element
        link: http://hl7.org/fhir/StructureDefinition/Element
    constraint:
      key:
        v: uid-pattern
      severity:
        v: error
      human:
        v: Must conform to OID (#.#.#), UUID (32 hexadecimal digits separated by hyphens), or RUID (a letter followed by any combination of letters, numbers or hyphens)
      expression:
        v: matches('^([0-2](\\.(0|[1-9][0-9]*))+)|([0-9A-Za-z]{8}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{12})|([A-Za-z][A-Za-z0-9\\-]*)$')
    is modifier:
      v: false
    is summary:
      v: false
  element:
    id:
      v: string.id
    path:
      v: string.id
    representation:
      v: xmlAttr
    short:
      v: xml:id (or equivalent in JSON)
    definition:
      v: unique id for the element within a resource (for internal references)
    min:
      v: 0
    max:
      v: 0
    base:
      path:
        v: Element.id
      min:
        v: 0
      max:
        v: 1
    type:
      extension:
        value: url
      code:
        v: http://hl7.org/fhirpath/System.String
    is modifier:
      v: false
    is summary:
      v: false
  element:
    id:
      v: string.extension
    path:
      v: string.extension
    short:
      v: Extension
    definition:
      v: An Extension
    min:
      v: 0
    max:
      v: 0
    base:
      path:
        v: Element.extension
      min:
        v: 0
      max:
        v: *
    type:
      code:
        v: Extension
    constraint:
      key:
        v: ele-1
      severity:
        v: error
      human:
        v: All FHIR elements must have a @value or children
      expression:
        v: hasValue() or (children().count() > id.count())
      source:
        v: http://hl7.org/fhir/StructureDefinition/Element
        link: http://hl7.org/fhir/StructureDefinition/Element
    constraint:
      key:
        v: ext-1
      severity:
        v: error
      human:
        v: Must have either extensions or value[x], not both
      expression:
        v: extension.exists() != value.exists()
      source:
        v: http://hl7.org/fhir/StructureDefinition/Extension
        link: http://hl7.org/fhir/StructureDefinition/Extension
    is modifier:
      v: false
    is summary:
      v: false
  element:
    id:
      v: string.value
    path:
      v: string.value
    representation:
      v: xmlAttr
    short:
      v: Primitive value for string
    definition:
      v: The actual value
    min:
      v: 0

url
v: string

v: 1

path:
  v: string.value
min:
  v: 0
max:
  v: 1

extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
  value: url
    v: string
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/regex
  value: string
    v: ^[\s\S]+$
code:
  v: http://hl7.org/fhirpath/System.String

v: 1048576

v: false

v: false

element:
  id:
    v: string
  path:
    v: string
  constraint:
    key:
      v: uid-pattern
    severity:
      v: error
    human:
      v: Must conform to OID (#.#.#), UUID (32 hexadecimal digits separated by hyphens), or RUID (a letter followed by any combination of letters, numbers or hyphens)
    expression:
      v: matches('^([0-2](\\.(0|[1-9][0-9]*))+)|([0-9A-Za-z]{8}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{12})|([A-Za-z][A-Za-z0-9\\-]*)$')
element:
  id:
    v: string.id
  path:
    v: string.id
  max:
    v: 0
element:
  id:
    v: string.extension
  path:
    v: string.extension
  max:
    v: 0