Megosztás a következőn keresztül:


Az FHIR-keresés áttekintése

A Fast Healthcare Interoperability Resources (FHIR®) specifikáció egy API-t határoz meg az erőforrások FHIR-kiszolgálói adatbázisban való lekérdezéséhez. Ez a cikk végigvezeti az FHIR-ben lévő adatok lekérdezésének főbb szempontjain. Az FHIR keresési API-val kapcsolatos részletes információkért tekintse meg a HL7 FHIR Search dokumentációját.

Ebben a cikkben az FHIR keresési szintaxisát mutatjuk be a példa API-hívásokban a {{FHIR_URL}} helyőrzővel, amely az FHIR-kiszolgáló URL-címét jelöli. Ha az FHIR szolgáltatás az Azure Health Data Services szolgáltatásban található, ez az URL-cím lenne https://<WORKSPACE-NAME>-<FHIR-SERVICE-NAME>.fhir.azurehealthcareapis.com.

Az FHIR-keresések egy adott erőforrástípusra, egy adott rekeszre vagy az FHIR-kiszolgáló adatbázisának összes erőforrására vonatkozhatnak. A keresés FHIR-ben való végrehajtásának legegyszerűbb módja egy GET kérés használata. Ha például le szeretné kérni az adatbázis összes Patient erőforrását, az alábbi kérést használhatja.

GET {{FHIR_URL}}/Patient

A keresést a következővel is végezheti POSTel: A kereséshez POSTa keresési paraméterek a kérelem törzsében jelennek meg. Ez megkönnyíti a hosszabb, összetettebb paramétersorozatú lekérdezések küldését.

POST GETHa a keresési kérelem sikeres, vagy egy FHIR-csomagot searchset kap, amely tartalmazza a keresésből visszaadott erőforráspéldányokat. Ha a keresés sikertelen, a hiba részleteit egy OperationOutcome válaszban találja.

A következő szakaszokban az FHIR-ben található erőforrások lekérdezésének különböző szempontjait tárgyaljuk. Miután áttekintette ezeket a témaköröket, tekintse meg az FHIR keresési minták oldalát, amely példákat tartalmaz a különböző FHIR keresési módszerekre.

Keresési paraméterek

Ha az FHIR-ben végez keresést, az adatbázisban olyan erőforrásokat keres, amelyek megfelelnek bizonyos feltételeknek. Az FHIR API számos keresési paramétert határoz meg a keresési feltételek finomhangolásához. Az FHIR minden erőforrása elemkészletként tartalmazza az információkat, a keresési paraméterek pedig az ezekben az elemekben lévő információk lekérdezéséhez működnek. Ha egy FHIR keresési API-hívásban pozitív egyezés található a kérelem keresési paraméterei és az erőforráspéldányban tárolt megfelelő elemértékek között, az FHIR-kiszolgáló visszaad egy csomagot, amely tartalmazza azokat az erőforráspéldányokat, amelyek elemei megfelelnek a keresési feltételeknek.

Minden keresési paraméter esetében az FHIR specifikáció határozza meg a használható adattípust . Az FHIR szolgáltatásban a különböző adattípusok támogatása alább látható.

Keresési paraméter típusa FHIR szolgáltatás az Azure Health Data Servicesben Azure API for FHIR Megjegyzés
szám Igen Igen
dátum: Igen Igen
sztring Igen Igen
jogkivonat Igen Igen
utalás Igen Igen
Kompozit Részleges Részleges A támogatott összetett típusok listája ebben a cikkben található.
mennyiség Igen Igen
Uri Igen Igen
speciális Nem Nem

Gyakori keresési paraméterek

Vannak gyakori keresési paraméterek, amelyek az FHIR összes erőforrására vonatkoznak . Ezek a következők, valamint az FHIR szolgáltatásban nyújtott támogatásuk.

Gyakori keresési paraméter FHIR szolgáltatás az Azure Health Data Servicesben Azure API for FHIR Megjegyzés
_id Igen Igen
_lastUpdated Igen Igen
_tag Igen Igen
_type Igen Igen
_security Igen Igen
_profile Igen Igen
_has Igen Igen
_query Nem Nem
_filter Nem Nem
_list Nem Nem
_text Nem Nem
_content Nem Nem

Erőforrás-specifikus paraméterek

Az Azure Health Data Services FHIR szolgáltatása szinte minden , az FHIR specifikációban meghatározott erőforrás-specifikus keresési paramétert támogat. A nem támogatott keresési paraméterek az alábbi hivatkozásokon találhatók:

A keresési paraméterek aktuális támogatását az FHIR képességkimutatásban is láthatja a következő kéréssel:

GET {{FHIR_URL}}/metadata

A képességkimutatásban támogatott keresési paraméterek megtekintéséhez keresse meg CapabilityStatement.rest.resource.searchParam az erőforrás-specifikus keresési paramétereket, valamint CapabilityStatement.rest.searchParam az összes erőforrásra vonatkozó keresési paramétereket.

Feljegyzés

Az Azure Health Data Services FHIR szolgáltatása nem indexeli automatikusan az alap FHIR-specifikációban nem definiált keresési paramétereket. Az FHIR szolgáltatás támogatja az egyéni keresési paramétereket.

Összetett keresési paraméterek

Az FHIR összetett keresései lehetővé teszik az elempárok logikailag csatlakoztatott egységekként való keresését. Ha például olyan megfigyeléseket keres, amelyekben a beteg magassága meghaladta a 60 hüvelyket, győződjön meg arról, hogy a megfigyelés egyetlen tulajdonsága tartalmazza a magassági kódot és a 60 hüvelyknél nagyobb értéket (az értéknek csak a magasságra kell vonatkoznia). Például nem szeretne pozitív egyezést egy megfigyelésen a magasságkóddal és a kar hossza 60 hüvelyknél nagyobb kóddal. Az összetett keresési paraméterek megakadályozzák ezt a problémát, ha előre megadott elempárokra keresnek, amelyeknek az értékeknek meg kell felelniük a pozitív egyezés keresési feltételeinek.

Az Azure Health Data Services FHIR szolgáltatása a következő keresési paramétertípus-párosítást támogatja összetett keresésekhez.

  • Hivatkozás, jogkivonat
  • Jogkivonat, dátum
  • Jogkivonat, szám, szám
  • Token, Quantity
  • Jogkivonat, sztring
  • Jogkivonat, jogkivonat

További információkért tekintse meg a HL7 Összetett keresési paraméterek dokumentációját .

Feljegyzés

Az összetett keresési paraméterek nem támogatják a módosítókat az FHIR-specifikációnak megfelelően.

Módosítók és előtagok

A módosítók lehetővé teszik a keresési paraméterek további feltételekkel való minősítését. Az alábbiakban az FHIR módosítók és támogatásuk táblázata látható az FHIR szolgáltatásban.

Módosítók FHIR szolgáltatás az Azure Health Data Servicesben Azure API for FHIR Megjegyzés
:missing Igen Igen
:exact Igen Igen
:contains Igen Igen
:text Igen Igen
:type (referencia) Igen Igen
:not Igen Igen
:below (uri) Igen Igen
:above (uri) Igen Igen
:in (jogkivonat) Nem Nem
:below (jogkivonat) Nem Nem
:above (jogkivonat) Nem Nem
:not-in (jogkivonat) Nem Nem
:identifier Nem Nem

Adott sorrendben (számok, dátumok és mennyiségek) rendelkező keresési paraméterek esetén a paraméterérték előtti előtaggal pontosíthatja a keresési feltételeket (például Patient?_lastUpdated=gt2022-08-01 ahol az előtag gt "nagyobb mint" értéket jelent). Az Azure Health Data Services FHIR szolgáltatása támogatja az FHIR szabványban meghatározott összes előtagot.

Keresési eredmény paraméterei

Az FHIR a keresési eredmények paramétereinek készletét adja meg a keresésből visszaadott információk kezeléséhez. A keresési eredmények paramétereinek az FHIR-ben való használatáról a HL7 webhelyén tájékozódhat. Az alábbi táblázat az FHIR keresési eredmény paramétereit és azok támogatását tartalmazza az FHIR szolgáltatásban.

Keresési eredmény paraméterei FHIR szolgáltatás az Azure Health Data Servicesben Azure API for FHIR Megjegyzés
_elements Igen Igen
_count Igen Igen _count 1000 erőforrásra korlátozódik. Ha 1000-nél magasabb értékre van beállítva, a rendszer csak 1000-et ad vissza, és a csomag egy figyelmeztetést tartalmaz.
_include Igen Igen A lekért _include elemek legfeljebb 100-ra korlátozódnak. _include Az Azure Cosmos DB PaaS-en és OSS-en nem támogatott :iterate (#2137).
_revinclude Igen Igen A lekért _revinclude elemek legfeljebb 100-ra korlátozódnak. _revinclude Az Azure Cosmos DB PaaS-en és OSS-en nem támogatott :iterate (#2137). Helytelen állapotkód is van egy hibás kéréshez: #1319.
_summary Igen Igen
_total Részleges Részleges _total=none és _total=accurate
_sort Részleges Részleges sort=_lastUpdated az FHIR szolgáltatás támogatja. Az FHIR szolgáltatás és az OSS SQL DB FHIR-kiszolgálók esetében a sztringek és dateTime mezők szerinti rendezés támogatott. A 2021. április 20. után létrehozott Azure API for FHIR és OSS Azure Cosmos DB-adatbázisok esetében a rendezés az utónév, a vezetéknév, a születési dátum és a klinikai dátum alapján támogatott.
_contained Nem Nem
_containedType Nem Nem
_score Nem Nem

Megjegyzés:

  1. Alapértelmezés szerint _sort növekvő sorrendbe rendezi a rekordokat. Az előtaggal - csökkenő sorrendben is rendezhet. Az FHIR szolgáltatással egyszerre csak egyetlen mező alapján rendezhet.
  2. Az FHIR szolgáltatás a revinclude használatával támogatja a helyettesítő kártyák keresését. Ha hozzáad egy "." lekérdezési paramétert egy revinclude-lekérdezéshez, az FHIR szolgáltatás a forráserőforráshoz hozzárendelt összes erőforrásra hivatkozik.

Alapértelmezés szerint az Azure Health Data Services FHIR szolgáltatása megengedő kezelésre van beállítva. Ez azt jelenti, hogy a kiszolgáló figyelmen kívül hagyja az ismeretlen vagy nem támogatott paramétereket. Ha szigorú kezelést szeretne használni, a fejlécet is belefoglalhatja, és beállíthatjahandling=strict.Prefer

Láncolt és fordított láncolt keresés

A láncolt kereséssel részletes, célzott lekérdezéseket hajthat végre olyan erőforrásokhoz, amelyek egy másik erőforrásra hivatkoznak. Ha például olyan találkozásokat szeretne találni, ahol a beteg neve Jane, használja a következőt:

GET {{FHIR_URL}}/Encounter?subject:Patient.name=Jane

Az . előző kérés a láncolt keresés útvonalát a célparaméterhez irányítja (name ebben az esetben).

Hasonlóképpen fordított láncolt keresést is végezhet a _has paraméterrel. Ez lehetővé teszi az erőforráspéldányok lekérését olyan feltételek megadásával, amelyek más, a fontos erőforrásokra hivatkozó erőforrásokra hivatkoznak. A láncolt és fordított láncolt keresés példáiért tekintse meg az FHIR keresési példák oldalát.

Oldalra tördelés

Ahogy korábban említettük, az FHIR-keresés eredményei lapszámozott formában érhetők el a searchset csomagban található hivatkozáson. Alapértelmezés szerint az FHIR szolgáltatás oldalanként 10 találatot jelenít meg, de ez a paraméter beállításával _count növelhető (vagy csökkenthető). Ha több egyezés van, mint egy oldalon, a csomag tartalmaz egy next hivatkozást. A hivatkozásból next való ismételt lekérés a későbbi eredmények lapjait eredményezi. Vegye figyelembe, hogy a _count paraméter értéke nem haladhatja meg az 1000 értéket.

Az Azure Health Data Services FHIR szolgáltatása jelenleg csak a next hivatkozást támogatja, és nem támogatja firsta lastprevious keresésből visszaadott csomagok hivatkozásait.

GYIK

Mit jelent a "részleges támogatás" az R4 nem támogatott keresési paraméterekben?

Az erőforrás-specifikus keresési paraméterek némelyike több adattípusra is kiterjed, és az Azure Health Data Services FHIR szolgáltatása csak az egyik ilyen adattípuson támogatja ezt a keresési paramétert. A condition-abatement-age és a condition-onset-age például két különböző adattípust fed le, az életkort és a tartományt; Az Azure Health Data Services FHIR szolgáltatása azonban támogatja ezt a két keresési paramétert a tartományon, de az életkoron nem.

Támogatott a megfigyelések $lastn művelete?

Ez nem támogatott. A másik módszer az lenne, ha _count használnánk a laponként visszaadott erőforrások korlátozására, és _sort az eredmények csökkenő sorrendben történő biztosítására.

Következő lépések

Most, hogy megismerte az FHIR-keresés alapjait, a keresési minták oldalán részletes információkat talál arról, hogyan kereshet keresési paraméterekkel, módosítókkal és más FHIR keresési módszerekkel.

Feljegyzés

Az FHIR® a HL7 bejegyzett védjegye, amelyet a HL7 engedélyével használnak.