ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

HumanName — Structured human name

HumanName breaks a name down into family, given, prefix, suffix. Supports multiple names (official, usual, maiden, old) via use.

Purpose

HumanName is used by Patient, Practitioner, Person, RelatedPerson. A person may have several HumanName: a legal name (official), a usual name (Jim), a maiden name (maiden), an anonymised name for publication (anonymous). The given array holds the given names — not one, but ALL.

Key fields

FieldTypeCardinalityRole
usecode0..1usual, official, temp, nickname, anonymous, old, maiden.
textstring0..1Full text representation (display fallback).
familystring0..1Family name.
givenstring[]0..*Given names (order matters).
prefixstring[]0..*Prefixes (Dr, Mr, Ms).
suffixstring[]0..*Suffixes (MD, PhD, Jr).
periodPeriod0..1Validity period.

JSON example

Dr John James Doe MD:

json humanname-example.json
{
  "use": "official",
  "family": "Doe",
  "given": ["John", "James"],
  "prefix": ["Dr"],
  "suffix": ["MD"],
  "period": { "start": "1974-12-25" }
}

Common pitfalls

  • Everything in family: "John Doe" all in family instead of family=Doe, given=[John]. Breaks FHIR name searches.
  • Non-Latin characters without extension: Arabic, Chinese, Cyrillic names need the iso21090-EN-representation extension.
  • Multiple use=official: only one official at a time. Others in old, maiden, nickname.
  • Patient.name — Patient names.
  • Practitioner.name — Healthcare professional names.
  • Person.name — Federated Person names.