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.

Linkage — detail: federated MPI and HIE deduplication

Operational tooling for Master Patient Indexes and Health Information Exchanges: which Patient resource is source of truth? Linkage answers this question.

Federated MPI patterns

In an HIE (Health Information Exchange) or a federated MPI, the same patient appears under multiple identifiers in different systems. Linkage attaches to a canonical source patient its alternates (equivalent identifiers) and its historical records (former identifiers).

item.type

CodeSemantics
sourceMaster resource. At least 1 per Linkage.
alternateEquivalent resource, still active.
historicalFormer archived resource, kept for traceability.

Linkage vs Patient.link vs Person.link

  • Patient.linkinternal usage within a system (replace, replaced-by, refer, seealso). Cardinality limited to Patient + RelatedPerson.
  • Person.link — multi-domain aggregation (Patient + Practitioner + RelatedPerson). Person serves as cross-role MPI pivot.
  • Linkageexternal usage, run by a steward (HIE manager, MPI team), able to point to any FHIR resource.

Example: 3-system HIE deduplication

json linkage-hie-dedup.json
{
  "resourceType": "Linkage",
  "id": "hie-mpi-link-marie-dupont",
  "active": true,
  "author": { "reference": "Organization/hie-mpi-team" },
  "item": [{
    "type": "source",
    "resource": { "reference": "Patient/hospital-a-MR12345" }
  }, {
    "type": "alternate",
    "resource": { "reference": "Patient/hospital-b-MR67890" }
  }, {
    "type": "alternate",
    "resource": { "reference": "Patient/clinic-c-PT-2024-0042" }
  }, {
    "type": "historical",
    "resource": { "reference": "Patient/old-system-archived-MR-99999" }
  }]
}

Common pitfalls

  • No source — a Linkage must have at least one type=source.
  • Circular Linkage chains — Linkage A references B, B references A: avoid.
  • Unversioned Linkage — historise via Provenance to be able to reconstruct the merge.
  • Audit missing — every Linkage create/update should emit an AuditEvent.