Bundle mit Referenzen
Ein Bundle mit Patienten und Observations; zeigt aufgelöste Referenzen, Versionen und Identifier. 8732 Bytes.
FHIR-Viewer › FHIR-Bundle anzeigen
Ein Bundle ist ein Container für mehrere Ressourcen. Wenn eine FHIR-Datei mit "resourceType": "Bundle" beginnt, steckt der eigentliche Inhalt in entry. Der Viewer zählt die Ressourcen je Typ, listet die Einträge und lässt Sie Referenzen von einem Eintrag zum nächsten anklicken.
Die Daten bleiben in Ihrem Browser: Es wird nichts hochgeladen. Nur zur Ansicht, kein Validator, kein Medizinprodukt.
Beispiel „Bundle mit Referenzen“: Original in der FHIR-Spezifikation R4, Lizenz CC0 1.0. Unverändert bis auf die Formatierung.
Nach der Spezifikation fasst ein Bundle Ressourcen zusammen, zum Beispiel als Ergebnis einer Suche, als Versionsverlauf (history), als Nachricht, als Dokument oder als Transaktion, die mehrere Ressourcen auf einem Server in einem Schritt anlegt, ändert oder löscht. Welche Art vorliegt, steht in Bundle.type: document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection. Das Feld ist ein Pflichtfeld (1..1); fehlt es, meldet der Viewer das.
Ein Bundle ist nicht dasselbe wie contained: Contained-Ressourcen existieren nur im Kontext ihrer Elternressource, Bundle-Einträge können dagegen eigenständig abrufbar sein.
type. Im Beispiel oben: 11 Einträge, type: collection. Die „Bundle-Übersicht“ darunter zählt je Ressourcentyp: Patient 4, Observation 7.Eine Referenz wie "reference": "Patient/example" ist ein Verweis, kein Einbetten. Der Viewer sucht das Ziel in dieser Reihenfolge: zuerst einen Eintrag, dessen fullUrl passt (auch eine relative Referenz wird gegen die Basis der fullUrl aufgelöst), bei Versionsangaben passend zur meta.versionId; bei einer Referenz nur mit identifier einen Eintrag mit diesem Identifier; bei #id eine contained-Ressource. Findet er nichts über die fullUrl, versucht er Typ und id und markiert das als Info, weil die Spezifikation dafür nichts festlegt. Externe URLs löst die Seite nicht auf, weil sie keine Netzwerkanfragen stellt; sie erscheinen als Info.
Zur Einordnung der Referenzarten steht in der Spezifikation: ein Literalverweis (reference) und ein logischer Verweis (identifier) sind beide möglich.
| Regel | Inhalt laut Spezifikation |
|---|---|
| bdl-1 | total nur bei searchset oder history |
| bdl-3 | entry.request Pflicht bei batch, transaction und history, sonst nicht erlaubt |
| bdl-4 | entry.response Pflicht bei batch-response, transaction-response und history, sonst nicht erlaubt |
| bdl-7 | fullUrl eindeutig, oder die Einträge unterscheiden sich in meta.versionId (nicht bei history) |
| bdl-9, bdl-10 | Ein Dokument braucht einen identifier mit system und value sowie einen timestamp |
| bdl-11, bdl-12 | Dokument: erste Ressource ist eine Composition; Nachricht: erste Ressource ist ein MessageHeader |
Nicht geprüft werden bdl-2, bdl-5 und bdl-8 sowie alle Regeln der enthaltenen Ressourcen. Zusätzlich gibt es eine Warnung, wenn fullUrl außerhalb von transaction und batch fehlt. Der Viewer bleibt damit eine Lesehilfe und ersetzt keine Validierung.
id gefunden wird.medicationReference verweist. Der Viewer meldet hier, dass der Patient Patient/347 nicht im Bundle liegt: ein Suchergebnis enthält nicht automatisch alle referenzierten Ressourcen.request mit Methode und URL, etwa POST Patient, PUT Patient/123 und DELETE Patient/234; Regel bdl-3 verlangt genau das.Ein Bundle mit Patienten und Observations; zeigt aufgelöste Referenzen, Versionen und Identifier. 8732 Bytes.
Ein kleines Suchergebnis mit MedicationRequest und Medication. 1733 Bytes.
Eine Transaktion mit mehreren Patienten und request-Angaben. 4807 Bytes.
Mit dem FHIRPath-Tester zählen Sie zum Beispiel die Observations eines Bundles. Wie Ressourcen allgemein aufgebaut sind, steht unter Was ist FHIR?.
JSON oder XML einfügen und sofort ansehen
Pfadausdrücke an echten Beispielen ausprobieren
Ressourcen, JSON/XML, REST und FHIR in Deutschland