ISiKSubscription (Subscription)
ISiK Subscription
ISiK Subscription
Motivation
Subscription ist eine FHIR Ressource, um als Client-System Benachrichtigungen über Events auf dem FHIR Server anzufragen. Der Subscription Mechanismus in FHIR R4 ist nicht geeignet, um alle relevanten Events (hier im Speziellen das Mergen von Patienten) zu unterstützen. Daher basiert das ISiK Subscription-Profil auf dem Subscriptions R5 Backport Profil von HL7.
Um als Subsystem über ein Subsription-Event informiert zu werden, KANN der FHIR Subscription Mechanismus gemäß des Subscriptions R5 Backport IGs von HL7 genutzt werden.
Kompatibilität
Das Profil ISiKSubscription basiert auf dem Backport-Subscription Profil. Der SubscriptionStatus, sowie das Subscription Notification Bundle werden unverändert direkt aus dem Subscriptions R5 Backport IG genutzt.
Hinweise zu Inkompatibilitäten können über die Portalseite gemeldet werden.
Bestätigungsrelevanz
Verbindlichkeit | SHALL |
---|
Metadaten
Canonical | https://gematik.de/fhir/isik/StructureDefinition/ISiKSubscription |
---|---|
Status | active |
Version | 5.0.0 |
Basis | http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-subscription |
Inhalt
ISiKSubscription (Subscription) | http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-subscription | ||
id | S | ||
meta | |||
versionId | |||
lastUpdated | |||
status | S | ||
reason | S | ||
criteria | Binding | ||
filterCriteria | |||
value[x] | S | ||
channel | S | ||
heartbeatPeriod | S | ||
value[x] | S | ||
type | S | ||
customChannelType | ..0 | ||
endpoint | S | ||
payload | S | Binding | |
content | |||
header | S |
Constraints/Invarianten
Terminology-Bindings
Element | Staerke | ValueSet |
---|---|---|
Subscription.criteria | extensible | https://gematik.de/fhir/isik/ValueSet/ISiKSubscriptionTopicVS |
Subscription.channel.payload | required | https://gematik.de/fhir/isik/ValueSet/FhirMimeTypeVS |
Anmerkungen zu Must-Support-Feldern
Feldname | Kurzbeschreibung | Hinweise |
---|---|---|
Subscription.id | serverseitige, interne ID des Datensatzes | bedingtes Pflichtfeld/bedingtes MS: Alle von einem Server bereitgestellten Ressourcen MÜSSEN über eine |
Subscription.status | Status | Bedeutung: Der Status der Subscription, der den Serverstatus der Subscription angibt.
Neue Subscriptions werden immer mit dem Status |
Subscription.reason | Grund der Subscription | Bedeutung: Beschreibung wieso diese Subscription erstellt wurde. |
Subscription.criteria.extension:filterCriteria.value[x] | ||
Subscription.channel | Kommunikationskanal | Bedeutung: Kommunikationskanal über den die Subscription Benachrichtigungen gesendet werden sollen. |
Subscription.channel.extension:heartbeatPeriod | Heartbeat-Intervall | Bedeutung: Intervall in dem der Server prüft, ob der Kommunikationskanal noch aktiv ist. |
Subscription.channel.extension:heartbeatPeriod.value[x] | ||
Subscription.channel.type | Typ des Kommunikationskanals | Bedeutung: Der Typ des Kommunikationskanals, über den Subscription-Benachrichtigungen gesendet werden sollen. |
Subscription.channel.endpoint | Endpunkt | Bedeutung: Adresse des Kommunikationskanals/ Endpunkts, an den Subscription-Benachrichtigungen gesendet werden sollen. Dies ist nur für rest-hook Subscriptions relevant. |
Subscription.channel.payload | Format der Nutzdaten | Bedeutung: Format in dem Subscription Notifications versendet werden sollen (JSON oder XML). |
Subscription.channel.header | Falls eine REST-Enpunkt einen Authorization-Header benötigt, kann dieser hier gesetzt werden | Bedeutung: http-Header welcher dazu genutzt werden kann einen Authorization-header zu setzen. Dies ist nur für rest-hook Subscriptions relevant. |
Interaktionen
Interaktion | Verbindlichkeit |
---|---|
read | SHALL |
create | SHALL |
update | SHALL |
delete | SHALL |
search-type | SHALL |
Parameter | Typ | Verbindlichkeit | Hinweise |
---|---|---|---|
_id | token | SHALL | Beispiel:
|
_tag | token | SHALL | Beispiel:
|
_count | number | SHALL | Beispiel:
|
_has | string | MAY | Beispiel: Suche nach allen Patienten, die eine Observation mit dem Code '1234-5' haben
|
criteria | string | SHALL | Beispiel: |
status | token | SHALL | Beispiel: |
url | uri | SHALL | Beispiel: |
(Reverse-)Include
Name | Spezifikation | Verbindlichkeit |
---|---|---|
status | http://hl7.org/fhir/uv/subscriptions-backport/OperationDefinition/backport-subscription-status | SHALL |
events | http://hl7.org/fhir/uv/subscriptions-backport/OperationDefinition/backport-subscription-events | SHALL |
Beispiele
Subscription |
id : PatientMergeSubscriptionExample |
meta |
profile : https://gematik.de/fhir/isik/StructureDefinition/ISiKSubscription |
status : requested |
reason : Patient merge subscription |
criteria : https://gematik.de/fhir/isik/SubscriptionTopic/patient-merge |
channel |
type : rest-hook |
endpoint : http://localhost:8081/fhir/Bundle |
payload : application/fhir+json |
extension |
url : http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-payload-content |
value : full-resource |
header : Authorization: Bearer xxxxxxxxxx |