Validasi Operasi : Gambaran Umum

Penting

Azure API untuk FHIR akan dihentikan pada 30 September 2026. Ikuti strategi migrasi untuk beralih ke layanan FHIR Azure Health Data Services pada tanggal tersebut. Karena penghentian Azure API untuk FHIR, penyebaran baru tidak akan diizinkan mulai 1 April 2025. Layanan Azure Health Data Services FHIR adalah versi Azure API yang berkembang untuk FHIR yang memungkinkan pelanggan mengelola layanan FHIR, DICOM, dan MedTech dengan integrasi ke layanan Azure lainnya.

Di artikel profil toko di Azure API untuk FHIR, Anda menelusuri dasar-dasar profil FHIR dan menyimpannya. Artikel ini akan memandu Anda melalui cara menggunakan $validate untuk memvalidasi sumber daya terhadap profil. Memvalidasi sumber daya terhadap profil berarti memeriksa apakah sumber daya sesuai dengan profil, termasuk spesifikasi yang tercantum dalam Resource.meta.profile atau dalam Panduan Implementasi.

$validate adalah operasi dalam Fast Healthcare Interoperability Resources (FHIR®) yang memungkinkan Anda memastikan bahwa sumber daya FHIR sesuai dengan persyaratan sumber daya dasar atau profil tertentu. Operasi ini memastikan bahwa data di Azure API untuk FHIR memiliki atribut dan nilai yang diharapkan. Untuk informasi tentang memvalidasi operasi, kunjungi Spesifikasi HL7 FHIR. Per spesifikasi, Mode dapat ditentukan dengan $validate, seperti membuat dan memperbarui:

  • create: Azure API untuk FHIR memeriksa bahwa konten profil unik dari sumber daya yang ada dan dapat diterima untuk dibuat sebagai sumber daya baru.
  • update: Memeriksa apakah profil adalah pembaruan terhadap sumber daya yang ada yang ditunjuk (tidak ada perubahan yang dilakukan pada bidang yang tidak dapat diubah).

Ada berbagai cara yang disediakan bagi Anda untuk memvalidasi sumber daya:

  • Validasi sumber daya yang ada dengan operasi validasi.
  • Validasi sumber daya baru dengan operasi validasi.
  • Validasi pada sumber daya CREATE/UPDATE menggunakan header.

Azure API untuk FHIR akan selalu mengembalikan OperationOutcome sebagai hasil validasi untuk operasi $validate. Azure API untuk layanan FHIR melakukan validasi dua langkah, setelah sumber daya diteruskan ke titik akhir $validate - langkah pertama adalah validasi dasar untuk memastikan sumber daya dapat diurai. Selama penguraian sumber daya, kesalahan individual perlu diperbaiki sebelum melanjutkan ke langkah berikutnya. Setelah sumber daya berhasil diurai, validasi penuh dilakukan sebagai langkah kedua.

Catatan

Setiap set nilai yang akan digunakan untuk validasi harus diunggah ke server FHIR.  Ini termasuk Nilaiset apa pun yang merupakan bagian dari spesifikasi FHIR, serta NilaiSet apa pun yang ditentukan dalam Panduan Implementasi.  Hanya Valueset yang sepenuhnya diperluas yang berisi daftar lengkap semua kode yang didukung.  Definisi ValueSet apa pun yang mereferensikan sumber eksternal tidak didukung.

Memvalidasi sumber daya yang sudah ada

Untuk memvalidasi sumber daya yang ada, gunakan $validate dalam GET permintaan:

GET http://<your Azure API for FHIR base URL>/{resource}/{resource ID}/$validate

Misalnya:

GET https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/Patient/a6e11662-def8-4dde-9ebc-4429e68d130e/$validate

Dalam contoh ini, Anda memvalidasi sumber daya a6e11662-def8-4dde-9ebc-4429e68d130e Pasien yang ada terhadap sumber daya Pasien dasar. Jika valid, Anda akan mendapatkan OperationOutcome seperti contoh kode berikut:

{
    "resourceType": "OperationOutcome",
    "issue": [
        {
            "severity": "information",
            "code": "informational",
            "diagnostics": "All OK"
        }
    ]
}

Jika sumber daya tidak valid, Anda akan mendapatkan kode kesalahan dan pesan kesalahan dengan detail mengapa sumber daya tidak valid. Contoh OperationOutcome dikembalikan dengan pesan kesalahan dan bisa terlihat seperti contoh kode berikut:

{
    "resourceType": "OperationOutcome",
    "issue": [
        {
            "severity": "error",
            "code": "invalid",
            "details": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/dotnet-api-operation-outcome",
                        "code": "1028"
                    }
                ],
                "text": "Instance count for 'Patient.identifier.value' is 0, which is not within the specified cardinality of 1..1"
            },
            "location": [
                "Patient.identifier[1]"
            ]
        },
        {
            "severity": "error",
            "code": "invalid",
            "details": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/dotnet-api-operation-outcome",
                        "code": "1028"
                    }
                ],
                "text": "Instance count for 'Patient.gender' is 0, which is not within the specified cardinality of 1..1"
            },
            "location": [
                "Patient"
            ]
        }
    ]
}

Dalam contoh ini, sumber daya tidak sesuai dengan profil Pasien yang disediakan, yang memerlukan nilai dan jenis kelamin pengidentifikasi pasien.

Jika Anda ingin menentukan profil sebagai parameter, Anda dapat menentukan URL kanonis untuk profil yang akan divalidasi, seperti contoh berikut untuk profil dasar HL7 untuk heartrate:

GET https://myAzureAPIforFHIR.azurehealthcareapis.com/Observation/12345678/$validate?profile=http://hl7.org/fhir/StructureDefinition/heartrate

Memvalidasi sumber daya baru

Jika Anda ingin memvalidasi sumber daya baru yang Anda unggah ke Azure API untuk FHIR, Anda dapat melakukan POST permintaan: Server akan selalu mengembalikan OperationOutcome sebagai hasilnya.

POST http://<your Azure API for FHIR base URL>/{Resource}/$validate

Misalnya:

POST https://myAzureAPIforFHIR.azurehealthcareapis.com/Patient/$validate

Permintaan ini akan memvalidasi sumber daya. Pada sumber daya validasi tidak dibuat di layanan FHIR, Anda harus mengirim permintaan POST tanpa $validate untuk membuat sumber daya.

Validasi pada sumber daya CREATE/UPDATE menggunakan header.

Secara default, Azure API untuk FHIR dikonfigurasi untuk menolak validasi pada sumber daya Create/Update. Kemampuan ini memungkinkan untuk memvalidasi pada Create/Update, menggunakan x-ms-profile-validation header . Atur 'x-ms-profile-validation' ke true untuk validasi.

Catatan

Di layanan FHIR sumber terbuka, Anda dapat mengubah pengaturan konfigurasi server, di bawah CoreFeatures.

{
   "FhirServer": {
      "CoreFeatures": {
            "ProfileValidationOnCreate": true,
            "ProfileValidationOnUpdate": false
        }
}

Langkah berikutnya

Dalam artikel ini, Anda mempelajari cara memvalidasi sumber daya terhadap profil menggunakan $validate. Untuk mempelajari tentang Azure API lainnya untuk fitur yang didukung FHIR, lihat

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