Implementation Guide
TIFlow - Kernfunktionalitäten
Version 2.0.0 - release

FHIR-Ressource validieren

Der TI-Flow-Fachdienst validiert bei Operationen von Clientsystemen übermittelte FHIR-Ressourcen. Die folgenden Anforderungen beschreiben Mindestprüfungen.

Allgemeine Prüfungen zur FHIR-Validierung

funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Prüfung der zeitlichen Gültigkeit einer FHIR Ressource den Referenzwert aus dem Element gemäß folgender Tabelle zugrunde legen.
Bezeichnung Package FHIR Profil Element/Zeitpunkt
KBV Verordnungsdatensatz kbv.ita.erp KBV_PR_ERP_Prescription MedicationRequest.authoredOn
KBV Verordnungsdatensatz DiGA kbv.itv.evdga KBV_PR_EVDGA_HealthAppRequest DeviceRequest.authoredOn
Communication de.gematik.erezept-workflow.r4 GEM_ERP_PR_Communication_DispReq GEM_ERP_PR_Communication_Reply GEM_ERP_PR_Communication_DiGA Zeitpunkt des Aufrufs der Operation am TI-Flow-Fachdienst
MedicationDispense de.gematik.erezept-workflow.r4 Gem_erxMedicationDispense GEM_ERP_PR_MedicationDispense MedicationDispense.whenHandedOver
PKV Patientenrechnung de.gematik.erezept-patientenrechnung.r4 GEM_ERPCHRG_PR_ChargeItem GEM_ERPCHRG_PR_Consent Zeitpunkt des Aufrufs der Operation am TI-Flow-Fachdienst
PKV Patientenrechnung Communication de.gematik.erezept-patientenrechnung.r4 GEM_ERPCHRG_PR_Communication_ChargChangeReq GEM_ERPCHRG_PR_Communication_ChargChangeReply Zeitpunkt des Aufrufs der Operation am TI-Flow-Fachdienst
PKV Abgabedatensatz de.abda.eRezeptAbgabedatenPKV DAV_PKV_PR_ERP_Abgabeinformationen MedicationDispense.whenHandedOver
Tabelle: TAB_ERP_FD_PruefungGueltigkeit_FHIR_Ressource Werte bei Prüfung der zeitlichen Gültigkeit einer FHIR Ressource
funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS den ermittelten Referenzwert der Gültigkeit gegen die aktuell gültige FHIR-Konfiguration auswerten und als Referenzzeitpunkt für die Prüfung der zeitlichen Gültigkeit einer FHIR Ressource zugrundelegen. funkt. Eignung: Herstellererklärung Der TI-Flow-Fachdienst MUSS sicherstellen, dass alle Datums- und Zeitangaben ohne explizite Zeitzoneninformation als deutsche Zeit (CET/CEST) entsprechend der historischen oder aktuellen Regelung interpretiert werden. funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst und Clientsysteme des TI-Flow-Fachdienstes MÜSSEN sicherstellen, dass bei der Erstellung von Datensätzen Datums- und Zeitangaben ohne Zeitzoneninformation, die entsprechend dem Datum gültige deutsche Zeitzone (CET/CEST) angewendet wird.

Prüfung der meta.profile-Definition

funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Validierung einer FHIR-Ressource prüfen, dass maximal ein meta.profile-Eintrag vorhanden ist und bei Abweichung die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code TIFLOW_META_PROFILE_INVALID
Details Text -
abbrechen.
funkt. Eignung: Test Produkt/FA funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung Der TI-Flow-Fachdienst und die Clientsysteme des TI-Flow-Fachdienstes MÜSSEN bei der Erstellung jeder FHIR-Ressource sicherstellen, dass im Element meta.profile genau ein Eintrag enthalten ist, wenn im Profil das Element meta.profile verpflichtend anzugeben ist; bei Abweichung ist die Ressource als fehlerhaft zu behandeln und darf nicht übermittelt werden.

Validierung von Referenzen in FHIR-Objekten

FHIR ermöglicht die Verknüpfung von Ressourcen über Referenzen. Das erfolgt über den Datentyp Reference. Referenzen dienen dazu, auf andere Ressourcen innerhalb derselben oder einer anderen FHIR-Instanz zu verweisen.

Der TI-Flow-Fachdienst erzeugen und validieren diese Angaben.

Beim Erzeugen von FHIR-Objekten verwendet der TI-Flow-Fachdienst grundsätzlich das urn:uuid-Schema, um eine Referenz anzugeben. Das ermöglicht eine direkte Auflösung innerhalb des Artefakts.

Referenzierungen und fullUrl in FHIR-Bundles

Innerhalb eines FHIR-Bundle dient die fullUrl als eindeutige Kennung eines Bundle-Eintrags, damit Resourcen im Bundle referenziert und aufgelöst werden können. Für den Wert von fullUrl sind sieht die FHIR Spezifikation verschiedene Formate vor:

  • oid,
  • urn:uuid
  • und http(s)

Die fullUrl muss dabei mit der ID der referenzierten Ressource konsistent sein, damit die Referenzierung eindeutig und prüfbar bleibt.

funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS beim Erzeugen von FHIR-Bundles im `fullUrl`-Element das `urn:uuid`-Schema verwenden. funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS beim Erzeugen von FHIR-Datensätzen für die Referenzierung von FHIR-Ressourcen das `urn:uuid`-Schema verwenden. funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Validierung einer FHIR-Ressource vom Typ Bundle prüfen, ob die ID der Ressource (Bundle.entry.resource.id) und die ID ihrer fullUrl (Bundle.entry.fullurl) übereinstimmen und bei Abweichung die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code SVC_VALIDATION_FAILED
Details Text Die ID einer Ressource und die ID der zugehörigen fullUrl stimmen nicht überein.
abbrechen.
funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Validierung einer FHIR-Ressource vom Typ Bundle prüfen, ob der Wert von fullUrls der entries (Bundle.entry.fullUrl) dem [Format http-Schema] oder [Format urn:uuid-Schema] entsprechen und bei Abweichung die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code SVC_VALIDATION_FAILED
Details Text Invalid format of the fullUrl
abbrechen.
funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Validierung einer FHIR-Ressource vom Typ Bundle prüfen, ob für jedes entry im Bundle die ID der Ressource (Bundle.entry.resource.id) vorhanden ist und bei Abweichung die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code SVC_VALIDATION_FAILED
Details Text The ID of a resource in the bundle does not exist
abbrechen.
funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Validierung einer FHIR-Ressource prüfen, ob angegebene Referenzen nach [FHIR Spezifikation Auflösen von Referenzen in Bundles] ermittelt werden können und bei Abweichung die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code SVC_VALIDATION_FAILED
Details Text Reference to a resource could not be resolved
abbrechen.

Referenzierungen und fullUrl in FHIR-Bundles

Vorgaben für die Validierung von FHIR-Objekten sind im IG [TI-Common Validierung] beschrieben.

funkt. Eignung: Konformitätsbestätigung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Konformitätsbestätigung Clientsysteme des TI-Flow-Fachdienstes MÜSSEN bei der Erstellung einer FHIR-Ressource die ID der fullURL (Bundle.entry.fullurl) der Ressource auf die ID der Ressource (Bundle.entry.resource.id) setzen, sofern das http(s)-Schema verwendet wird. funkt. Eignung: Konformitätsbestätigung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Konformitätsbestätigung Clientsysteme des TI-Flow-Fachdienstes MÜSSEN bei der Erstellung einer FHIR-Ressource sicherstellen, dass die fullURL (Bundle.entry.fullUrl) entweder im [Format http-Schema] oder im [Format urn:uuid-Schema] vorliegt. funkt. Eignung: Konformitätsbestätigung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Herstellererklärung funkt. Eignung: Test Produkt/FA funkt. Eignung: Konformitätsbestätigung Der TI-Flow-Fachdienst und Clientsystem des TI-Flow-Fachdienstes MÜSSEN alle generierten FHIR-Ressourcen mit der zweistelligen Versionsnummer (major.minor) gemäß [FHIR datatypes canonical] im Feld Ressource.meta.profile kennzeichnen.

Validierung von Extensions

funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst MUSS bei der Validierung einer FHIR-Ressource sicherstellen, dass keine Extension vorhanden ist, die an einer nicht im FHIR-Profil spezifizierten Stelle verwendet wird. Sollte eine solche Extension gefunden werden, gilt der Datensatz als ungültig. In diesem Fall ist die Operation mit dem folgenden Fehler:
HTTP-Code 400 - Bad Request
Severity error
Code invalid
Details Code SVC_VALIDATION_FAILED
Details Text FHIR Profile Validation Failed
abzubrechen.
funkt. Eignung: Test Produkt/FA Der TI-Flow-Fachdienst und Clientsysteme des TI-Flow-Fachdienstes MÜSSEN sicherstellen, dass bei der Erstellung von Datensätzen Extensions nur an den Stellen verwendet werden, an denen sie im FHIR-Profil ausdrücklich definiert sind.