$convert البيانات في خدمة FHIR

إشعار

في مايو 2024 أصدرنا واجهة برمجة تطبيقات محول FHIR مستقلة منفصلة عن خدمة FHIR وتم حزمها كصورة حاوية (Docker) للمعاينة. بالإضافة إلى تمكينك من تحويل البيانات من مصدر السجل إلى حزم FHIR R4، يوفر محول FHIR العديد من الإمكانات الجديدة الصافية، مثل:

  • تحويل البيانات ثنائية الاتجاه من مصدر السجل إلى حزم FHIR R4 والعودة. على سبيل المثال، يمكن لمحول FHIR تحويل البيانات من تنسيق FHIR R4 مرة أخرى إلى تنسيق HL7v2.
  • تجربة محسنة لتخصيص قوالب Liquid الافتراضية.
  • العينات التي توضح كيفية إنشاء مسار ETL (استخراج وتحويل وتحميل) باستخدام Azure Data Factory (ADF).

لتنفيذ صورة حاوية محول FHIR، راجع مشروع محول FHIR GitHub.

$convert-data تمكنك العملية في خدمة FHIR® من تحويل البيانات الصحية من تنسيقات مختلفة إلى بيانات FHIR R4. $convert-data تستخدم العملية قوالب Liquid من مشروع محول FHIR لتحويل بيانات FHIR. يمكنك تخصيص قوالب التحويل هذه حسب الحاجة.

$convert-data تدعم العملية أربعة أنواع من تحويل البيانات:

  • HL7v2 إلى FHIR R4
  • C-CDA إلى FHIR R4
  • JSON إلى FHIR R4 (مخصص لتعيينات التحويل المخصصة)
  • FHIR STU3 إلى FHIR R4

استخدام نقطة نهاية بيانات $convert

$convert-data استخدم نقطة النهاية كمكون داخل مسار ETL (استخراج وتحويل وتحميل) لتحويل البيانات الصحية من تنسيقات مختلفة (على سبيل المثال: HL7v2 وCCDA وJSON وFHIR STU3) إلى تنسيق FHIR. إنشاء مسار ETL لسير عمل كامل أثناء تحويل بياناتك الصحية. نوصي باستخدام محرك ETL استنادا إلى Azure Logic Apps أو Azure Data Factory. على سبيل المثال، قد يتضمن سير العمل استيعاب البيانات، وتنفيذ $convert-data العمليات، والتحقق من الصحة، والمعالجة المسبقة للبيانات وما بعدها، وإثراء البيانات، وإلغاء تكرار البيانات، وتحميل البيانات لاستمرارها في خدمة FHIR.

$convert-data يتم دمج العملية في خدمة FHIR كإجراء REST API. يمكنك استدعاء $convert-data نقطة النهاية كما يلي:

POST {{fhirurl}}/$convert-data

يتم تسليم البيانات الصحية للتحويل إلى خدمة FHIR في نص $convert-data الطلب. إذا كان الطلب ناجحا، تقوم خدمة FHIR بإرجاع استجابة حزمة FHIR مع البيانات المحولة إلى FHIR R4.

المعلمات

يحزم $convert-data استدعاء العملية البيانات الصحية للتحويل داخل معلمات بتنسيق JSON في نص الطلب. يتم وصف المعلمات في الجدول التالي:

اسم المعلمة الوصف القيم المقبولة
بيانات الإدخال حمولة البيانات التي سيتم تحويلها إلى FHIR. ل Hl7v2: سلسلة
ل Ccda: XML
ل Json: JSON
ل FHIR STU3: JSON
نوع بيانات الإدخال نوع إدخال البيانات. Hl7v2، ، Ccda، JsonFhir
templateCollectionReference مرجع إلى مجموعة قالب صورة OCI في Azure Container Registry. المرجع هو إلى صورة تحتوي على قوالب Liquid لاستخدامها للتحويل. يمكن أن يشير إما إلى القوالب الافتراضية أو إلى صورة قالب مخصصة مسجلة داخل خدمة FHIR. تغطي الأقسام التالية تخصيص القوالب، واستضافتها على Azure Container Registry، والتسجيل في خدمة FHIR. بالنسبة للقوالب الافتراضية/العينة :
قوالب HL7v2 :
microsofthealth/fhirconverter:default
microsofthealth/hl7v2templates:default
قوالب C-CDA :
microsofthealth/ccdatemplates:default
قوالب JSON :
microsofthealth/jsontemplates:default
قوالب FHIR STU3 :
microsofthealth/stu3tor4templates:default

بالنسبة للقوالب المخصصة :
<RegistryServer>/<imageName>@<imageDigest>, <RegistryServer>/<imageName>:<imageTag>
قالب الجذر القالب الجذر المراد استخدامه أثناء تحويل البيانات. بالنسبة إلى 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

بالنسبة إلى C-CDA:
CCD, ConsultationNote, DischargeSummary, HistoryandPhysical, OperativeNote, ProcedureNote, ProgressNote, ReferralNote, TransferSummary

بالنسبة إلى JSON:
ExamplePatient, Stu3ChargeItem

بالنسبة إلى FHIR STU3:
اسم مورد FHIR STU3 (على سبيل المثال: المريض والمراقبة والتنظيم)

الاعتبارات

  • قوالب FHIR STU3 إلى FHIR R4 هي قوالب Liquid التي توفر تعيينات اختلافات الحقول فقط بين مورد FHIR STU3 والمورد المكافئ له في مواصفات FHIR R4. تتم إعادة تسمية بعض موارد FHIR STU3 أو إزالتها من FHIR R4. لمزيد من المعلومات حول اختلافات الموارد والقيود لتحويل FHIR STU3 إلى FHIR R4، راجع اختلافات الموارد والقيود لتحويل FHIR STU3 إلى FHIR R4.

  • قوالب JSON هي نماذج قوالب لاستخدامها في إنشاء تعيينات التحويل الخاصة بك. إنها ليست قوالب افتراضية تلتزم بأي أنواع رسائل بيانات صحية معرفة مسبقا. لا يتم تحديد JSON نفسه بتنسيق بيانات صحية، على عكس HL7v2 أو C-CDA. لذلك، بدلا من توفير قوالب JSON الافتراضية، نقدم بعض نماذج قوالب JSON كنقطة بداية للتعينات المخصصة الخاصة بك.

تحذير

يتم إصدار القوالب الافتراضية ضمن ترخيص MIT ولا تدعمها Microsoft.

يتم توفير القوالب الافتراضية فقط لمساعدتك على البدء في سير عمل تحويل البيانات. هذه القوالب الافتراضية غير مخصصة للإنتاج وقد تتغير عندما تصدر Microsoft تحديثات لخدمة FHIR. للحصول على سلوك تحويل بيانات متناسق عبر إصدارات مختلفة من خدمة FHIR، يجب عليك القيام بما يلي:

  1. استضافة نسختك الخاصة من القوالب في مثيل Azure Container Registry.
  2. تسجيل القوالب في خدمة FHIR.
  3. استخدم القوالب المسجلة في استدعاءات واجهة برمجة التطبيقات الخاصة بك.
  4. تحقق من أن سلوك التحويل يلبي متطلباتك.

لمزيد من المعلومات حول استضافة القوالب الخاصة بك، راجع استضافة القوالب الخاصة بك

نموذج الطلب

{
    "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"
        }
    ]
}

استجابة العينة

{
    "resourceType": "Bundle",
    "type": "batch",
    "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"
            }
        }
    ]
}

نتيجة تحويل FHIR هي حزمة FHIR كدفعة.

  • يجب أن تتوافق مجموعة FHIR مع توقعات مواصفات FHIR R4 - الحزمة - FHIR v4.0.1.
  • إذا كنت تحاول التحقق من الصحة مقابل ملف تعريف معين، فأنت بحاجة إلى القيام ببعض المعالجة اللاحقة باستخدام عملية FHIR $validate .

الخطوات التالية

تكوين إعدادات $convert-data باستخدام مدخل Microsoft Azure

استكشاف أخطاء بيانات $convert وإصلاحها

الأسئلة المتداولة حول $convert البيانات

إشعار

FHIR® هي علامة تجارية مسجلة ل HL7 وتستخدم بإذن من HL7.