Převod dat na FHIR pro rozhraní Azure API for FHIR
Důležité
Rozhraní Azure API for FHIR bude vyřazeno 30. září 2026. Postupujte podle strategií migrace a do tohoto data přejděte na službu FHIR® služby Azure Health Data Services. Vzhledem k vyřazení rozhraní Azure API for FHIR nebudou nová nasazení od 1. dubna 2025 povolena. Služba FHIR služby Azure Health Data Services je vyvinutá verze rozhraní Azure API for FHIR, která zákazníkům umožňuje spravovat služby FHIR, DICOM a MedTech s integrací do jiných služeb Azure.
Vlastní $convert-data
koncový bod ve službě FHIR je určený pro převod dat z různých datových typů na FHIR®. Používá modul šablon Liquid a šablony z projektu FHIR Converter jako výchozí šablony. Tyto šablony převodu si můžete přizpůsobit podle potřeby.
$convert-data
Vlastní koncový bod v současné době podporuje čtyři typy převodu dat:
Formát počátečních dat | Formát cílových dat |
---|---|
C-CDA | FHIR |
HL7v2 | FHIR |
JSON | FHIR |
FHIR STU3 | FHIR R4 |
Poznámka:
Koncový $convert-data
bod lze použít jako součást v rámci kanálu exportu, transformace a načítání (ETL) pro převod nezpracovaných zdravotnických dat ze starších formátů do formátu FHIR. Nejedná se však o kanál ETL. Doporučujeme použít modul ETL, jako je Logic Apps nebo Azure Data Factory, k úplnému pracovnímu postupu při přípravě dat FHIR na zachování dat FHIR na server FHIR. Pracovní postup může zahrnovat: čtení a příjem dat, ověření dat, volání $convert-data
rozhraní API, předběžné zpracování dat nebo následné zpracování, rozšiřování dat a odstranění duplicit dat.
Použití koncového bodu $convert-data
Operace $convert-data
je integrovaná do služby FHIR, která se má spustit jako součást služby. Po povolení $convert-data
na serveru můžete na server volat rozhraní API za účelem převodu dat na FHIR pomocí https://<<FHIR service base URL>>/$convert-data
.
Prostředek parametru
$convert-data
přebírá prostředek parametru v textu požadavku, jak je popsáno v následující tabulce. V textu žádosti o volání rozhraní API byste zahrnuli následující parametry:
Název parametru | Popis | Přípustné hodnoty |
---|---|---|
inputData | Data, která se mají převést. | Pro Hl7v2 : řetězec Pro Ccda : XML Pro Json : JSON Pro FHIR STU3 : JSON |
inputDataType | Datový typ vstupu. | HL7v2 , Ccda , , Json Fhir |
templateCollectionReference | Odkaz na kolekci šablon imagí OCI ve službě Azure Container Registry (ACR) Je to obrázek obsahující šablony Liquid, které se mají použít k převodu. Může to být odkaz buď na výchozí šablony, nebo na vlastní image šablony zaregistrovanou ve službě FHIR. Informace o přizpůsobení šablon, hostování šablon v ACR a registraci do služby FHIR najdete v následujícím článku. | Výchozí /ukázkové šablony: Šablony HL7v2 : microsofthealth/fhirconverter:default microsofthealth/hl7v2templates:default Šablony C-CDA : microsofthealth/ccdatemplates:default Šablony JSON : microsofthealth/jsontemplates:default Šablony FHIR STU3 : microsofthealth/stu3tor4templates:default Pro vlastní šablony: <RegistryServer>/<imageName>@<imageDigest>, <RegistryServer>/<imageName>:<imageTag> |
rootTemplate | Kořenová šablona, která se má použít při transformaci dat. | Pro 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" Pro C-CDA: "CCD", "ConsultationNote", "DischargeSummary", "HistoryandPhysical", "OperativeNote", "ProcedureNote", "ProgressNote", "ReferralNote", "TransferSummary" Pro JSON: "ExamplePatient", "Stu3ChargeItem" FHIR STU3": Zdroj STU3, například Název, Pacient, Pozorování, Organizace. |
Poznámka:
Šablony FHIR STU3 až R4 jsou "rozdílové" šablony Liquid, které poskytují mapování rozdílů v polích pouze mezi prostředkem STU3 a jeho ekvivalentním prostředkem ve standardu FHIR R4. Některé prostředky STU3 se přejmenují nebo odeberou z R4. Projděte si rozdíly mezi prostředky a omezení převodu STU3 na R4.
Poznámka:
Šablony JSON jsou ukázkové šablony pro použití, nikoli výchozí šablony, které dodržují všechny předdefinované typy zpráv JSON. JSON nemá standardizované typy zpráv, na rozdíl od zpráv HL7v2 nebo dokumentů C-CDA. Místo výchozích šablon vám poskytneme několik ukázkových šablon, které můžete použít jako úvodní příručku pro vlastní přizpůsobené šablony.
Upozorňující
Výchozí šablony jsou vydány v rámci licence MIT a nejsou podporovány podpora Microsoftu.
Výchozí šablony jsou k dispozici pouze pro začátek. Můžou se aktualizovat, když aktualizujeme verze rozhraní Azure API for FHIR. Musíte ověřit chování při převodu a hostovat vlastní kopii šablon ve službě Azure Container Registry, zaregistrovat je do rozhraní Azure API for FHIR, abyste je mohli použít ve voláních rozhraní API. To je nezbytné pro konzistentní chování při převodu dat napříč různými verzemi rozhraní Azure API for FHIR.
Ukázkový požadavek
{
"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"
}
]
}
Ukázková odezva
{
"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"
}
}
]
}
Přizpůsobení šablon
Pomocí rozšíření FHIR Converter pro Visual Studio Code můžete přizpůsobit šablony podle svých potřeb. Toto rozšíření poskytuje interaktivní prostředí pro úpravy a usnadňuje stahování šablon publikovaných Microsoftem a ukázkových dat. Další podrobnosti najdete v dokumentaci v rozšíření.
Poznámka:
Rozšíření FHIR Converter pro Visual Studio Code je k dispozici pro šablony HL7v2, C-CDA a JSON Liquid. Šablony FHIR STU3 až R4 Liquid se v současné době nepodporují.
Hostování a používání šablon
Doporučujeme hostovat vlastní kopii šablon v ACR. Při hostování vlastní kopie šablon a použití šablon v $convert-data
operaci se používají čtyři kroky:
- Nasdílejte šablony do služby Azure Container Registry.
- Povolte spravovanou identitu ve vaší instanci Azure API for FHIR.
- Poskytnutí přístupu ACR k spravované identitě Azure API for FHIR
- Zaregistrujte servery ACR v rozhraní Azure API for FHIR.
- Volitelně můžete nakonfigurovat bránu firewall ACR pro zabezpečený přístup.
Nabízené šablony do služby Azure Container Registry
Po vytvoření instance ACR můžete pomocí příkazu FHIR Converter: Push Templates v rozšíření FHIR Converter odeslat přizpůsobené šablony do ACR. Alternativně můžete použít nástroj Rozhraní příkazového řádku pro správu šablon.
Povolení spravované identity ve službě Azure API for FHIR
Na webu Azure Portal přejděte ke své instanci služby Azure API for FHIR a pak vyberte okno Identita. Změňte stav na Zapnuto a povolte spravovanou identitu v rozhraní Azure API for FHIR.
Poskytnutí přístupu ACR k rozhraní Azure API for FHIR
Přejděte do okna Řízení přístupu (IAM).
Vyberte Přidat a potom výběrem možnosti Přidat přiřazení role otevřete stránku Přidat přiřazení role.
Přiřaďte roli AcrPull .
Další informace o přiřazování rolí na webu Azure Portal najdete v tématu Předdefinované role Azure.
Registrace serverů ACR ve službě Azure API for FHIR
Server ACR můžete zaregistrovat pomocí webu Azure Portal nebo pomocí rozhraní příkazového řádku.
Registrace serveru ACR pomocí webu Azure Portal
V části Transformace dat v instanci Azure API for FHIR přejděte do okna Artefakty. Zobrazí se seznam aktuálně registrovaných serverů ACR. V rozevírací nabídce vyberte Přidat a pak vyberte server registru. Aby se registrace projevila, musíte vybrat Uložit . Použití změny a restartování instance může trvat několik minut.
Registrace serveru ACR pomocí rozhraní příkazového řádku
V azure API for FHIR můžete zaregistrovat až 20 serverů ACR.
V případě potřeby nainstalujte rozhraní příkazového řádku služby Azure Health Data Services z Azure PowerShellu:
az extension add -n healthcareapis
Pomocí následujících příkladů zaregistrujte servery acr do rozhraní Azure API for FHIR:
Registrace jednoho serveru ACR
az healthcareapis acr add --login-servers "fhiracr2021.azurecr.io" --resource-group fhir-test --resource-name fhirtest2021
Registrace několika serverů ACR
az healthcareapis acr add --login-servers "fhiracr2021.azurecr.io fhiracr2020.azurecr.io" --resource-group fhir-test --resource-name fhirtest2021
Konfigurace brány firewall ACR
Na portálu vyberte Sítě pro účet úložiště Azure.
Vyberte Vybrané sítě.
V části Brána firewall zadejte IP adresu do pole Rozsah adres. Přidejte rozsahy IP adres pro povolení přístupu z internetu nebo z místních sítí.
V následující tabulce najdete IP adresu oblasti Azure, ve které je zřízená služba Azure API for FHIR.
Oblast Azure | Veřejná IP adresa |
---|---|
Austrálie – východ | 20.53.47.210 |
Brazílie – jih | 191.238.72.227 |
Střední Kanada | 20.48.197.161 |
Indie – střed | 20.192.47.66 |
USA – východ | 20.62.134.242, 20.62.134.244, 20.62.134.245 |
USA – východ 2 | 20.62.60.115, 20.62.60.116, 20.62.60.117 |
Francie – střed | 51.138.211.19 |
Německo – sever | 51.116.60.240 |
Německo – středozápad | 20.52.88.224 |
Japonsko – východ | 20.191.167.146 |
Japonsko – západ | 20.189.228.225 |
Jižní Korea – střed | 20.194.75.193 |
Severní střed USA | 52.162.111.130, 20.51.0.209 |
Severní Evropa | 52.146.137.179 |
Střední Katar | 20.21.36.225 |
Jižní Afrika – sever | 102.133.220.199 |
Středojižní USA | 20.65.134.83 |
Southeast Asia | 20.195.67.208 |
Švédsko – střed | 51.12.28.100 |
Švýcarsko – sever | 51.107.247.97 |
Velká Británie – jih | 51.143.213.211 |
Velká Británie – západ | 51.140.210.86 |
Středozápad USA | 13.71.199.119 |
Západní Evropa | 20.61.103.243, 20.61.103.244 |
Západní USA 2 | 20.51.13.80, 20.51.13.84, 20.51.13.85 |
USA – západ 3 | 20.150.245.165 |
Poznámka:
Předchozí kroky jsou podobné krokům konfigurace popsaným v dokumentu Postup exportu dat FHIR. Další informace najdete v tématu Zabezpečený export do služby Azure Storage.
Ověření
$convert-data
Volání rozhraní API určující odkaz na šablonu v parametru templateCollectionReference
<RegistryServer>/<imageName>@<imageDigest>
Další kroky
V tomto článku jste se dozvěděli o převodu dat pro rozhraní Azure API for FHIR. Další informace o souvisejících projektech GitHubu pro Azure API for FHIR najdete v tématu .
Poznámka:
FHIR® je registrovaná ochranná známka HL7 a používá se s povolením HL7.