Gambaran umum pemetaan tujuan FHIR layanan MedTech

Artikel ini memberikan gambaran umum tentang pemetaan tujuan FHIR® layanan MedTech.

Layanan MedTech memerlukan dua jenis pemetaan JSON yang ditambahkan ke layanan MedTech Anda melalui api portal Azure atau Azure Resource Manager. Pemetaan perangkat adalah jenis pertama dan mengontrol nilai pemetaan dalam data perangkat yang dikirim ke layanan MedTech ke objek data internal yang dinormalisasi. Pemetaan perangkat berisi ekspresi yang digunakan layanan MedTech untuk mengekstrak jenis, pengidentifikasi perangkat, waktu tanggal pengukuran, dan nilai pengukuran. Pemetaan tujuan FHIR adalah jenis kedua dan mengontrol bagaimana data yang dinormalisasi dipetakan ke Pengamatan FHIR.

Catatan

Pemetaan tujuan perangkat dan FHIR dievaluasi ulang setiap kali pesan perangkat diproses. Setiap pembaruan pada salah satu pemetaan akan segera berlaku.

Dasar-dasar pemetaan tujuan FHIR

Pemetaan tujuan FHIR mengontrol bagaimana data yang dinormalisasi yang diekstrak dari pesan perangkat dipetakan ke dalam Pengamatan FHIR.

  • Haruskah pengamatan dibuat untuk satu titik waktu atau selama satu jam?
  • Kode apa yang harus ditambahkan ke pengamatan?
  • Haruskah nilai direpresentasikan sebagai SampledData atau Kuantitas?

Jenis data ini adalah semua opsi kontrol konfigurasi pemetaan tujuan FHIR.

Setelah data perangkat diubah menjadi model data yang dinormalisasi, data yang dinormalisasi dikumpulkan untuk transformasi ke Pengamatan FHIR. Jika jenis Observasi adalah SampledData, data dikelompokkan sesuai dengan pengidentifikasi perangkat, jenis pengukuran, dan periode waktu (periode waktu dapat 1 jam atau 24 jam). Output pengelompokan ini dikirim untuk konversi menjadi satu Pengamatan FHIR yang mewakili periode waktu untuk jenis data tersebut. Untuk data Jenis pengamatan lainnya (Kuantitas, CodeableConcept , dan String) tidak dikelompokkan, tetapi sebaliknya setiap pengukuran diubah menjadi satu Pengamatan yang mewakili titik waktu.

Tip

Untuk informasi selengkapnya tentang cara layanan MedTech memproses data pesan perangkat ke dalam Pengamatan FHIR untuk persistensi pada layanan FHIR, lihat Gambaran Umum tahap pemrosesan pesan perangkat layanan MedTech.

Diagram ini memberikan ilustrasi tentang apa yang terjadi selama tahap transformasi dalam layanan MedTech.

Diagram example of the MedTech service device message transformation stage.

Catatan

Pengamatan FHIR dalam diagram ini bukan sumber daya lengkap. Lihat Contoh dalam gambaran umum ini untuk seluruh Pengamatan FHIR.

CollectionFhir

CollectionFhir adalah jenis templat akar yang digunakan oleh pemetaan tujuan FHIR layanan MedTech. CollectionFhir adalah daftar semua templat yang digunakan selama tahap transformasi. Anda dapat menentukan satu atau beberapa templat dalam CollectionFhir, dengan setiap pesan yang dinormalisasi dievaluasi terhadap semua templat.

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

CodeValueFhir

CodeValueFhir saat ini adalah satu-satunya templat yang didukung dalam pemetaan tujuan FHIR. Hal ini memungkinkan Anda untuk menentukan kode, periode efektif, dan nilai pengamatan. Beberapa jenis nilai didukung: SampledData, CodeableConcept, Kuantitas, dan String. Seiring dengan nilai-nilai yang dapat dikonfigurasikan ini, pengidentifikasi untuk sumber daya Pengamatan dan menghubungkan ke Perangkat dan sumber daya Pasien yang tepat ditangani secara otomatis.

Penting

Jenis Resolusi menentukan bagaimana layanan MedTech mengaitkan data perangkat dengan sumber daya Perangkat dan sumber daya Pasien. Layanan MedTech membaca sumber daya Perangkat dan Pasien dari layanan FHIR menggunakan pengidentifikasi perangkat dan pengidentifikasi pasien. Jika pengidentifikasi pertemuan ditentukan dan diekstrak dari payload data perangkat, pengidentifikasi ditautkan ke pengamatan jika ada pertemuan pada layanan FHIR dengan pengidentifikasi tersebut. Jika pengidentifikasi pertemuan berhasil dinormalisasi, tetapi tidak ada FHIR Encounter dengan pengidentifikasi pertemuan tersebut, pengecualian FhirResourceNotFound akan dilemparkan. Untuk informasi selengkapnya tentang mengonfigurasi jenis Resolusi layanan MedTech, lihat Mengonfigurasi tab Tujuan.

Elemen Deskripsi Wajib diisi
typeName Jenis pengukuran yang harus terikat pada templat ini. Catatan: Harus ada setidaknya satu templat pemetaan perangkat yang memiliki ini sama typeName. Elemen typeName ini digunakan untuk menautkan templat pemetaan tujuan FHIR ke satu atau beberapa templat pemetaan perangkat. Templat pemetaan perangkat dengan elemen yang sama typeName menghasilkan data yang dinormalisasi yang dievaluasi dengan templat pemetaan tujuan FHIR yang memiliki templat pemetaan tujuan yang sama typeName. Benar
periodInterval Periode waktu yang harus diwakili pengamatan yang dibuat. Nilai yang didukung adalah 0 (saat itu juga), 60 (satu jam), 1440 (sehari). True ketika jenis Observasi adalah SampledData; Diabaikan untuk jenis Pengamatan lainnya.
category Sejumlah CodeableConcepts untuk mengklasifikasikan jenis pengamatan yang dibuat. Salah
Kode Satu atau beberapa Pengodean untuk diterapkan pada pengamatan yang dibuat. Benar
codes[].code Kode untuk Coding dalam codes elemen . Benar
codes[].system Sistem untuk Coding dalam codes elemen . Salah
codes[].display Tampilan untuk Coding dalam codes elemen . Salah
value Nilai yang diekstrak dan diwakili dalam pengamatan. Untuk informasi selengkapnya tentang elemen yang dimuat value elemen, lihat Jenis nilai. Benar ketika components elemen tidak digunakan (kecuali jenis Observasi adalah CodebleConcept, dalam hal ini elemen ini tidak hanya 'tidak diperlukan' tetapi juga diabaikan).
komponen Satu atau beberapa komponen untuk dibuat pada pengamatan. Benar ketika value elemen tidak digunakan sebagai gantinya.
components[].codes Satu atau beberapa Pengodean untuk diterapkan pada komponen. Salah
components[].value Nilai yang diekstrak dan diwakili dalam komponen. Untuk informasi selengkapnya tentang elemen yang dimuat components[].value elemen, lihat Jenis nilai. Benar ketika components elemen digunakan (kecuali jenis Observasi adalah CodebleConcept, dalam hal ini elemen ini tidak hanya 'tidak diperlukan' tetapi juga diabaikan).

Jenis nilai

Semua elemen templat value CodeValueFhir berisi elemen-elemen ini:

Elemen Deskripsi Wajib diisi
valueType Jenis nilai. Nilai ini adalah "SampledData", "Quantity", "CodeableConcept", atau "String" tergantung pada jenis nilai. Benar
valueName Nama nilai. Benar kecuali valueType codeableconcept.

Jenis nilai ini didukung dalam pemetaan tujuan FHIR layanan MedTech:

SampledData

Mewakili tipe data FHIR SampledData. Pengukuran pengamatan ditulis ke aliran nilai yang dimulai pada suatu titik waktu dan bertahap ke depan menggunakan periode yang ditentukan. Jika tidak ada nilai, nilai E ditulis ke dalam aliran data. Jika periode singgah sehingga dua nilai atau lebih menempati posisi yang sama dalam aliran data, nilai terbaru digunakan. Logika yang sama diterapkan ketika pengamatan yang menggunakan SampledData diperbarui. Untuk templat CodeValueFhir dengan jenis nilai SampledData, elemen templat value berisi elemen berikut:

Elemen Deskripsi Wajib diisi
defaultPeriod Periode default dalam milidetik untuk digunakan. Benar
Unit Pelajaran yang diset pada asal-usul SampledData. Benar

Quantity

Mewakili jenis data FHIR Kuantitas. Jenis ini membuat satu, titik waktu, Pengamatan. Jika nilai baru tiba yang berisi pengidentifikasi perangkat, jenis pengukuran, dan tanda waktu yang sama, Pengamatan sebelumnya diperbarui ke nilai baru. Untuk templat CodeValueFhir dengan jenis nilai Kuantitas, elemen templat value berisi elemen berikut:

Elemen Deskripsi Wajib diisi
Unit Representasi pelajaran. Salah
code Bentuk pelajaran yang dikodekan. Salah
sistem Sistem yang mendefinisikan bentuk pelajaran yang dikodekan. Salah

CodeableConcept

Mewakili tipe data FHIR CodeableConcept. Nilai dalam model data yang dinormalisasi tidak digunakan, dan sebaliknya ketika jenis data ini diterima, Observasi dibuat dengan kode tertentu yang mewakili bahwa pengamatan dicatat pada titik waktu tertentu. Untuk templat CodeValueFhir dengan jenis nilai CodeableConcept, elemen templat value berisi elemen berikut:

Elemen Deskripsi Wajib diisi
text Representasi teks biasa. Salah
Kode Satu atau beberapa Pengodean untuk diterapkan pada pengamatan yang dibuat. Benar
codes[].code Kode untuk Coding dalam codes elemen . Benar
codes[].system Sistem untuk Coding dalam codes elemen . Salah
codes[].display Tampilan untuk Coding dalam codes elemen . Salah

String

Mewakili jenis data String FHIR. Jenis ini membuat satu, titik waktu, Pengamatan. Jika nilai baru tiba yang berisi pengidentifikasi perangkat, jenis pengukuran, dan tanda waktu yang sama, Pengamatan sebelumnya diperbarui ke nilai baru. Tidak ada elemen lain yang didefinisikan.

Contoh

Tip

Anda dapat menggunakan debugger Pemetaan layanan MedTech untuk bantuan membuat, memperbarui, dan memecahkan masalah perangkat layanan MedTech dan pemetaan tujuan FHIR. Debugger Pemetaan memungkinkan Anda untuk dengan mudah melihat dan membuat penyesuaian sebaris secara real time, tanpa harus meninggalkan portal Azure. Debugger Pemetaan juga dapat digunakan untuk mengunggah pesan perangkat pengujian untuk melihat bagaimana tampilannya setelah diproses menjadi pesan yang dinormalisasi dan diubah menjadi Pengamatan FHIR.

Catatan

Contoh dan pesan yang dinormalisasi ini adalah kelanjutan dari Gambaran Umum pemetaan perangkat layanan MedTech.

Dalam contoh ini, kita menggunakan pesan yang dinormalisasi yang heartRate menangkap data:

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

Kami menggunakan pemetaan tujuan FHIR ini untuk tahap transformasi:

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

Pengamatan FHIR yang dihasilkan akan terlihat seperti ini setelah tahap transformasi:

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

Tip

Untuk bantuan memperbaiki kesalahan penyebaran layanan MedTech umum, lihat Memecahkan masalah kesalahan penyebaran layanan MedTech.

Untuk bantuan dalam memperbaiki kesalahan layanan MedTech, lihat Memecahkan masalah kesalahan menggunakan log layanan MedTech.

Langkah berikutnya

Gambaran umum pemetaan perangkat layanan MedTech

Cara menggunakan templat CalculatedContent dengan pemetaan perangkat layanan MedTech

Cara menggunakan templat IotJsonPathContent dengan pemetaan perangkat layanan MedTech

Cara menggunakan fungsi kustom dengan pemetaan perangkat layanan MedTech

Gambaran umum sampel pemetaan berbasis skenario layanan MedTech

Catatan

FHIR® adalah merek dagang terdaftar HL7 dan digunakan dengan izin HL7.