Share via


Übersicht über die FHIR-Zielzuordnungen des Medizintechnikdiensts

Dieser Artikel enthält eine Übersicht über die FHIR®-Zielzuordnungen des Medizintechnikdiensts.

Der Medizintechnikdienst erfordert zwei Arten von JSON-Zuordnungen, die Ihrem Medizintechnikdienst über das Azure-Portal oder die Azure Resource Manager-API hinzugefügt werden. Die Gerätezuordnung ist der erste Typ und steuert die Zuordnungswerte in den Gerätedaten, die an den Medizintechnikdienst an ein internes, normalisiertes Datenobjekt gesendet werden. Die Gerätezuordnung enthält Ausdrücke, die der Medizintechnikdienst zum Extrahieren von Typen, Geräte-IDs, Messdatumszeit und Messwert(n) verwendet. Die FHIR-Zielzuordnung ist der zweite Typ und steuert, wie die normalisierten Daten FHIR-Beobachtungen zugeordnet werden.

Hinweis

Die Geräte- und FHIR-Zielzuordnungen werden jedes Mal neu ausgewertet, wenn eine Gerätenachricht verarbeitet wird. Alle Aktualisierungen einer der Zuordnungen werden sofort wirksam.

Grundlagen der FHIR-Zielzuordnung

Die Zielzuordnung von FHIR steuert, wie die normalisierten Daten, die aus einer Gerätenachricht extrahiert wurden, einer FHIR-Beobachtung zugeordnet werden.

  • Sollte eine Observation-Ressource für einen bestimmten Zeitpunkt oder über einen Zeitraum von einer Stunde erstellt werden?
  • Welche Codes sollen der Ressource hinzugefügt werden?
  • Soll der Wert als SampledData oder Quantity dargestellt werden?

Diese Datentypen sind alle Optionen der FHIR-Zielzuordnungskonfigurationssteuerelemente.

Sobald Gerätedaten in ein normalisiertes Datenmodell umgewandelt wurden, werden die normalisierten Daten für die Transformation in eine FHIR-Beobachtung erfasst. Wenn der Beobachtungstyp SampledData lautet, werden die Daten nach Gerätebezeichner, Messtyp und Zeitraum gruppiert (der Zeitraum kann entweder 1 Stunde oder 24 Stunden betragen). Die Ausgabe dieser Gruppierung wird zur Konvertierung in eine einzelne FHIR-Beobachtung gesendet, die den Zeitraum für diesen Datentyp darstellt. Bei anderen Beobachtungstypen (Quantity, CodeableConcept und String) werden Daten nicht gruppiert, sondern jede Messung wird in eine einzelne Beobachtung transformiert, die einen bestimmten Zeitpunkt darstellt.

Tipp

Weitere Informationen dazu, wie der Medizintechnikdienst Gerätenachrichtendaten zur Persistenz im FHIR-Dienst in FHIR-Beobachtungen verarbeitet, finden Sie in der Übersicht über die Verarbeitungsstufen von Gerätenachrichten des Medizintechnikdiensts.

Dieses Diagramm zeigt, was während der Transformationsphase innerhalb des Medizintechnikdiensts geschieht.

Diagram example of the MedTech service device message transformation stage.

Hinweis

Die FHIR-Beobachtung in diesem Diagramm ist nicht die vollständige Ressource. Siehe Beispiel in dieser Übersicht für die gesamte FHIR-Beobachtung.

CollectionFhir

CollectionFhir ist der Stammvorlagentyp, der von der FHIR-Zielzuordnung des Medizintechnikdiensts verwendet wird. CollectionFhir ist eine Liste aller Vorlagen, die während der Transformationsphase verwendet werden. Sie können eine oder mehrere Vorlagen in CollectionFhir definieren, wobei jede normalisierte Nachricht für alle Vorlagen ausgewertet wird.

Diagram showing MedTech service FHIR destination mapping template and code architecture.

CodeValueFhir

CodeValueFhir ist derzeit die einzige Vorlage, die in der FHIR-Zielzuordnung unterstützt wird. Damit können Sie Codes, den tatsächlichen Zeitraum und den Beobachtungswert definieren. Mehrere Werttypen werden unterstützt: SampledData, CodeableConcept, Quantity und String. Neben diesen konfigurierbaren Werten werden der Bezeichner für die Observation-Ressource und die Verknüpfung mit den richtigen Device- und Patient-Ressourcen automatisch verarbeitet.

Wichtig

Der Lösungstyp gibt an, wie der Medizintechnikdienst Gerätedaten Geräteressourcen und Patientenressourcen zuordnet. Der Medizintechnikdienst liest Geräte- und Patientenressourcen aus dem FHIR-Dienst mithilfe von Geräte-IDs und Patienten-IDs. Wenn ein Untersuchungsbezeichner angegeben und aus der Gerätedatennutzlast extrahiert wird, wird er mit der Beobachtung verknüpft, wenn eine Untersuchung im FHIR-Dienst mit diesem Bezeichner vorhanden ist. Wenn der Untersuchungsbezeichner erfolgreich normalisiert ist, aber keine FHIR-Untersuchung mit diesem Bezeichner vorhanden ist, wird eine FhirResourceNotFound-Ausnahme ausgelöst. Weitere Informationen zum Konfigurieren des Medizintechnikdienst-Auflösungstyps finden Sie auf der Registerkarte „Ziel konfigurieren“.

Element BESCHREIBUNG Erforderlich
typeName Der Typ der Messung, an die diese Vorlage gebunden werden soll. Hinweis: Es muss mindestens eine Gerätezuordnungsvorlage mit diesem selben typeName vorhanden sein. Das typeName-Element wird verwendet, um eine FHIR-Zielzuordnungsvorlage mit einer oder mehreren Gerätezuordnungsvorlagen zu verknüpfen. Gerätezuordnungsvorlagen mit demselben typeName-Element generieren normalisierte Daten, die mit einer FHIR-Zielzuordnungsvorlage ausgewertet werden, die denselben typeName hat. True
periodInterval Der Zeitraum, für den die erstellte Beobachtung gelten soll. Unterstützte Werte sind 0 (sofort), 60 (eine Stunde), 1440 (ein Tag). True, wenn der Beobachtungstyp „SampledData“ ist; wird für andere Beobachtungstypen ignoriert.
category Eine beliebige Anzahl von CodeableConcept-Elementen, um den Typ der erstellten Beobachtung zu klassifizieren. False
Codes Mindestens ein Coding-Element, das auf die erstellte Beobachtung angewendet werden soll True
codes[].code Der Code für eine Codierung im codes-Element. True
codes[].system Das System für eine Codierung im codes-Element. False
codes[].display Die Anzeige für eine Codierung im codes-Element. False
value Der Wert, der extrahiert und in der Beobachtung dargestellt werden soll. Weitere Informationen zu den Elementen, die das value-Element enthält, finden Sie unter Werttypen. True, wenn das components-Element nicht verwendet wird (es sei denn, der Beobachtungstyp ist CodebleConcept, in diesem Fall ist dieses Element nicht nur „nicht erforderlich“ sondern auch ignoriert).
components Mindestens eine Komponente, die bei der Beobachtung erstellt werden soll True, wenn das value-Element stattdessen nicht verwendet wird.
components[].codes Mindestens ein Coding-Element, das auf die Komponente angewendet werden soll False
components[].value Der Wert, der extrahiert und in der Komponente dargestellt werden soll. Weitere Informationen zu den Elementen, die das components[].value-Element enthält, finden Sie unter Werttypen. True, wenn das components-Element verwendet wird (es sei denn, der Beobachtungstyp ist CodebleConcept, in diesem Fall ist dieses Element nicht nur „nicht erforderlich“, sondern auch ignoriert).

Werttypen

Das value-Element aller CodeValueFhir-Vorlagen enthält die folgenden Elemente:

Element BESCHREIBUNG Erforderlich
valueType Typ des Werts. Dieser Wert wäre je nach Werttyp „SampledData“, „Quantity“, „CodeableConcept“ oder „String“. True
valueName Name des Werts. True, es sei denn valueType ist CodeableConcept.

Diese Werttypen werden in der Medizintechnikdienst-FHIR-Zielzuordnung unterstützt:

SampledData

Stellt den SampledData-FHIR-Datentyp dar. Beobachtungsmessungen werden ab einem bestimmten Zeitpunkt in einen Wertestream geschrieben und anschließend während des definierten Zeitraums inkrementiert. Wenn kein Wert vorhanden ist, wird ein E in den Datenstrom geschrieben. Wenn aufgrund des Zeitraums zwei oder mehr Werte die gleiche Position im Datenstrom belegen, wird der neuere Wert herangezogen. Die gleiche Logik kommt zum Einsatz, wenn eine SampledData verwendende Beobachtung aktualisiert wird. Für eine CodeValueFhir-Vorlage mit dem SampledData-Werttyp enthält das value-Element der Vorlage die folgenden Elemente:

Element BESCHREIBUNG Erforderlich
defaultPeriod Der zu verwendende Standardzeitraum in Millisekunden True
unit Die Einheit, die für den Ursprung von SampledData festgelegt werden soll True

Menge

Stellt den FHIR-Datentyp Quantity dar. Dieser Typ erstellt eine einzelne Zeitpunkt-Beobachtung. Wenn ein neuer Wert eingeht, der denselben Gerätebezeichner, Messtyp und Zeitstempel enthält, wird die vorherige Beobachtung auf den neuen Wert aktualisiert. Für eine CodeValueFhir-Vorlage mit dem Werttyp „Menge" enthält das value-Element der Vorlage die folgenden Elemente:

Element BESCHREIBUNG Erforderlich
unit Darstellung der Einheit False
code Codierte Version der Einheit False
system Das System, das die codierte Form definiert False

CodeableConcept

Stellt den FHIR-Datentyp CodeableConcept dar. Der Wert im normalisierten Datenmodell wird nicht verwendet, und stattdessen wird beim Empfang dieser Art von Daten eine Beobachtung mit einem bestimmten Code erstellt, der an einem bestimmten Zeitpunkt aufgezeichnet wurde. Für eine CodeValueFhir-Vorlage mit dem CodeableConcept-Werttyp enthält das value-Element der Vorlage die folgenden Elemente:

Element BESCHREIBUNG Erforderlich
text Nur-Text-Darstellung False
Codes Mindestens ein Coding-Element, das auf die erstellte Beobachtung angewendet werden soll True
codes[].code Der Code für eine Codierung im codes-Element. True
codes[].system Das System für eine Codierung im codes-Element. False
codes[].display Die Anzeige für eine Codierung im codes-Element. False

String

Stellt den String-FHIR-Datentyp dar. Dieser Typ erstellt eine einzelne Zeitpunkt-Beobachtung. Wenn ein neuer Wert eingeht, der denselben Gerätebezeichner, Messtyp und Zeitstempel enthält, wird die vorherige Beobachtung auf den neuen Wert aktualisiert. Es sind keine anderen Elemente definiert.

Beispiel

Tipp

Sie können den Zuordnungsdebugger des Medizintechnikdiensts verwenden, um Unterstützung beim Erstellen, Aktualisieren und der Problembehandlung des Medizintechnikdienstgeräts und der FHIR-Zielzuordnungen zu erhalten. Mit dem Zuordnungsdebugger können Sie Inlineanpassungen ganz einfach in Echtzeit anzeigen und vornehmen, ohne das Azure-Portal verlassen zu müssen. Der Zuordnungsdebugger kann auch zum Hochladen von Testgerätemeldungen verwendet werden, um zu sehen, wie sie nach der Verarbeitung in normalisierte Nachrichten aussehen und in FHIR-Beobachtungen transformiert werden.

Hinweis

Dieses Beispiel und eine normalisierte Nachricht ist eine Fortsetzung aus der Übersicht über die Medizintechnikdienstgerätezuordnung.

In diesem Beispiel verwenden wir eine normalisierte Nachricht, die heartRate-Daten erfasst:

[
  {
    "type": "heartrate",
    "occurrenceTimeUtc": "2023-03-13T22:46:01.875Z",
    "deviceId": "device01",
    "properties": [
      {
        "name": "hr",
        "value": "78"
      }
    ]
  }
]

Wir verwenden diese FHIR-Zielzuordnung für die Transformationsphase:

{
  "templateType": "CollectionFhir",
  "template": [
    {
      "templateType": "CodeValueFhir",
      "template": {
        "codes": [
          {
            "code": "8867-4",
            "system": "http://loinc.org",
            "display": "Heart rate"
          }
        ],
        "typeName": "heartrate",
        "value": {
          "system": "http://unitsofmeasure.org",
          "code": "count/min",
          "unit": "count/min",
          "valueName": "hr",
          "valueType": "Quantity"
        }
      }
    }
  ]
}

Die resultierende FHIR-Beobachtung sieht nach der Transformationsphase wie folgt aus:

[
  {
    "code": {
      "coding": [
        {
          "system": {
            "value": "http://loinc.org"
          },
          "code": {
            "value": "8867-4"
          },
          "display": {
            "value": "Heart rate"
          }
        }
      ],
      "text": {
        "value": "heartrate"
      }
    },
    "effective": {
      "start": {
        "value": "2023-03-13T22:46:01.8750000Z"
      },
      "end": {
        "value": "2023-03-13T22:46:01.8750000Z"
      }
    },
    "issued": {
      "value": "2023-04-05T21:02:59.1650841+00:00"
    },
    "value": {
      "value": {
        "value": 78
      },
      "unit": {
        "value": "count/min"
      },
      "system": {
        "value": "http://unitsofmeasure.org"
      },
      "code": {
        "value": "count/min"
      }
    }
  }
]

Tipp

Hilfe beim Beheben allgemeiner Medizintechnikdienstbereitstellungsfehler finden Sie unter Problembehandlung bei Medizintechnikdienstbereitstellungsfehlern.

Hilfe beim Beheben von Medizintechnikdienstfehlern finden Sie unter Beheben von Fehlern mithilfe der Medizintechnikdienstprotokolle.

Nächste Schritte

Übersicht über die Medizintechnikdienstgerätezuordnung

Verwenden von CalculatedContent-Vorlagen mit der Medizintechnikdienstgerätezuordnung

Verwenden von IotJsonPathContent-Vorlagen mit der Medizintechnikdienstgerätezuordnung

Verwenden von benutzerdefinierte Funktionen mit der Medizintechnikdienstgerätezuordnung

Übersicht über die Beispiele für szenariobasierte Zuordnungen des Medizintechnikdiensts

Hinweis

FHIR® ist eine eingetragene Marke von HL7 und wird mit Genehmigung von HL7 verwendet.