FHIR için Azure API'de aramaya genel bakış
Önemli
FHIR için Azure API 30 Eylül 2026'da kullanımdan kaldırılacaktır. Bu tarihe kadar Azure Health Data Services FHIR hizmetine geçiş yapmak için geçiş stratejilerini izleyin. FHIR için Azure API'sinin kullanımdan kaldırılması nedeniyle 1 Nisan 2025'den itibaren yeni dağıtımlara izin verilmez. Azure Health Data Services FHIR hizmeti , müşterilerin FHIR, DICOM ve MedTech hizmetlerini diğer Azure hizmetleriyle tümleştirmelerle yönetmesine olanak tanıyan FHIR için Azure API'sinin gelişmiş sürümüdür.
Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR) belirtimi, FHIR® kaynakları aramanın temellerini tanımlar. Bu makale, FHIR'de kaynak arama konusunda bazı önemli yönlerde size yol gösterecektir. FHIR kaynaklarında arama hakkındaki tüm ayrıntılar için HL7 FHIR Belirtiminde Arama bölümüne bakın. Bu makale boyunca, arama söz dizimi örnekleri vereceğiz. Her arama, genellikle url'si olan FHIR sunucunuzda https://<FHIRSERVERNAME>.azurewebsites.net
olur. Örneklerde, bu URL için {{FHIR_URL}} yer tutucusunu kullanacağız.
FHIR aramaları belirli bir kaynak türüne, belirli bir bölmeye veya tüm kaynaklara karşı olabilir. FHIR'de arama yürütmenin en basit yolu bir GET
istek kullanmaktır. Örneğin, veritabanındaki tüm hastaları çekmek istiyorsanız aşağıdaki isteği kullanabilirsiniz:
GET {{FHIR_URL}}/Patient
Sorgu dizesi çok uzunsa yararlı olan kullanarak POST
da arama yapabilirsiniz. kullanarak POST
arama yapmak için, arama parametreleri form gövdesi olarak gönderilebilir. Bu, sorgu dizesinde görülmesi ve anlaşılması zor olabilecek daha uzun ve daha karmaşık sorgu parametreleri serisine olanak tanır.
Arama isteği başarılı olursa, türüne searchset
sahip bir FHIR paket yanıtı alırsınız. Arama başarısız olursa, aramanın neden başarısız olduğunu anlamanıza yardımcı olmak için içinde hata ayrıntılarını OperationOutcome
bulabilirsiniz.
Aşağıdaki bölümlerde, aramayla ilgili çeşitli yönleri ele alacağız. Bu ayrıntıları gözden geçirdikten sonra, FHIR için Azure API'sinde yapabileceğiniz arama örnekleri içeren örnekler sayfamıza bakın.
Arama parametreleri
Arama yaptığınızda, kaynağın çeşitli özniteliklerine göre arama yaparsınız. Bu öznitelikler, arama parametreleri olarak adlandırılır. Her kaynağın bir dizi tanımlı arama parametresi vardır. Arama parametresini başarıyla aramanız için veritabanında tanımlanmalı ve dizine alınmalıdır.
Her arama parametresinin tanımlı veri türleri vardır. Çeşitli veri türleri için destek aşağıda özetlenmiştir:
Uyarı
Zincirleme arama ile FHIR için Azure API'sinde _sort kullanırken şu anda bir sorun vardır. Daha fazla bilgi için bkz. açık kaynak sorunu #2344. Bu, Aralık 2021'de bir sürüm sırasında çözülecektir.
Arama parametresi türü | FHIR için Azure API | Azure Health Veri Hizmetleri'nde FHIR hizmeti | Yorum |
---|---|---|---|
Numara | Evet | Evet | |
tarih | Evet | Evet | |
Dize | Yes | Evet | |
token | Evet | Evet | |
reference | Evet | Evet | |
Kompozit | Kısmi | Kısmi | Desteklenen bileşik türlerin listesi bu makalenin devamında açıklanmıştır |
miktardan fazla | Evet | Evet | |
uri | Evet | Evet | |
Özel | Hayır | Hayır |
Yaygın arama parametreleri
Tüm kaynaklara uygulanan yaygın arama parametreleri vardır. Bunlar aşağıda ve FHIR için Azure API'sinde destekleriyle birlikte listelenmiştir:
Ortak arama parametresi | FHIR için Azure API | Azure Health Veri Hizmetleri'nde FHIR hizmeti | Yorum |
---|---|---|---|
_id | Evet | Evet | |
_Lastupdated | Evet | Evet | |
_Etiket | Evet | Evet | |
_Türü | Evet | Evet | |
_Güvenlik | Evet | Evet | |
_Profil | Evet | Evet | |
_Hsa | Kısmi | Evet | _has desteği, FHIR için Azure API'de MVP'de ve Azure Cosmos DB tarafından desteklenen OSS sürümündedir. Diğer ayrıntılar aşağıdaki zincirleme bölümünde yer almaktadır. |
_Sorgu | Hayır | Hayır | |
_Filtre | Hayır | Hayır | |
_Liste | Hayır | Hayır | |
_Metin | Hayır | Hayır | |
_Içerik | Hayır | Hayır |
Kaynağa özgü parametreler
FHIR için Azure API ile, FHIR belirtimi tarafından tanımlanan neredeyse tüm kaynağa özgü arama parametrelerini destekliyoruz. Desteklemediğimiz yalnızca arama parametreleri aşağıdaki bağlantılarda bulunabilir:
Aşağıdaki istekle FHIR Yetenek Deyimi'nde arama parametreleri için geçerli desteği de görebilirsiniz:
GET {{FHIR_URL}}/metadata
Yetenek deyiminde arama parametrelerini görmek için, her kaynağın arama parametrelerini görmek ve CapabilityStatement.rest.searchParam
tüm kaynakların arama parametrelerini bulmak için adresine gidinCapabilityStatement.rest.resource.searchParam
.
Dekont
FHIR için Azure API, FHIR belirtimi tarafından tanımlanmayan arama parametrelerini otomatik olarak oluşturmaz veya dizine almaz. Ancak, kendi arama parametrelerinizi tanımlamanız için destek sağlıyoruz.
Bileşik arama parametreleri
Bileşik arama, değer çiftleri üzerinde arama yapmanızı sağlar. Örneğin, kişinin 60 inç olduğu bir yükseklik gözlemi arıyorsanız, gözlemin tek bir bileşeninin yükseklik kodunu ve 60 değerini içerdiğinden emin olmak istersiniz. Yalnızca farklı bileşen bölümlerinde, gözlemde 60 değerine ve yükseklik koduna uygun girdiler olsa bile, 60 ve yüksekliği 48 olan bir ağırlığın depolandığı bir gözlem almak istemezsiniz.
FHIR için Azure API ile aşağıdaki arama parametresi türü eşleştirmelerini destekliyoruz:
- Başvuru, Belirteç
- Belirteç, Tarih
- Belirteç, Sayı, Sayı
- Belirteç, Miktar
- Belirteç, Dize
- Belirteç, Belirteç
Daha fazla bilgi için bkz. HL7 Bileşik Arama Parametreleri.
Dekont
Bileşik arama parametreleri FHIR belirtimi başına değiştiricileri desteklemez.
Değiştiriciler ve ön ekler
Değiştiriciler arama parametresini değiştirmenize olanak sağlar. Aşağıda tüm FHIR değiştiricilerine ve FHIR için Azure API'sindeki desteğe genel bir bakış verilmiştir.
Değiştiriciler | FHIR için Azure API | Azure Health Veri Hizmetleri'nde FHIR hizmeti | Yorum |
---|---|---|---|
:Eksik | Evet | Evet | |
:Tam | Evet | Evet | |
:Içerir | Evet | Evet | |
:Metin | Evet | Evet | |
:type (başvuru) | Evet | Evet | |
:Değil | Evet | Evet | |
:below (uri) | Evet | Evet | |
:above (uri) | Evet | Evet | |
:in (belirteç) | Hayır | Hayır | |
:below (belirteç) | Hayır | Hayır | |
:above (belirteç) | Hayır | Hayır | |
:not-in (belirteç) | Hayır | Hayır |
Belirli bir siparişe (sayılar, tarihler ve miktarlar) sahip arama parametreleri için, eşleşmeleri bulmaya yardımcı olması için parametrede bir ön ek kullanabilirsiniz. FHIR için Azure API tüm ön ekleri destekler.
Arama sonucu parametreleri
Döndürülen kaynakların yönetilmesine yardımcı olmak için aramanızda kullanabileceğiniz arama sonucu parametreleri vardır. Arama sonucu parametrelerinin her birini kullanma hakkında ayrıntılı bilgi için HL7 web sitesine bakın.
Arama sonucu parametreleri | FHIR için Azure API | Azure Health Veri Hizmetleri'nde FHIR hizmeti | Yorum |
---|---|---|---|
_Öğe | Evet | Evet | |
_Sayısı | Evet | Evet | _count 1000 kaynakla sınırlıdır. 1000'den yüksek bir değere ayarlanırsa yalnızca 1000 döndürülür ve pakette bir uyarı döndürülür. |
_Içerir | Evet | Evet | Dahil edilen öğeler 100 ile sınırlıdır. Azure Cosmos DB'de PaaS ve OSS'de _include :yineleme desteği (#2137) içermez. |
_revinclude | Evet | Evet | Dahil edilen öğeler 100 ile sınırlıdır. Azure Cosmos DB'de PaaS ve OSS'de _revinclude :iterate desteği (#2137) içermez. Hatalı istek için de yanlış durum kodu var #1319 |
_Özet | Evet | Evet | |
_Toplam | Kısmi | Kısmi | _total=none ve _total=accurate |
_Sıralama | Kısmi | Kısmi | sort=_lastUpdated, FHIR için Azure API'de ve FHIR hizmetinde desteklenir. FHIR ve OSS için Azure API'sinde 20 Nisan 2021'den sonra oluşturulan Azure Cosmos DB veritabanları için ad, soyadı, doğum tarihi ve klinik tarihte sıralama desteklenir. |
_Bulunan | Hayır | Hayır | |
_containedType | Hayır | Hayır | |
_Puan | Hayır | No. |
Dekont
Varsayılan olarak _sort
kaydı artan düzende sıralar. Azalan düzende sıralamak için ön eki '-'
kullanabilirsiniz. Buna ek olarak, FHIR hizmeti ve FHIR için Azure API tek seferde yalnızca tek bir alana göre sıralamanıza olanak sağlar.
Varsayılan olarak, FHIR için Azure API'si geçici işleme olarak ayarlanır. Bu, sunucunun bilinmeyen veya desteklenmeyen parametreleri yoksayacağı anlamına gelir. Katı işleme kullanmak istiyorsanız Tercih üst bilgisini kullanabilir ve ayarlayabilirsinizhandling=strict
.
Zincirleme ve ters zincirleme arama
Zincirleme arama, başka bir kaynak tarafından başvuruda bulunan bir kaynakta arama parametresi kullanarak arama yapmanızı sağlar. Örneğin, hastanın adının Jane olduğu karşılaşmaları bulmak istiyorsanız şunu kullanın:
GET {{FHIR_URL}}/Encounter?subject:Patient.name=Jane
Benzer şekilde ters zincirleme arama da yapabilirsiniz. Bu sayede kendilerine başvuran kaynaklarla ilgili ölçüt belirterek aradığınız kaynaklara ulaşabilirsiniz. Zincirleme ve ters zincirlenmiş arama örnekleri için FHIR arama örnekleri sayfasına bakın.
Dekont
FHIR için Azure API'de ve Azure Cosmos DB tarafından desteklenen açık kaynak zincirlenmiş ve ters zincirlenmiş aramalar için gereken her alt sorgunun yalnızca 1000 öğe döndüreceği bir sınırlama vardır. 1000'den fazla öğe bulunduysa şu hata iletisini alırsınız: "Zincirlenmiş ifadedeki alt sorgular 1000'den fazla sonuç döndüremez, lütfen daha seçmeli ölçütler kullanın." Başarılı bir sorgu elde etmek için aradığınız şey hakkında daha ayrıntılı bilgi sahibi olmanız gerekir.
Sayfalandırma
Yukarıda belirtildiği gibi, bir aramanın sonuçları sayfalanmış bir paket olacaktır. Varsayılan olarak, arama sayfa başına 10 sonuç döndürür, ancak belirterek _count
bu artırılabilir (veya azaltılabilir). Paket içinde, aramanın geçerli sonucunu içeren bir kendi kendine bağlantı olacaktır. Başka eşleşmeler varsa paket bir sonraki bağlantıyı içerir. Sonraki sonuç sayfalarını almak için sonraki bağlantıyı kullanmaya devam edebilirsiniz. _count
1000 veya daha az öğeyle sınırlıdır.
Paketteki sonraki bağlantının devam belirteci boyut sınırı 3 KB'tır. "x-ms-documentdb-responsecontinuationtokenlimitinkb" üst bilgisini kullanarak 1 ile 3 KB arasında devamlılık belirteci boyutunu ayarlama esnekliğine sahipsiniz.
Şu anda FHIR için Azure API yalnızca paketlerde bir sonraki bağlantıyı destekler ve ilk, son veya önceki bağlantıları desteklemez.
Sonraki adımlar
Aramanın temellerini öğrendiğinize göre, farklı arama parametreleri, değiştiriciler ve diğer FHIR arama senaryolarını kullanarak arama hakkında ayrıntılı bilgi için arama örnekleri sayfasına bakın.
FHIR®, HL7'nin tescilli ticari markasıdır ve HL7'nin izniyle kullanılır.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin