Konvertieren von Daten in FHIR für die Azure-API für FHIR
Wichtig
Azure API for FHIR wird am 30. September 2026 eingestellt. Folgen Sie den 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
vier 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 (Exportieren, Transformieren, Laden) für die Konvertierung von Rohdaten aus dem Gesundheitswesen aus älteren Formaten in das FHIR-Format verwendet werden. Es handelt sich jedoch nicht selbst um eine ETL-Pipeline. 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, Durchführen von $convert-data
-API-Aufrufen, Vor-/Nachbearbeitung von Daten, Datenanreicherung 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 mit https://<<FHIR service base URL>>/$convert-data
API-Aufrufe an den Server senden, um Ihre Daten in FHIR zu konvertieren.
Parameterressource
$convert-data
akzeptiert eine Parameter-Ressource im Anforderungstext, 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. Im Folgenden 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-Ressource, z. B. Name, „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 im FHIR R4-Standard bereitstellen. Einige der STU3-Ressourcen wurden in R4 umbenannt oder 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. Anstelle von Standardvorlagen stehen Ihnen einige Beispielvorlagen zur Verfügung, 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.
Die Standardvorlagen werden lediglich bereitgestellt, um Ihnen den Einstieg einfacher zu machen. Sie werden jedoch möglicherweise im Zuge einer aktualisierten Version der Azure API for FHIR aktualisiert. Sie müssen das Konvertierungsverhalten überprüfen und Ihre eigene Kopie der Vorlagen in einem Azure Container Registry-Register hosten und bei der Azure API for FHIR registrieren, um sie in Ihren API-Aufrufen zu verwenden. Dies ist für ein konsistentes Datenkonvertierungsverhalten in verschiedenen Versionen der Azure API for FHIR erforderlich.
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:
- Pushen Sie die Vorlagen in Ihre Azure Container Registry-Instanz.
- Aktivieren Sie die verwaltete Identität für Ihre Azure API for FHIR-Instanz.
- Gewähren Sie ACR-Zugriff auf die verwaltete Identität von Azure API for FHIR.
- Registrieren Sie die ACR-Server in Azure API for FHIR.
- 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.
Gewähren von ACR-Zugriff auf Azure API for FHIR
Navigieren Sie zum Blatt Zugriffssteuerung (IAM).
Wählen Sie Hinzufügen und dann Rollenzuweisung hinzufügen aus, um die Seite „Rollenzuweisung hinzufügen“ zu öffnen.
Weisen Sie die Rolle AcrPull zu.
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 diesen 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 Storage-Konto aus.
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 folgenden Tabelle 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 obigen 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 $convert-data
-API auf, und geben Sie dabei im templateCollectionReference-Parameter 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
Hinweis
FHIR® ist eine eingetragene Marke von HL7 und wird mit Genehmigung von HL7 verwendet.