Teilen über


Konvertieren von Daten in FHIR für die Azure-API für FHIR

Wichtig

Azure API for FHIR wird am 30. September 2026 eingestellt. Befolgen Sie die Migrationsstrategien, um bis zu diesem Datum zum Azure Health Data Services-FHIR-Dienst zu wechseln. Aufgrund der Einstellung von Azure API for FHIR werden neue Bereitstellungen ab dem 1. April 2025 nicht zugelassen. Der Azure Health Data Services-FHIR-Dienst ist die weiterentwickelte Version der Azure-API für FHIR, mit der Kundschaft FHIR-, DICOM- und Medizintechnikdienste mit Integrationen in andere Azure-Dienste verwalten kann.

Der benutzerdefinierter Endpunkt $convert-data im FHIR-Dienst ist für die Konvertierung verschiedener Datentypen in FHIR vorgesehen. Er verwendet die Liquid-Vorlagen-Engine und die Vorlagen aus dem Projekt FHIR Converter als Standardvorlagen. Diese Konvertierungsvorlagen können nach Bedarf angepasst werden.

Derzeit unterstützt der benutzerdefinierte Endpunkt $convert-data four-Typen der Datenkonvertierung:

Ursprüngliches Datenformat Zieldatenformat
C-CDA FHIR
HL7v2 FHIR
JSON FHIR
FHIR STU3 FHIR R4

Hinweis

Der Endpunkt $convert-data kann als Komponente in einer ETL-Pipeline für die Konvertierung von Rohdaten aus Gesundheitswesen aus älteren Formaten in das FHIR-Format verwendet werden. Es handelt sich jedoch nicht um eine ETL-Pipeline an sich. Es wird empfohlen, ein ETL-Modul wie Logic Apps oder Azure Data Factory für einen vollständigen Workflow zu verwenden, um Ihre FHIR-Daten so vorzubereiten, dass sie auf dem FHIR-Server persistent sind. Der Workflow kann folgendes umfassen: Lesen und Erfassung von Daten, Datenüberprüfung, Erstellen von $convert-data-API-Aufrufen, Vor-/Nachbearbeitung von Daten, Datenerweiterung und Datendeduplizierung.

Verwenden des Endpunkts „$convert-data“

Der $convert-data-Vorgang ist in den FHIR-Dienst integriert und wird als Teil des Diensts ausgeführt. Nach der Aktivierung von $convert-data auf Ihrem Server können Sie API-Aufrufe an den Server senden, um Ihre Daten in FHIR zu konvertieren: https://<<FHIR service base URL>>/$convert-data

Parameterressource

Von „$convert-data“ wird eine Ressource vom Typ Parameter im Anforderungstext akzeptiert, wie in der folgenden Tabelle beschrieben: Fügen Sie folgende Parameter in den Anforderungstext für den API-Aufruf ein:

Parametername Beschreibung Zulässige Werte
inputData Die zu konvertierenden Daten. Für Hl7v2: Zeichenfolge
Für Ccda: XML
Für Json: JSON
Für FHIR STU3: JSON
inputDataType Der Datentyp der Eingabe. HL7v2, Ccda, Json, Fhir
templateCollectionReference Verweisen Sie auf eine OCI-Image-Vorlagensammlung in Azure Container Registry (ACR). Es ist das Image, das Liquid-Vorlagen enthält, die für die Konvertierung verwendet werden sollen. Dabei kann entweder auf die Standardvorlagen oder auf ein benutzerdefiniertes Vorlagenimage verwiesen werden, das im FHIR-Dienst registriert ist. Weiter unten erfahren Sie, wie Sie die Vorlagen anpassen, in ACR hosten und beim FHIR-Dienst registrieren. Für Standard-/Beispiel-Vorlagen:
HL7v2-Vorlagen:
microsofthealth/fhirconverter:default
microsofthealth/hl7v2templates:default
C-CDA-Vorlagen:
microsofthealth/ccdatemplates:default
JSON-Vorlagen:
microsofthealth/jsontemplates:default
FHIR STU3-Vorlagen:
microsofthealth/stu3tor4templates:default

Für benutzerdefinierte Vorlagen:
<RegistryServer>/<imageName>@<imageDigest>, <RegistryServer>/<imageName>:<imageTag>
rootTemplate Die Stammvorlage, die beim Transformieren der Daten verwendet werden soll. Für HL7v2:
„ADT_A01“, „ADT_A02“, „ADT_A03“, „ADT_A04“, „ADT_A05“, „ADT_A08“, „ADT_A11“, „ADT_A13“, „ADT_A14“, „ADT_A15“, „ADT_A16“, „ADT_A25“, „ADT_A26“, „ADT_A27“, „ADT_A28“, „ADT_A29“, „ADT_A31“, „ADT_A47“, „ADT_A60“, „OML_O21“, „ORU_R01“, „ORM_O01“, „VXU_V04“, „SIU_S12“, „SIU_S13“, „SIU_S14“, „SIU_S15“, „SIU_S16“, „SIU_S17“, „SIU_S26“, „MDM_T01“, „MDM_T02“

Für C-CDA:
„CCD“, „ConsultationNote“, „DischargeSummary“, „HistoryandPhysical“, „OperativeNote“, „ProcedureNote“, „ProgressNote“, „ReferralNote“, „TransferSummary“

Für JSON:
„ExamplePatient“, „Stu3ChargeItem“

FHIR STU3“:
STU3-Ressourcenname, z. B. „Patient“, „Beobachtung“, „Organisation“.

Hinweis

„FHIR STU3 zu R4“-Vorlagen sind „diff“-Liquid-Vorlagen, die ausschließlich Zuordnungen von Feldunterschieden zwischen einer STU3-Ressource und der entsprechenden Ressource in der FHIR R4-Spezifikation bereitstellen. Einige der STU3-Ressourcen wurden umbenannt oder aus R4 entfernt. Weitere Informationen finden Sie unter Ressourcenunterschiede und Einschränkungen für STU3-zu R4-Konvertierung.

Hinweis

JSON-Vorlagen sind Beispielvorlagen für die Verwendung, nicht „Standardvorlagen“, die vordefinierten JSON-Nachrichtentypen entsprechen. JSON verfügt nicht über standardisierte Nachrichtentypen, im Gegensatz zu HL7v2-Nachrichten oder C-CDA-Dokumenten. Daher stellen wir Ihnen anstelle von Standardvorlagen einige Beispielvorlagen bereit, die Sie als Startleitfaden für Ihre eigenen angepassten Vorlagen verwenden können.

Warnung

Standardvorlagen werden unter der MIT-Lizenz veröffentlicht und nicht vom Microsoft-Support unterstützt.

Standardvorlagen werden lediglich bereitgestellt, um den Einstieg zu erleichtern. Sie werden jedoch möglicherweise im Zuge einer aktualisierten Version der Azure API for FHIR aktualisiert. Damit die Datenkonvertierung über verschiedene Versionen von Azure API for FHIR hinweg konsistent bleibt, müssen Sie eine eigene Kopie der Vorlagen in einer Azure Container Registry-Instanz hosten, sie bei Azure API for FHIR registrieren und wie weiter unten beschrieben in Ihren API-Aufrufen verwenden.

Beispiel-Anfrage

{
    "resourceType": "Parameters",
    "parameter": [
        {
            "name": "inputData",
            "valueString": "MSH|^~\\&|SIMHOSP|SFAC|RAPP|RFAC|20200508131015||ADT^A01|517|T|2.3|||AL||44|ASCII\nEVN|A01|20200508131015|||C005^Whittingham^Sylvia^^^Dr^^^DRNBR^D^^^ORGDR|\nPID|1|3735064194^^^SIMULATOR MRN^MRN|3735064194^^^SIMULATOR MRN^MRN~2021051528^^^NHSNBR^NHSNMBR||Kinmonth^Joanna^Chelsea^^Ms^^D||19870624000000|F|||89 Transaction House^Handmaiden Street^Wembley^^FV75 4GJ^GBR^HOME||020 3614 5541^PRN|||||||||C^White - Other^^^||||||||\nPD1|||FAMILY PRACTICE^^12345|\nPV1|1|I|OtherWard^MainRoom^Bed 183^Simulated Hospital^^BED^Main Building^4|28b|||C005^Whittingham^Sylvia^^^Dr^^^DRNBR^D^^^ORGDR|||CAR|||||||||16094728916771313876^^^^visitid||||||||||||||||||||||ARRIVED|||20200508131015||"
        },
        {
            "name": "inputDataType",
            "valueString": "Hl7v2"
        },
        {
            "name": "templateCollectionReference",
            "valueString": "microsofthealth/fhirconverter:default"
        },
        {
            "name": "rootTemplate",
            "valueString": "ADT_A01"
        }
    ]
}

Beispiel für eine Antwort

{
  "resourceType": "Bundle",
  "type": "transaction",
  "entry": [
    {
      "fullUrl": "urn:uuid:9d697ec3-48c3-3e17-db6a-29a1765e22c6",
      "resource": {
        "resourceType": "Patient",
        "id": "9d697ec3-48c3-3e17-db6a-29a1765e22c6",
        ...
        ...
      "request": {
        "method": "PUT",
        "url": "Location/50becdb5-ff56-56c6-40a1-6d554dca80f0"
      }
    }
  ]
}

Anpassen von Projekt- und Elementvorlagen

Sie können die Erweiterung „FHIR Converter“ für Visual Studio Code verwenden, um die Vorlagen gemäß Ihren Anforderungen anzupassen. Die Erweiterung bietet eine interaktive Bearbeitungsumgebung und ermöglicht das mühelose Herunterladen von Vorlagen und Beispieldaten, die von Microsoft veröffentlicht wurden. Weitere Details finden Sie in der Dokumentation zur Erweiterung.

Hinweis

Die FHIR Converter-Erweiterung für Visual Studio Code ist für HL7v2-, C-CDA- und JSON Liquid-Vorlagen verfügbar. Vorlagen für FHIR STU3 zu R4 Liquid werden derzeit nicht unterstützt.

Hosten und Verwenden von Vorlagen

Es wird empfohlen, Ihre eigene Vorlagenkopien in ACR zu hosten. Führen Sie die vier folgenden Schritte aus, um Ihre eigenen Vorlagenkopien zu hosten und im Vorgang „$convert-data“ zu verwenden:

  1. Pushen Sie die Vorlagen in Ihre Azure Container Registry-Instanz.
  2. Aktivieren Sie die verwaltete Identität für Ihre Azure API for FHIR-Instanz.
  3. Gewähren Sie ACR-Zugriff auf die verwaltete Identität von Azure API for FHIR.
  4. Registrieren Sie die ACR-Server in Azure API for FHIR.
  5. Optional können Sie die ACR-Firewall für den sicheren Zugriff konfigurieren.

Pushen von Vorlagen an Azure Container Registry

Nach dem Erstellen einer ACR-Instanz, können Sie den Befehl FHIR Converter: Push Templates in der Erweiterung „FHIR Converter“ verwenden, um die angepassten Vorlagen an ACR zu pushen. Alternativ können Sie auch das CLI-Tool für die Vorlagenverwaltung verwenden.

Aktivieren der verwalteten Identität für Azure API for FHIR

Navigieren Sie im Azure-Portal zu Ihrer Instanz des Azure API for FHIR-Diensts, und wählen Sie dann das Blatt Identität aus. Ändern Sie den Status in Ein, um die verwaltete Identität in Azure API for FHIR zu aktivieren.

Screenshot: Aktivierung der verwalteten Identität.

Gewähren von ACR-Zugriff auf Azure API for FHIR

  1. Navigieren Sie zum Blatt Zugriffssteuerung (IAM).

  2. Wählen Sie Hinzufügen und dann Rollenzuweisung hinzufügen aus, um die Seite „Rollenzuweisung hinzufügen“ zu öffnen.

  3. Weisen Sie die Rolle AcrPull zu.

    Screenshot: Seite „Rollenzuweisung hinzufügen“.

Weitere Informationen zum Zuweisen von Rollen im Azure-Portal finden Sie unter Integrierte Rollen für die rollenbasierte Zugriffssteuerung in Azure.

Registrieren der ACR-Server in Azure API for FHIR

Sie können den ACR-Server über das Azure-Portal oder die CLI registrieren.

Registrieren des ACR-Servers mithilfe des Azure-Portals

Navigieren Sie zum Blatt Artefakte unter Datentransformation in Ihrer Azure-API for FHIR-Instanz. Die Liste der aktuell registrierten ACR-Server wird angezeigt. Wählen Sie Hinzufügen aus, und wählen Sie dann im Dropdownmenü Ihren Registrierungsserver aus. Sie müssen Speichern auswählen, damit die Registrierung wirksam wird. Es kann einige Minuten dauern, bis die Änderung angewendet und die Instanz neu gestartet wird.

Registrieren des ACR-Servers mithilfe der CLI

In Azure API for FHIR können bis zu 20 ACR-Server registriert werden.

Installieren Sie bei Bedarf die Azure Health Data Services-CLI über Azure PowerShell, falls erforderlich:

az extension add -n healthcareapis

Registrieren Sie die ACR-Server bei Azure API for FHIR, wie in den folgenden Beispielen gezeigt:

Registrieren eines einzelnen ACR-Servers
az healthcareapis acr add --login-servers "fhiracr2021.azurecr.io" --resource-group fhir-test --resource-name fhirtest2021
Registrieren mehrerer ACR-Server
az healthcareapis acr add --login-servers "fhiracr2021.azurecr.io fhiracr2020.azurecr.io" --resource-group fhir-test --resource-name fhirtest2021

Konfigurieren einer ACR-Firewall

Wählen Sie im Portal Netzwerk für das Azure-Speicherkonto aus.

 Screenshot der Containerregistrierung.

Klicken Sie auf Ausgewählte Netzwerke.

Geben Sie im Abschnitt Firewall die IP-Adresse im Feld Adressbereich an. Hiermit werden IP-Adressbereiche hinzugefügt, um Zugriff vom Internet oder von Ihren lokalen Netzwerken aus zu gewähren.

Die IP-Adresse für die Azure-Region, in der der Dienst Azure API for FHIR bereitgestellt wird, können Sie der Tabelle unten entnehmen.

Azure-Region Öffentliche IP-Adresse
Australien (Osten) 20.53.47.210
Brasilien, Süden 191.238.72.227
Kanada, Mitte 20.48.197.161
Indien, Mitte 20.192.47.66
East US 20.62.134.242, 20.62.134.244, 20.62.134.245
USA (Ost) 2 20.62.60.115, 20.62.60.116, 20.62.60.117
Frankreich, Mitte 51.138.211.19
Deutschland, Norden 51.116.60.240
Deutschland, Westen-Mitte 20.52.88.224
Japan, Osten 20.191.167.146
Japan, Westen 20.189.228.225
Korea, Mitte 20.194.75.193
USA Nord Mitte 52.162.111.130, 20.51.0.209
Nordeuropa 52.146.137.179
Katar, Mitte 20.21.36.225
Südafrika, Norden 102.133.220.199
USA Süd Mitte 20.65.134.83
Asien, Südosten 20.195.67.208
Schweden, Mitte 51.12.28.100
Schweiz, Norden 51.107.247.97
UK, Süden 51.143.213.211
UK, Westen 51.140.210.86
USA, Westen-Mitte 13.71.199.119
Europa, Westen 20.61.103.243, 20.61.103.244
USA, Westen 2 20.51.13.80, 20.51.13.84, 20.51.13.85
USA, Westen 3 20.150.245.165

Hinweis

Die vorstehenden Schritte ähneln den Konfigurationsschritten, die im Dokument „Exportieren von FHIR-Daten“ beschrieben werden. Weitere Informationen finden Sie unter Sicherer Export in Azure Storage.

Verifizieren

Rufen Sie die API „$convert-data“ auf, und geben Sie dabei im Parameter „templateCollectionReference“ Ihren Vorlagenverweis an.

<RegistryServer>/<imageName>@<imageDigest>

Nächste Schritte

In diesem Artikel haben Sie mehr über Datenkonvertierung für die Azure API for FHIR erfahren. Weitere Informationen zu verwandten GitHub-Projekten für Azure-API for FHIR finden Sie unter

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