Penyimpanan FHIR dalam Cloud Healthcare API mendukung beberapa versi spesifikasi Fast Healthcare Interoperability Resources (FHIR) yang dipublikasikan oleh Health Level 7 International (HL7).
API v1 mendukung versi berikut:
- R5 versi 5.0.0 (Rilis 5)
- R4 versi 4.0.1 (Rilis 4)
- STU3 versi 3.0.1 (Rilis 3 - Standar untuk Penggunaan Percobaan)
- DSTU2 versi 1.0.2 (Standar Draf untuk Penggunaan Percobaan)
Saat membuat penyimpanan FHIR, Anda menentukan versi FHIR sebagai parameter ke metode fhirStores.create. Anda tidak dapat mengubah versi FHIR setelah penyimpanan dibuat.
Antarmuka API ke setiap penyimpanan sesuai dengan versi FHIR penyimpanan tersebut. Misalnya, interaksi conformance DSTU2 berbeda dengan interaksi capabilities STU3, tetapi keduanya menggunakan jalur REST /fhir/metadata, sehingga jalur tersebut menampilkan respons yang berbeda berdasarkan versi FHIR penyimpanan.
Fungsi yang ditambahkan dalam versi FHIR yang lebih baru tersedia di penyimpanan yang menggunakan versi FHIR sebelumnya jika tidak menyebabkan ketidakcocokan. Misalnya, interaksi patch tersedia di penyimpanan DSTU2 meskipun interaksi tersebut hanya ditentukan dari STU3 dan seterusnya.
Detail fungsi yang didukung di API v1 menurut versi FHIR
R5
Pernyataan kemampuan server menunjukkan bagian spesifikasi yang didukung.
- Penyimpanan dan pengambilan semua resource R5, termasuk dukungan untuk elemen ekstensi. API menerima, menyimpan, dan menampilkan ekstensi pada elemen data apa pun.
- Semua metode dalam
RESTful API
yang menggunakan jenis konten JSON didukung, kecuali:
- Interaksi histori tingkat jenis dan tingkat sistem yang mengambil histori di beberapa resource tidak didukung. Histori resource hanya dapat diambil untuk satu resource dalam satu waktu.
- Interaksi batch/transaksi tidak mendukung operasi penelusuran di dalam paket.
- Validasi dan penerapan profil didukung.
- Parameter penelusuran yang ditentukan pengguna, termasuk penelusuran pada elemen ekstensi, didukung di API v1beta1.
Semua fungsi penelusuran didukung, kecuali:
- Parameter penelusuran
Group-characteristic-value,Location-near,Location-contains,DocumentReference-relationship,Bundle-composition,Bundle-message,Observation-component-value-canonical,Observation-value-canonical,QuestionnaireResponse-item-subject, danComposition-section-texttidak didukung. - Parameter penelusuran yang melakukan pencocokan fonetik tidak didukung.
- Parameter hasil penelusuran
_contained,_containedType,_summary=count, dan_summary=truetidak didukung. - Parameter penelusuran khusus
_contentmenelusuri semua kolom resource yang dirujuk oleh parameter penelusuran. Parameter ini mengecualikan kolom yang tidak dapat ditelusuri. Parameter ini tidak mendukungANDeksplisit (istilah secara implisit digabungkan denganAND) atau tanda kurung. - Parameter penelusuran khusus
Resource-query,Resource-filter,Resource-language,Resource-in, danResource-listtidak didukung. - Parameter
_sort, saat digunakan pada kolom dengan elemen berulang, akan mengurutkan berdasarkan elemen pertama; hal ini berbeda dengan spesifikasi._sortdidukung untuk parameter penelusuran berjenisnumber,data,string,token, danquantity. - Pengubah penelusuran token
:of-type,:code-text,text-advanced, dan:textserta pengubah penelusuran referensi:identifier,not-in,text-advanced, dan:code-texttidak didukung. Pengubahcontainsuntuk penelusuran URI tidak didukung. - Penelusuran referensi kanonis tidak didukung. Referensi kanonis diperlakukan sebagai referensi normal. Pengubah
abovedanbelowtidak didukung. - Saat menggunakan parameter
_type, hanya parameter penelusuran umum (untuk semua resource) yang dapat digunakan, bukan irisan jenis resource yang ditentukan. Subset parameter penelusuran gabungan berikut didukung:
Observation-code-value-conceptObservation-code-value-dateObservation-code-value-quantityObservation-code-value-stringObservation-combo-code-value-conceptObservation-combo-code-value-quantityObservation-component-code-value-conceptObservation-component-code-value-quantity
Parameter penelusuran gabungan lainnya tidak didukung.
Penelusuran menggunakan metode
POSTtidak menerima parameterapplication/x-www-form-urlencodeddi isi permintaan.Karakter pengganti (
*) didukung untuk_include, tetapi tidak didukung untuk_revinclude.
- Parameter penelusuran
Area yang tidak didukung mencakup:
- Jenis konten XML tidak didukung.
- Operasi patch tidak mendukung XML Patch atau
FHIRPathPatch. - Permintaan HTTP HEAD tidak didukung.
Aspek tertentu dari API menyimpang dari spesifikasi FHIR karena kompatibilitas mundur di versi FHIR sebelumnya. Hal ini telah diperbaiki di R5:
- Saat validasi kolom wajib diaktifkan, kolom
nulldan kolom kosong (misalnya,{}) kini ditolak. - UpperCamelCase tidak lagi didukung untuk kolom resource dalam json.
- Referensi
urn:uuidtidak diizinkan dalam paket batch, baik integritas referensial dinonaktifkan atau tidak. Paket batch tidak pernah menulis ulang referensi. - Paket transaksi lebih ketat dalam menulis ulang referensi daripada sebelumnya, dan error pada FullUrl yang tidak valid dalam entri, seperti yang ditentukan oleh spesifikasi: https://www.hl7.org/fhir/bundle.html#references.
- Referensi yang terlihat seperti referensi resource harus memiliki ID yang valid.
- Validasi profil dasar diaktifkan untuk permintaan PATCH.
R4
Pernyataan kemampuan server menunjukkan bagian spesifikasi yang didukung.
- Penyimpanan dan pengambilan semua resource R4, termasuk dukungan untuk elemen ekstensi. API menerima, menyimpan, dan menampilkan ekstensi pada elemen data apa pun.
- Semua metode dalam
RESTful API
yang menggunakan jenis konten JSON didukung, kecuali:
- Interaksi histori tingkat jenis dan tingkat sistem yang mengambil histori di beberapa resource tidak didukung. Histori resource hanya dapat diambil untuk satu resource dalam satu waktu.
- Interaksi batch/transaksi tidak mendukung operasi penelusuran di dalam paket.
- Validasi dan penerapan profil didukung.
- Parameter penelusuran yang ditentukan pengguna, termasuk penelusuran pada elemen ekstensi, didukung di API v1beta1.
Semua fungsi penelusuran didukung, kecuali:
- Parameter penelusuran
Group-characteristic-value,Location-near,Bundle-composition, danBundle-messagetidak didukung. - Parameter penelusuran yang melakukan pencocokan fonetik tidak didukung.
- Parameter hasil penelusuran
_contained,_containedType,_summary=count, dan_summary=truetidak didukung. - Parameter penelusuran khusus
_contentmenelusuri semua kolom resource yang dirujuk oleh parameter penelusuran. Parameter ini mengecualikan kolom yang tidak dapat ditelusuri. Parameter ini tidak mendukungANDeksplisit (istilah secara implisit digabungkan denganAND) atau tanda kurung. - Parameter penelusuran khusus
_query,_filter, dan_listtidak didukung. - Parameter
_sort, saat digunakan pada kolom dengan elemen berulang, akan mengurutkan berdasarkan elemen pertama; hal ini berbeda dengan spesifikasi._sortdidukung untuk parameter penelusuran berjenisnumber,data,string,token, danquantity. - Pengubah penelusuran token
:of-typedan pengubah penelusuran referensi:identifiertidak didukung. - Penelusuran referensi kanonis tidak didukung. Referensi kanonis diperlakukan sebagai referensi normal.
- Saat menggunakan parameter
_type, hanya parameter penelusuran umum (untuk semua resource) yang dapat digunakan, bukan irisan jenis resource yang ditentukan. Subset parameter penelusuran gabungan berikut didukung:
DocumentReference-relationshipObservation-code-value-conceptObservation-code-value-dateObservation-code-value-quantityObservation-code-value-stringObservation-combo-code-value-conceptObservation-combo-code-value-quantityObservation-component-code-value-conceptObservation-component-code-value-quantity
Parameter penelusuran gabungan lainnya tidak didukung.
Penelusuran menggunakan metode
POSTtidak menerima parameterapplication/x-www-form-urlencodeddi isi permintaan.Karakter pengganti (
*) didukung untuk_include, tetapi tidak didukung untuk_revinclude.
- Parameter penelusuran
Area yang tidak didukung mencakup:
- Sebagian besar operasi yang diperluas tidak diimplementasikan.
- Jenis konten XML tidak didukung.
- Operasi patch tidak mendukung XML Patch atau
FHIRPathPatch. - Permintaan HTTP HEAD tidak didukung.
Area tempat API menyimpang dari spesifikasi FHIR untuk memungkinkan kompatibilitas mundur:
nullditerima untuk kolom wajib diisi- Kode kosong diterima untuk kolom wajib diisi
- Referensi
urn:uuiddiizinkan dalam paket batch saat integritas referensial dinonaktifkan.
STU3
Pernyataan kemampuan server menunjukkan bagian spesifikasi yang didukung.
- Penyimpanan dan pengambilan semua resource STU3 didukung, termasuk dukungan untuk elemen ekstensi. API menerima, menyimpan, dan menampilkan ekstensi pada elemen data apa pun.
Semua metode dalam RESTful API yang menggunakan jenis konten JSON didukung, kecuali:
- Interaksi histori tingkat jenis dan tingkat sistem yang mengambil histori di beberapa resource tidak didukung. Histori resource hanya dapat diambil untuk satu resource dalam satu waktu.
- Interaksi batch/transaksi tidak mendukung operasi penelusuran di dalam paket.
Validasi dan penerapan profil didukung.
Parameter penelusuran yang ditentukan pengguna, termasuk penelusuran pada elemen ekstensi, didukung di API v1beta1.
Semua fungsi penelusuran didukung, kecuali:
- Parameter penelusuran
Group-characteristic-value,Sequence-coordinate,Location-near,Location-near-distance,Bundle-composition, danBundle-messagetidak didukung. - Parameter penelusuran yang melakukan pencocokan fonetik tidak didukung.
- Parameter hasil penelusuran
_contained,_containedType,_summary=count, dan_summary=truetidak didukung. - Parameter penelusuran khusus
_contentmenelusuri semua kolom resource yang dirujuk oleh parameter penelusuran. Parameter ini mengecualikan kolom yang tidak dapat ditelusuri. Parameter ini tidak mendukungANDeksplisit (istilah secara implisit digabungkan dengan AND) atau tanda kurung. - Parameter penelusuran khusus
_query,_filter, dan_listtidak didukung. - Parameter
_sort, saat digunakan pada kolom dengan elemen berulang, akan mengurutkan berdasarkan elemen pertama; hal ini berbeda dengan spesifikasi._sortdidukung untuk parameter penelusuran berjenisnumber,data,string,token, danquantity. - Penelusuran menggunakan metode
POSTtidak menerima parameterapplication/x-www-form-urlencodeddi isi permintaan. - Karakter pengganti (
*) didukung untuk_include, tetapi tidak didukung untuk_revinclude.
- Parameter penelusuran
Area yang tidak didukung mencakup:
- Sebagian besar operasi yang diperluas tidak diimplementasikan.
- Jenis konten XML tidak didukung.
- Operasi patch tidak mendukung XML Patch atau FHIRPath Patch.
Area tempat API menyimpang dari spesifikasi FHIR untuk memungkinkan kompatibilitas mundur:
nullditerima untuk kolom wajib diisi- Kode kosong diterima untuk kolom wajib diisi
- Referensi
urn:uuiddiizinkan dalam paket batch saat integritas referensial dinonaktifkan.
DSTU2
Pernyataan kesesuaian server menunjukkan bagian spesifikasi yang didukung.
- Penyimpanan dan pengambilan semua resource DSTU2 didukung, termasuk dukungan untuk elemen ekstensi. API menerima, menyimpan, dan menampilkan ekstensi pada elemen data apa pun.
- Semua metode dalam
RESTful API
yang menggunakan jenis konten JSON didukung, kecuali:
- Interaksi histori tingkat jenis dan tingkat sistem yang mengambil histori di beberapa resource tidak didukung. Histori resource hanya dapat diambil untuk satu resource dalam satu waktu.
- Interaksi batch/transaksi tidak mendukung operasi penelusuran di dalam paket.
- Validasi dan penerapan profil didukung.
- Semua
fungsi penelusuran
didukung, kecuali:
- Parameter penelusuran
Group-characteristic-value,Location-near,Location-near-distance,Bundle-composition,Bundle-message,Coverage-dependent, danCoverage-sequencetidak didukung. - Parameter penelusuran yang ditentukan pada elemen ekstensi tidak didukung.
- Parameter penelusuran yang melakukan pencocokan fonetik tidak didukung.
- Parameter hasil penelusuran
_contained,_containedType,_summary=count, dan_summary=truetidak didukung. - Parameter penelusuran khusus
_contentmenelusuri semua kolom resource yang dirujuk oleh parameter penelusuran. Parameter ini mengecualikan kolom yang tidak dapat ditelusuri. Parameter ini tidak mendukungANDeksplisit (istilah secara implisit digabungkan dengan AND) atau tanda kurung. - Parameter penelusuran khusus
_query,_filter, dan_listtidak didukung. - Parameter
_sort, saat digunakan pada kolom dengan elemen berulang, akan mengurutkan berdasarkan elemen pertama; hal ini berbeda dengan spesifikasi._sortdidukung untuk parameter penelusuran berjenisnumber,data,string,token, danquantity. - Penelusuran menggunakan metode
POSTtidak menerima parameterapplication/x-www-form-urlencodeddi isi permintaan. - Karakter pengganti (
*) didukung untuk_include, tetapi tidak didukung untuk_revinclude.
- Parameter penelusuran
Area yang tidak didukung mencakup:
- Sebagian besar operasi yang diperluas tidak diimplementasikan.
- Parameter penelusuran yang ditentukan pengguna tidak didukung untuk DSTU2.
- Jenis konten XML tidak didukung.
Area tempat API menyimpang dari spesifikasi FHIR untuk memungkinkan kompatibilitas mundur:
nullditerima untuk kolom wajib diisi- Kode kosong diterima untuk kolom wajib diisi
- Referensi
urn:uuiddiizinkan dalam paket batch saat integritas referensial dinonaktifkan.
Detail operasi di luar spesifikasi yang dipublikasikan
- Konfigurasi penyimpanan FHIR mencakup opsi untuk memberi tahu topik Pub/Sub yang ditentukan pengguna untuk semua perubahan pada resource di penyimpanan. Mekanisme notifikasi ini umum di semua penyimpanan Cloud Healthcare API dan tidak dimaksudkan untuk menggantikan fungsi Langganan FHIR (DSTU2, STU3, R4, dan R5)) functionality.
- Operasi ekspor penyimpanan FHIR ke tujuan Cloud Storage hanya menawarkan ekspor massal seluruh penyimpanan. Operasi ini bukan implementasi spesifikasi draf Data Massal FHIR.
- Operasi impor penyimpanan FHIR tidak ditentukan dalam spesifikasi.
- Operasi
Resource-purgeyang menghapus versi histori resource tidak ditentukan dalam spesifikasi. API ini dapat berubah di masa mendatang jika proses standar atau implementasi FHIR lainnya menyatu pada metode API yang berbeda untuk kasus penggunaan ini. - Endpoint
ExecuteBundlemenerima pakethistorydi v1beta1 untuk membuat versi histori resource.