

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Parameter pencarian FHIR R4 untuk HealthLake
<a name="reference-fhir-search-parameters"></a>

Gunakan [https://hl7.org/fhir/R4/http.html#search](https://hl7.org/fhir/R4/http.html#search)interaksi FHIR untuk mencari satu set sumber daya FHIR di penyimpanan HealthLake data berdasarkan beberapa kriteria filter. `search`Interaksi dapat dilakukan dengan menggunakan permintaan `GET` atau `POST` permintaan. Untuk pencarian yang melibatkan informasi identitas pribadi (PII) atau informasi kesehatan yang dilindungi (PHI), disarankan untuk menggunakan `POST` permintaan, karena PII dan PHI ditambahkan sebagai bagian dari badan permintaan dan dienkripsi dalam perjalanan.

**catatan**  
`search`Interaksi FHIR yang dijelaskan dalam Bab ini dibangun sesuai dengan standar HL7 FHIR R4 untuk pertukaran data perawatan kesehatan. Karena merupakan representasi dari layanan HL7 FHIR, itu tidak ditawarkan melalui AWS CLI dan AWS SDKs. Untuk informasi selengkapnya, lihat [https://hl7.org/fhir/R4/http.html#search](https://hl7.org/fhir/R4/http.html#search)di dokumentasi **FHIR R4 RESTful API**.  
Anda juga dapat menanyakan penyimpanan HealthLake data dengan SQL menggunakan Amazon Athena. Untuk informasi selengkapnya, lihat Mengintegrasikan.

HealthLake mendukung subset parameter pencarian FHIR R4 berikut. Untuk informasi selengkapnya, lihat [Parameter pencarian FHIR R4 untuk HealthLake](#reference-fhir-search-parameters).

## Jenis parameter pencarian yang didukung
<a name="search-parameter-types"></a>

Tabel berikut menunjukkan jenis parameter pencarian yang didukung di HealthLake.


**Jenis parameter pencarian yang didukung**  

| Parameter pencarian  | Deskripsi | 
| --- | --- | 
| \$1id | Id sumber daya (bukan URL lengkap) | 
| \$1LastUpdated | Tanggal terakhir diperbarui. Server memiliki kebijaksanaan pada presisi batas. | 
| \$1tag | Cari berdasarkan tag sumber daya. | 
| \$1profil | Cari semua sumber daya yang ditandai dengan profil. | 
| \$1keamanan | Cari pada label keamanan yang diterapkan ke sumber daya ini. | 
| \$1sumber | Cari dari mana sumber daya berasal. | 
| \$1teks | Cari di narasi sumber daya. | 
| createdAt | Cari di ekstensi kustom CreateDat. | 

**catatan**  
Parameter pencarian berikut hanya didukung untuk datastores yang dibuat setelah 09 Desember 2023: \$1security, \$1source, \$1text, createDat.

Tabel berikut menunjukkan contoh cara memodifikasi string kueri berdasarkan tipe data tertentu untuk jenis sumber daya tertentu. Untuk kejelasan, karakter khusus di kolom contoh belum dikodekan. Untuk membuat kueri yang berhasil, pastikan bahwa string kueri telah dikodekan dengan benar.


**Cari contoh parameter**  

| Cari Jenis Parameter | Detail  | Contoh | 
| --- | --- | --- | 
|  Bilangan  | Mencari nilai numerik dalam sumber daya tertentu. Angka-angka signifikan diamati. Jumlah digit signifikan spesifik berdasarkan nilai parameter pencarian, tidak termasuk nol di depan. Awalan perbandingan diperbolehkan. |  `[parameter]=100` `[parameter]=1e2` `[parameter]=lt100`  | 
|  Tanggal/ DateTime  |  Mencari tanggal atau waktu tertentu. Format yang diharapkan adalah `yyyy-mm-ddThh:mm:ss[Z\|(+\|-)hh:mm]` tetapi dapat bervariasi. Menerima tipe data berikut:`date`,,`dateTime`, `instant``Period`, dan`Timing`. Untuk detail selengkapnya menggunakan tipe data ini dalam penelusuran, lihat [tanggal](https://www.hl7.org/fhir/search.html#date) dalam dokumentasi **FHIR R4 API RESTful **. Awalan perbandingan diperbolehkan.  |  `[parameter]=eq2013-01-14` `[parameter]=gt2013-01-14T10:00` `[parameter]=ne2013-01-14`  | 
|  String  |  Mencari urutan karakter dengan cara yang peka huruf besar/kecil. Mendukung keduanya `HumanName` dan `Address` jenis. Untuk lebih jelasnya, lihat entri [tipe HumanName data](https://www.hl7.org/fhir/datatypes.html#HumanName) dan entri [tipe `Address` data](https://www.hl7.org/fhir/datatypes.html#Address) dalam dokumentasi **FHIR R4**. Pencarian lanjutan didukung menggunakan `:text` pengubah.  |  `[base]/Patient?given=eve` `[base]/Patient?given:contains=eve`  | 
|  Token  |  Mencari close-to-exact kecocokan terhadap serangkaian karakter, sering dibandingkan dengan sepasang nilai kode medis. Sensitivitas kasus ditautkan ke sistem kode yang digunakan saat membuat kueri. Kueri berbasis subsumption dapat membantu mengurangi masalah yang terkait dengan sensitivitas huruf besar. Untuk kejelasan `\|` belum dikodekan.  |  `[parameter]=[system]\|[code]`Di sini `[system]` mengacu pada sistem pengkodean, dan `[code]` mengacu pada nilai kode yang ditemukan dalam sistem tertentu. `[parameter]=[code]`: Di sini masukan Anda akan cocok dengan kode atau sistem. `[parameter]=\|[code]`: Di sini masukan Anda akan cocok dengan kode, dan properti sistem tidak memiliki pengenal.  | 
|  Komposit  |  Mencari beberapa parameter dalam satu jenis sumber daya, menggunakan pengubah `$` dan `,` operasi. Awalan perbandingan diperbolehkan.  |  `/Patient?language=FR,NL&language=EN` `Observation?component-code-value-quantity=http://loinc.org\|8480-6$lt60` `[base]/Group?characteristic-value=gender$mixed`  | 
|  Kuantitas  |  Mencari nomor, sistem, dan kode sebagai nilai. Diperlukan nomor, tetapi sistem dan kode bersifat opsional. Berdasarkan tipe data Kuantitas. Untuk lebih jelasnya, lihat [Kuantitas](https://www.hl7.org/fhir/datatypes.html#Quantity) dalam dokumentasi **FHIR R4**. Menggunakan sintaks yang diasumsikan berikut `[parameter]=[prefix][number]\|[system]\|[code]`  |  `[base]/Observation?value-quantity=5.4\|http://unitsofmeasure.org\|mg` `[base]/Observation?value-quantity=5.4\|http://unitsofmeasure.org\|mg` `[base]/Observation?value-quantity=5.4\|http://unitsofmeasure.org\|mg` `[base]/Observation?value-quantity=le5.4\|http://unitsofmeasure.org\|mg`  | 
|  Referensi  |  Mencari referensi ke sumber daya lain.  |  `[base]/Observation?subject=Patient/23` `test`  | 
|  URI  |  Mencari serangkaian karakter yang secara jelas mengidentifikasi sumber daya tertentu.  |  `[base]/ValueSet?url=http://acme.org/fhir/ValueSet/123`  | 
|  Khusus  |  Pencarian berdasarkan ekstensi NLP medis terintegrasi.  | 

## Parameter pencarian lanjutan yang didukung oleh HealthLake
<a name="search-parameters-advanced"></a>

HealthLake mendukung parameter pencarian lanjutan berikut.


| Nama | Deskripsi | Contoh | Kemampuan | 
| --- | --- | --- | --- | 
| \$1include | Digunakan untuk meminta agar sumber daya tambahan dikembalikan dalam permintaan pencarian. Ia mengembalikan sumber daya yang direferensikan oleh instance sumber daya target. | Encounter?\$1include=Encounter:subject |   | 
| \$1revinclude | Digunakan untuk meminta agar sumber daya tambahan dikembalikan dalam permintaan pencarian. Ia mengembalikan sumber daya yang mereferensikan contoh sumber daya utama. | Patient?\$1id=patient-identifier&\$1revinclude=Encounter:patient |   | 
| \$1summary | Ringkasan dapat digunakan untuk meminta subset dari sumber daya. | Patient?\$1summary=text | Parameter ringkasan berikut didukung:\$1summary=true,\$1summary=false,\$1summary=text,\$1summary=data. | 
| \$1elements | Minta sekumpulan elemen tertentu yang akan dikembalikan sebagai bagian dari sumber daya dalam hasil pencarian. | Patient?\$1elements=identifier,active,link |   | 
| \$1total | Mengembalikan jumlah sumber daya yang cocok dengan parameter pencarian.  | Patient?\$1total=accurate | Support\$1total=accurate,\$1total=none. | 
| \$1sort | Tunjukkan urutan pengurutan hasil pencarian yang dikembalikan menggunakan daftar yang dipisahkan koma. -Awalan dapat digunakan untuk aturan pengurutan apa pun dalam daftar yang dipisahkan koma untuk menunjukkan urutan menurun.  | Observation?\$1sort=status,-date | Support mengurutkan berdasarkan bidang dengan tipeNumber, String, Quantity, Token, URI, Reference. Urutkan berdasarkan hanya Date didukung untuk penyimpanan data yang dibuat setelah 09 Desember 2023. Support hingga 5 aturan pengurutan. | 
| \$1count | Kontrol berapa banyak sumber daya yang dikembalikan per halaman bundel pencarian. | Patient?\$1count=100 | Ukuran halaman maksimum adalah 100. | 
| chaining | Cari elemen sumber daya yang direferensikan. .Mengarahkan pencarian dirantai ke elemen dalam sumber daya yang direferensikan. | DiagnosticReport?subject:Patient.name=peter |   | 
| reverse chaining (\$1has) | Cari sumber daya berdasarkan elemen sumber daya yang merujuknya.  | Patient?\$1has:Observation:patient:code=1234-5 |   | 

`_include`

Menggunakan `_include` dalam kueri penelusuran memungkinkan sumber daya FHIR tambahan yang ditentukan juga dikembalikan. Gunakan `_include` untuk menyertakan sumber daya yang ditautkan ke depan. 

**Example — `_include` Untuk digunakan untuk menemukan pasien atau kelompok pasien yang telah didiagnosis dengan batuk**  
Anda akan mencari pada jenis `Condition` sumber daya yang menentukan kode diagnostik untuk batuk, dan kemudian menggunakan `_include` tentukan bahwa Anda ingin diagnosis itu dikembalikan juga. `subject` Dalam tipe `Condition` sumber daya `subject` mengacu pada jenis sumber daya pasien atau tipe sumber daya grup.  
Untuk kejelasan, karakter khusus dalam contoh belum dikodekan. Untuk membuat kueri yang berhasil, pastikan bahwa string kueri telah dikodekan dengan benar.  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/
Condition?code=49727002&_include=Condition:subject
```

`_include:iterate`Pengubah

`_include:iterate`Pengubah memungkinkan penyertaan rekursif sumber daya yang direferensikan di dua tingkatan. Misalnya, 

```
GET /ServiceRequest?identifier=025C0931195&_include=ServiceRequest:requester&_include:iterate=PractitionerRole:practitioner
```

akan mengembalikan ServiceRequest, yang terkait PractitionerRole (melalui referensi pemohon), dan kemudian secara rekursif menyertakan Praktisi yang direferensikan oleh itu. PractitionerRole Pengubah ini tersedia untuk semua jenis sumber daya di HealthLake.

`_include=*`Pengubah

`_include=*`Pengubah adalah wildcard yang secara otomatis menyertakan semua sumber daya yang direferensikan langsung oleh hasil pencarian. Misalnya, 

```
GET /ServiceRequest?specimen.accession=12345&_include=*
```

akan mengembalikan pencocokan ServiceRequest bersama dengan semua sumber daya yang dirujukannya (seperti Pasien, Praktisi, Spesimen, dll.) Tanpa perlu menentukan setiap jalur referensi secara individual. Pengubah ini tersedia untuk semua jenis sumber daya di HealthLake.

`_revinclude`

Menggunakan `_revinclude` dalam kueri penelusuran memungkinkan sumber daya FHIR tambahan yang ditentukan juga dikembalikan. Gunakan `_revinclude` untuk menyertakan sumber daya yang ditautkan ke belakang.

**Example — Untuk digunakan `_revinclude` untuk memasukkan jenis sumber daya Pertemuan dan Pengamatan terkait yang terkait dengan Pasien tertentu**  
Untuk melakukan pencarian ini, pertama-tama Anda akan menentukan individu `Patient` dengan menentukan pengenal mereka di parameter `_id` pencarian. Kemudian Anda akan menentukan sumber daya FHIR tambahan menggunakan struktur `Encounter:patient` dan`Observation:patient`.  
Untuk kejelasan, karakter khusus dalam contoh belum dikodekan. Untuk membuat kueri yang berhasil, pastikan bahwa string kueri telah dikodekan dengan benar.  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/
Patient?_id=patient-identifier&_revinclude=Encounter:patient&_revinclude=Observation:patient
```

`_summary`

Menggunakan `_summary` dalam permintaan pencarian memungkinkan pengguna untuk meminta subset dari sumber daya FHIR. Ini dapat berisi salah satu nilai berikut:`true, text, data, false`. Nilai lainnya akan diperlakukan sebagai tidak valid. Sumber daya yang dikembalikan akan ditandai dengan `'SUBSETTED'` meta.tag, untuk menunjukkan bahwa sumber daya tidak lengkap. 
+ `true`: Kembalikan semua elemen yang didukung yang ditandai sebagai 'ringkasan' dalam definisi dasar sumber daya.
+ `text`: Kembalikan hanya elemen 'teks', 'id', 'meta', dan hanya elemen wajib tingkat atas.
+ `data`: Kembalikan semua bagian kecuali elemen 'teks'.
+ `false`: Kembalikan semua bagian sumber daya

Dalam satu permintaan pencarian, `_summary=text` tidak dapat digabungkan dengan `_include` atau parameter `_revinclude` pencarian. 

**Example — Dapatkan elemen “teks” dari sumber daya Pasien di penyimpanan data.**  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_summary=text
```

`_elements`

Menggunakan `_elements` dalam permintaan pencarian memungkinkan untuk elemen sumber daya FHIR tertentu yang akan diminta. Sumber daya yang dikembalikan akan ditandai dengan `'SUBSETTED'` meta.tag, untuk menunjukkan bahwa sumber daya tidak lengkap. 

`_elements`Parameter terdiri dari daftar nama elemen dasar yang dipisahkan koma seperti elemen yang didefinisikan pada tingkat root dalam sumber daya. Hanya elemen yang terdaftar yang akan dikembalikan. Jika nilai `_elements` parameter mengandung elemen yang tidak valid, server akan mengabaikannya dan mengembalikan elemen wajib dan elemen yang valid. 

`_elements`tidak akan berlaku untuk sumber daya yang disertakan (sumber daya yang dikembalikan yang mode pencariannya`include`).

Dalam satu permintaan pencarian, `_elements` tidak dapat digabungkan dengan parameter `_summary` pencarian. 

**Example — Dapatkan elemen “pengenal”, “aktif”, “tautan” dari sumber daya Pasien di penyimpanan HealthLake data Anda.**  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_elements=identifier,active,link
```

`_total`

Menggunakan `_total` dalam permintaan pencarian akan mengembalikan jumlah sumber daya yang cocok dengan parameter pencarian yang diminta. HealthLake akan mengembalikan jumlah total sumber daya yang cocok (sumber daya yang dikembalikan yang mode pencariannya`match`) dalam `Bundle.total` respons pencarian. 

`_total`mendukung`accurate`, nilai `none` parameter. `_total=estimate`tidak didukung. Nilai lainnya akan diperlakukan sebagai tidak valid. `_total`tidak berlaku untuk sumber daya yang disertakan (sumber daya yang dikembalikan yang mode pencariannya`include`). 

**Example — Dapatkan jumlah total sumber daya Pasien di penyimpanan data:**  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_total=accurate
```

`_sort`

Menggunakan `_sort` dalam permintaan pencarian mengatur hasil dalam urutan tertentu. Hasilnya diurutkan berdasarkan daftar aturan pengurutan yang dipisahkan koma dalam urutan prioritas. Aturan pengurutan harus berupa parameter pencarian yang valid. Nilai lainnya akan diperlakukan sebagai tidak valid. 

Dalam satu permintaan pencarian, Anda dapat menggunakan hingga 5 parameter pencarian pengurutan. Anda secara opsional dapat menggunakan `-` awalan untuk menunjukkan urutan menurun. Server akan mengurutkan urutan menaik secara default. 

Jenis parameter pencarian sortir yang didukung adalah:`Number, String, Date, Quantity, Token, URI, Reference`. Jika parameter pencarian mengacu pada elemen yang bersarang, parameter pencarian ini tidak didukung untuk pengurutan. Misalnya, pencarian pada 'nama' dari tipe sumber daya Pasien mengacu pada elemen Patient.name dengan tipe HumanName data dianggap sebagai bersarang. Dengan demikian, urutkan sumber daya Pasien dengan 'nama' tidak didukung.

**Example — Dapatkan sumber daya Pasien di penyimpanan data dan urutkan berdasarkan tanggal lahir dalam urutan menaik:**  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_sort=birthdate
```

`_count`

Parameter `_count` didefinisikan sebagai instruksi ke server mengenai berapa banyak sumber daya yang harus dikembalikan dalam satu halaman.

Ukuran halaman maksimum adalah 100. Nilai apa pun yang lebih besar dari 100 tidak valid. `_count=0`tidak didukung.

**Example — Cari sumber daya Pasien dan atur ukuran halaman pencarian ke 25:**  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_count=25
```

`Chaining and Reverse Chaining(_has)`

Chaining dan reverse chaining di FHIR memberikan cara yang lebih efisien dan ringkas untuk mendapatkan data yang saling berhubungan, mengurangi kebutuhan akan beberapa kueri terpisah dan membuat pengambilan data lebih nyaman bagi pengembang dan pengguna.

Jika ada tingkat rekursi yang mengembalikan lebih dari 100 hasil, HealthLake akan mengembalikan 4xx untuk melindungi penyimpanan data agar tidak kelebihan beban dan menyebabkan beberapa paginasi.

**Example — Chaining - Mendapat semua DiagnosticReport yang merujuk pada Pasien di mana nama Pasien adalah peter.**  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/DiagnosticReport?subject:Patient.name=peter
```

**Example — Reverse Chaining - Dapatkan sumber daya Pasien, di mana sumber daya pasien dirujuk oleh setidaknya satu Observasi di mana pengamatan memiliki kode 1234, dan di mana Observasi mengacu pada sumber daya pasien dalam parameter pencarian pasien.**  
  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_has:Observation:patient:code=1234
```

## Pengubah pencarian yang didukung
<a name="search-parameter-modifiers"></a>

Pengubah pencarian digunakan dengan bidang berbasis string. Semua pengubah pencarian HealthLake menggunakan logika berbasis Boolean. Misalnya, Anda dapat menentukan `:contains` untuk menentukan bahwa bidang string yang lebih besar harus menyertakan string kecil agar dapat disertakan dalam hasil pencarian Anda.


**Pengubah pencarian yang didukung**  

| Pengubah pencarian | Tipe | 
| --- | --- | 
| :hilang | Semua parameter kecuali Composite | 
| :tepat | String | 
| :berisi | String | 
| :tidak | Token | 
| :teks | Token | 
| :pengidentifikasi | Referensi | 
| :di bawah | URI | 

## Komparator pencarian yang didukung
<a name="search-comparators"></a>

Anda dapat menggunakan pembanding pencarian untuk mengontrol sifat pencocokan dalam pencarian. Anda dapat menggunakan komparator saat mencari bidang angka, tanggal, dan kuantitas. Tabel berikut mencantumkan pembanding pencarian dan definisinya yang didukung oleh HealthLake.


**Komparator pencarian yang didukung**  

|  Cari pembanding  |  Deskripsi  | 
| --- | --- | 
| persamaan | Nilai untuk parameter dalam sumber daya sama dengan nilai yang diberikan. | 
| ne | Nilai untuk parameter dalam sumber daya tidak sama dengan nilai yang diberikan. | 
| gt | Nilai untuk parameter dalam sumber daya lebih besar dari nilai yang diberikan. | 
| lt | Nilai untuk parameter dalam sumber daya kurang dari nilai yang diberikan. | 
| ge | Nilai untuk parameter dalam sumber daya lebih besar atau sama dengan nilai yang diberikan. | 
| le | Nilai untuk parameter dalam sumber daya kurang atau sama dengan nilai yang diberikan. | 
| sa | Nilai untuk parameter dalam sumber daya dimulai setelah nilai yang diberikan. | 
| eb | Nilai untuk parameter dalam sumber daya berakhir sebelum nilai yang diberikan. | 

## Parameter pencarian FHIR tidak didukung oleh HealthLake
<a name="search-parameters-unsupported"></a>

HealthLake mendukung semua parameter pencarian FHIR dengan pengecualian yang tercantum dalam tabel berikut. Untuk daftar lengkap parameter pencarian FHIR, lihat registri [parameter pencarian FHIR](https://hl7.org/fhir/R4/searchparameter-registry.html). 


**Parameter pencarian yang tidak didukung**  

|  |  | 
| --- |--- |
| Komposisi bundel | Lokasi-dekat | 
| Pengenal bundel | C onsent-source-reference | 
| Pesan bundel | Kontrak-pasien | 
| Jenis bundel | Konten sumber daya | 
| Bundle-stempel waktu | Permintaan sumber daya | 