Menggunakan Patient-everything dalam layanan FHIR
Operasi Patient-everything digunakan untuk memberikan tampilan semua sumber daya yang terkait dengan pasien. Operasi ini dapat berguna untuk memberikan akses pasien ke seluruh catatan mereka atau bagi penyedia atau pengguna lain untuk melakukan unduhan data massal yang terkait dengan pasien. Menurut spesifikasi Fast Healthcare Interoperability Resources (FHIR®), Patient-everything mengembalikan semua informasi yang terkait dengan satu atau beberapa pasien yang dijelaskan dalam sumber daya atau konteks tempat operasi ini dipanggil. Dalam layanan FHIR di Azure Health Data Services (dengan ini disebut layanan FHIR), Semua pasien tersedia untuk menarik data yang terkait dengan pasien tertentu.
Gunakan Patient-everything
Untuk memanggil Patient-everything, gunakan perintah berikut:
GET {FHIRURL}/Patient/{ID}/$everything
Catatan
Anda harus menentukan ID untuk pasien tertentu. Jika Anda memerlukan semua data untuk semua pasien, lihat $export.
Layanan FHIR memvalidasi bahwa ia dapat menemukan pasien yang cocok dengan ID pasien yang disediakan. Jika hasil ditemukan, respons akan menjadi bundel jenis searchset
dengan informasi berikut:
- Sumber daya pasien.
- Sumber daya yang secara langsung dirujuk oleh sumber daya pasien, kecuali referensi tautan yang tidak melihat juga atau jika
seealso
tautan mereferensikanRelatedPerson
. - Jika ada
seealso
referensi tautan ke pasien lain, hasilnya akan mencakup operasi Pasien-semuanya terhadapseealso
pasien yang tercantum. - Sumber daya di Kompartemen Pasien.
- Sumber daya perangkat yang mereferensikan sumber daya pasien.
Catatan
Jika pasien memiliki lebih dari 100 perangkat yang ditautkan ke mereka, hanya 100 yang akan dikembalikan.
Parameter patient-everything
Layanan FHIR mendukung parameter kueri berikut. Semua parameter ini bersifat opsional:
Parameter kueri | Deskripsi |
---|---|
_type | Memungkinkan Anda menentukan jenis sumber daya mana yang akan disertakan dalam respons. Misalnya, _type=Encounter hanya Encounter akan mengembalikan sumber daya yang terkait dengan pasien. |
_Sejak | Hanya akan mengembalikan sumber daya yang telah dimodifikasi sejak waktu yang disediakan. |
mulai | Menentukan tanggal mulai akan menarik sumber daya tempat tanggal klinis mereka setelah tanggal mulai yang ditentukan. Jika tidak ada tanggal mulai yang disediakan, semua rekaman sebelum tanggal selesai berada dalam cakupan. |
akhir | Menentukan tanggal akhir akan menarik sumber daya di mana tanggal klinis mereka sebelum tanggal selesai yang ditentukan. Jika tidak ada tanggal selesai yang disediakan, semua rekaman setelah tanggal mulai berada dalam cakupan. |
Catatan
Implementasi Patient-everything ini tidak mendukung parameter _count.
Memproses tautan pasien
Pada sumber daya pasien, ada elemen yang disebut tautan, yang menghubungkan pasien dengan pasien lain atau orang terkait. Pasien yang terkait ini membantu memberikan pandangan holistik tentang pasien asli. Referensi tautan dapat digunakan ketika pasien mengganti pasien lain atau ketika dua sumber daya pasien memiliki informasi pelengkap. Satu kasus penggunaan untuk tautan adalah ketika pesan ADT 38 atau 39 HL7v2 datang. Ini menjelaskan pembaruan untuk pasien. Pembaruan ini dapat disimpan sebagai referensi antara dua pasien dalam elemen tautan.
Spesifikasi FHIR memiliki gambaran umum terperinci tentang berbagai jenis tautan pasien, tetapi kami telah menyertakan ringkasan tingkat tinggi:
- replaces - Sumber daya Pasien menggantikan Pasien yang berbeda.
- refer - Pasien valid, tetapi tidak dianggap sebagai sumber informasi utama. Menunjuk ke pasien lain untuk mengambil informasi tambahan.
- seealso - Pasien berisi tautan ke pasien lain yang sama-sama valid.
- diganti-oleh - Sumber daya Pasien menggantikan Pasien yang berbeda.
Detail tautan pasien-semua pasien
Operasi Pasien-semuanya dalam layanan FHIR memproses tautan pasien dengan cara yang berbeda untuk memberi Anda pandangan yang paling holistik dari pasien.
Catatan
Tautan juga dapat mereferensikan RelatedPerson
. Saat ini, RelatedPerson
sumber daya tidak diproses dalam Semua pasien dan tidak dikembalikan dalam bundel.
Saat ini, tautan ganti dan rujuk diabaikan oleh operasi Pasien-semuanya, dan pasien yang ditautkan tidak dikembalikan dalam bundel.
Seperti yang dijelaskan, seealso menautkan referensi pasien lain yang dianggap sama validnya dengan aslinya. Setelah operasi Pasien-semuanya dijalankan, jika pasien memiliki seealso
tautan ke pasien lain, operasi menjalankan Patient-everything di setiap seealso
tautan. Ini berarti jika pasien terhubung ke lima pasien lain dengan tautan jenis seealso
, kita akan menjalankan Patient-everything pada masing-masing dari kelima pasien tersebut.
Catatan
Ini disiapkan untuk hanya mengikuti seealso
tautan satu lapisan dalam. Ini tidak memproses seealso
tautan tautan seealso
.
Jenis tautan akhir digantikan oleh. Dalam hal ini, sumber daya pasien asli tidak lagi digunakan dan replaced-by
tautan menunjuk ke pasien yang harus digunakan. Implementasi Patient-everything
ini akan mencakup secara default hasil operasi pada awal bundel dengan peringatan bahwa pasien tidak lagi valid. Ini juga akan menjadi perilaku ketika Prefer
header diatur ke handling=lenient
.
Selain itu, Anda dapat mengatur Prefer
header ke handling=strict
untuk melemparkan kesalahan sebagai gantinya. Dalam hal ini, pengembalian kode kesalahan 301 MovedPermanently
menunjukkan bahwa pasien saat ini sudah kedaluarsa dan mengembalikan ID untuk pasien yang benar yang disertakan dalam tautan. Header ContentLocation
kesalahan yang dikembalikan akan menunjuk ke permintaan yang benar dan terbaru.
Catatan
replaced-by
Jika tautan ada, Prefer: handling=lenient
dan hasil dikembalikan secara asinkron dalam beberapa bundel, hanya hasil operasi yang dikembalikan dalam satu bundel.
Urutan respons pasien-semuanya
Operasi Patient-everything mengembalikan hasil dalam fase:
- Fase 1 mengembalikan sumber daya itu
Patient
sendiri selain referensi runtime integrasi sumber daya danmanagingOrganization
apa pungeneralPractitioner
. - Fase 2 dan 3 mengembalikan sumber daya di kompartemen pasien.
start
Jika parameter kueri atauend
ditentukan, Fase 2 mengembalikan sumber daya dari kompartemen yang dapat difilter berdasarkan tanggal klinisnya, dan Fase 3 mengembalikan sumber daya dari kompartemen yang tidak dapat difilter berdasarkan tanggal klinisnya. Jika tidak ada parameter ini yang ditentukan, Fase 2 dilewati dan Fase 3 mengembalikan semua sumber daya kompartemen pasien. - Fase 4 akan mengembalikan perangkat apa pun yang mereferensikan pasien.
Setiap fase akan mengembalikan hasil dalam bundel. Jika hasilnya mencakup beberapa halaman, tautan berikutnya dalam bundel akan menunjuk ke halaman hasil berikutnya untuk fase tersebut. Setelah semua hasil dari fase dikembalikan, tautan berikutnya dalam bundel akan menunjuk ke panggilan untuk memulai fase berikutnya.
Jika pasien asli memiliki tautan, seealso
fase 1 hingga 4 akan diulang untuk masing-masing pasien tersebut.
Contoh Patient-everything
Berikut adalah beberapa contoh penggunaan operasi Patient-everything. Selain contoh ini, kami memiliki sampel file REST yang menggambarkan seealso
cara kerja perilaku dan replaced-by
.
Untuk menggunakan Patient-everything untuk mengkueri "semuanya" pasien antara 2010 dan 2020, gunakan panggilan berikut:
GET {FHIRURL}/Patient/{ID}/$everything?start=2010&end=2020
Untuk menggunakan Patient-everything untuk mengkueri Observasi dan Encounter pasien, gunakan panggilan berikut:
GET {FHIRURL}/Patient/{ID}/$everything?_type=Observation,Encounter
Untuk menggunakan Patient-everything untuk mengkueri "semuanya" pasien sejak 2021-05-27T05:00:00Z, gunakan panggilan berikut:
GET {FHIRURL}/Patient/{ID}/$everything?_since=2021-05-27T05:00:00Z
Jika pasien ditemukan untuk setiap panggilan ini, Anda akan mendapatkan kembali respons 200 dengan sumber daya yang Bundle
sesuai.
Langkah berikutnya
Sekarang setelah Anda tahu cara menggunakan operasi Patient-everything, Anda dapat mempelajari tentang opsi pencarian. Untuk mengetahui informasi selengkapnya, lihat
FHIR® adalah merek dagang terdaftar HL7 dan digunakan dengan izin HL7.