shlink: URI encode) and, once decrypted, a
FHIR bundle built to explicit profiles. This page walks through both layers and links to
the haau3 FHIR Implementation Guide for the exact,
machine-readable shapes.
The SMART Health Link payload
Scanning the QR code (or decoding theshlink:/… URI) yields a small JSON payload that tells a
receiver where and how to fetch the data:
The
flag determines how a receiver fetches the file. See
Retrieve a SMART Health Link. The
retrieved file is a JWE (compact serialization) encrypted with AES-256-GCM; its
protected header declares cty: application/fhir+json. Decrypt it with key to get the FHIR
bundle below.
The FHIR bundle
The decrypted payload is a FHIRBundle that conforms to the KTC Patient-Shared Bundle
profile (aligned with the KTC specification).
The profile requires:
typefixed tocollection.timestamppresent (when the bundle was assembled).- At least two entries: exactly one Patient, plus one or more content entries.
- Every
entry.fullUrlpopulated (FHIR R4 requires this for collection bundles).
meta.profile. The KTC specification says resources in
this bundle should not include it, and that receivers must not require it. Match an entry to
the profiles below by validating its content, not by reading meta.profile. Resources may
carry meta.tag values that record processing haau3 applied to a record; receivers can safely
ignore them.
KTC Patient-Shared Bundle profile
Full StructureDefinition, element constraints, and slicing in the FHIR IG.
Document references (PDFs)
Human-readable summaries (a rendered health summary, and the patient’s own “Patient Story”) travel asDocumentReference entries conforming to the KTC Patient-Shared
DocumentReference profile. The profile requires:
content.attachment.contentTypefixed toapplication/pdf, with the PDF base64-encoded incontent.attachment.data.- A
categoryof CMSpatient-shared(https://cms.gov/fhir/CodeSystem/patient-shared-category). - A
typefrom the KTC Patient-Shared Document Type value set, which allows two LOINC codes: a patient summary document (60591-5) or a patient note for the Patient Story (51855-5). - The patient as a required
author, so the receiver can see the data is patient-asserted. - For patient-asserted content such as the Patient Story, a
PATASTsecurity label (http://terminology.hl7.org/CodeSystem/v3-ObservationValue).
KTC Patient-Shared DocumentReference profile
Full StructureDefinition for the embedded PDF document references.
Profiles & examples in the FHIR IG
The Implementation Guide has the exact shapes, value sets, and worked examples.Example: Patient-Shared Bundle
A complete example instance (also available as
JSON).
haau3 Patient Story Observation
The profile for patient self-reported care-experience preferences.
Bundle profile
KTC Patient-Shared Bundle StructureDefinition.
All IG artifacts
Every profile, value set, and example in the haau3 IG.