Pacient-vše ve FHIR
Operace Pacient-vše slouží k zobrazení všech prostředků souvisejících s pacientem. Tato operace může být užitečná k poskytnutí přístupu pacientů k celému záznamu nebo k tomu, aby poskytovatel nebo jiný uživatel provedl hromadné stahování dat souvisejících s pacientem. Podle specifikace FHIR vrátí pacient-vše všechny informace týkající se jednoho nebo více pacientů popsaných ve zdroji nebo kontextu, na kterém je tato operace vyvolána. V rozhraní Azure API for FHIR je k dispozici vše pro získání dat týkajících se konkrétního pacienta.
Použití pacient-vše
Pokud chcete volat Pacient-vše, použijte následující příkaz:
GET {FHIRURL}/Patient/{ID}/$everything
Poznámka
Musíte zadat ID konkrétního pacienta. Pokud potřebujete všechna data pro všechny pacienty, přečtěte si $export.
Rozhraní Azure API for FHIR ověří, že dokáže najít pacienta odpovídajícího zadanému ID pacienta. Pokud se najde výsledek, bude odpovědí balíček typu searchset
s následujícími informacemi:
- Zdroj informací o pacientech
- Prostředky, na které přímo odkazuje prostředek pacienta , s výjimkou odkazů, které nejsou vizalso nebo pokud
seealso
odkaz odkazuje naRelatedPerson
. - Pokud existují
seealso
odkazy na jiné pacienty, výsledky budou zahrnovat operaci Pacient-vše proseealso
uvedené pacienty. - Zdroje v pacientské přihrádce
- Prostředky zařízení , které odkazují na prostředek pacienta.
Poznámka
Pokud má pacient propojených více než 100 zařízení, vrátí se pouze 100 zařízení.
Parametry pacient-vše
Rozhraní Azure API for FHIR podporuje následující parametry dotazu. Všechny tyto parametry jsou volitelné:
Parametr dotazu | Popis |
---|---|
_Typ | Umožňuje určit, které typy prostředků budou zahrnuty do odpovědi. Například _type=Encounter vrátí pouze Encounter prostředky přidružené k pacientovi. |
_Protože | Vrátí pouze prostředky, které byly změněny od zadaného času. |
start | Zadání počátečního data načte prostředky tam, kde je jejich klinické datum za zadaným počátečním datem. Pokud není zadané žádné počáteční datum, jsou všechny záznamy před koncovým datem v rozsahu. |
end | Zadáním koncového data se přetáhne prostředky tam, kde jejich klinické datum předchází zadanému koncovému datu. Pokud není zadané žádné koncové datum, jsou všechny záznamy po počátečním datu v rozsahu. |
Poznámka
Tato implementace patient-everything nepodporuje parametr _count.
Zpracování odkazů na pacienty
V prostředku pro pacienta je prvek označovaný jako odkaz, který propojuje pacienta s jinými pacienty nebo souvisejícími osobami. Tito propojení pacienti pomáhají poskytnout ucelený pohled na původního pacienta. Odkaz na odkaz lze použít, když pacient nahrazuje jiného pacienta nebo když dva zdroje pacientů obsahují doplňující informace. Jedním z případů použití odkazů je, když přijde zpráva ADT 38 nebo 39 HL7v2. ADT38/39 popisuje aktualizaci pro pacienta. Tuto aktualizaci lze uložit jako odkaz mezi dvěma pacienty v elementu link.
Specifikace FHIR obsahuje podrobný přehled různých typů odkazů na pacienty, ale tady je základní souhrn:
- replaces – Prostředek Pacient nahradí jiného pacienta.
- refer – Pacient je platný, ale nepovažuje se za hlavní zdroj informací. Odkazuje na jiného pacienta a načte další informace.
- seealso – Pacient obsahuje odkaz na jiného pacienta, který je stejně platný.
- replaced-by – Prostředek Pacient nahradí jiného pacienta.
Podrobnosti o pacientech se vším
Operace Pacient-vše v rozhraní Azure API for FHIR zpracovává odkazy na pacienty různými způsoby, aby vám poskytly co nejstní pohled na pacienta.
Poznámka
Odkaz může odkazovat také na RelatedPerson
. V současné chvíli RelatedPerson
se prostředky nezpracovávají v souboru Pacient-vše a nevrácejí se v sadě.
Právě teď operace Pacient-vše ignoruje odkazy na nahrazení a odkazy a propojený pacient se nevrátí do balíčku.
Jak je popsáno, odkazy seealso odkazují na jiného pacienta, který je považován za stejně platný jako původní. Pokud má seealso
pacient po spuštění operace Pacient-vše odkazy na jiné pacienty, spustí se operace Pacient-vše na každém seealso
odkazu. To znamená, že pokud pacient propojí s pěti dalšími pacienty s typem seealso
odkazu, spustíme pro každého z těchto pěti pacientů všechno.
Poznámka
Tato možnost je nastavená tak, aby sledovala seealso
pouze odkazy o jednu vrstvu hluboko. Nezpracovává seealso
seealso
odkazy.
Poslední typ propojení je nahrazený. V takovém případě se původní prostředek pacienta už nepoužívá a replaced-by
odkaz odkazuje na pacienta, který se má použít. Tato implementace Patient-everything
bude ve výchozím nastavení zahrnovat výsledek operace na začátku balíčku s upozorněním, že pacient již není platný. To bude také chování, když je hlavička Prefer
nastavená na handling=lenient
hodnotu .
Kromě toho můžete hlavičku Prefer
nastavit na, handling=strict
aby místo toho došlo k chybě. V takovém případě vrátí kód chyby 301 MovedPermanently
, že aktuální pacient je zastaralý, a vrátí ID správného pacienta, které je součástí odkazu. Hlavička ContentLocation
vrácené chyby bude odkazovat na správný a aktuální požadavek.
Poznámka
replaced-by
Pokud existuje Prefer: handling=lenient
propojení a výsledky jsou asynchronně vráceny ve více sadách, vrátí se v jedné sadě pouze výsledek operace.
Pořadí odpovědí pacient-vše
Operace Pacient-vše vrací výsledky ve fázích:
- Fáze 1 vrátí
Patient
kromě všechgeneralPractitioner
odkazů amanagingOrganization
ir i samotný prostředek. - Fáze 2 a 3 vrací prostředky v pacientské přihrádce. Pokud jsou zadané parametry počátečního nebo koncového dotazu, vrátí fáze 2 prostředky z oddílu, které lze filtrovat podle jejich klinického data, a fáze 3 vrátí prostředky z oddílu, které nelze filtrovat podle jejich klinického data. Pokud není zadaný žádný z těchto parametrů, fáze 2 se přeskočí a fáze 3 vrátí všechny prostředky oddělení pacienta.
- Fáze 4 vrátí všechna zařízení, která odkazují na pacienta.
Každá fáze vrátí výsledky v sadě. Pokud výsledky pokrývají více stránek, bude další odkaz v sadě odkazovat na další stránku výsledků pro danou fázi. Po vrácení všech výsledků z fáze bude další odkaz v sadě odkazovat na volání, které zahájí další fázi.
Pokud má původní pacient nějaké seealso
vazby, fáze 1 až 4 se pro každého z těchto pacientů zopakují.
Příklady pacient-vše
Tady je několik příkladů použití operace Pacient-vše. Kromě příkladů máme ukázkový soubor REST , který ilustruje, jak seealso
funguje chování a replaced-by
.
Pokud chcete k dotazování mezi 2010 a 2020 použít Pacient-vše, použijte následující volání:
GET {FHIRURL}/Patient/{ID}/$everything?start=2010&end=2020
Pokud chcete použít $patient-vše k dotazování pacienta na pozorování a setkání, použijte následující volání:
GET {FHIRURL}/Patient/{ID}/$everything?_type=Observation,Encounter
Pokud chcete použít $patient-vše k dotazování pacienta na "vše" od 2021-05-27T05:00:00Z, použijte následující volání:
GET {FHIRURL}/Patient/{ID}/$everything?_since=2021-05-27T05:00:00Z
Pokud se pro každé z těchto volání najde pacient, dostanete zpět odpověď 200 s odpovídajícími Bundle
prostředky.
Další kroky
Teď, když víte, jak používat operaci Pacient-vše, můžete se dozvědět o možnostech hledání.
FHIR® je registrovaná ochranná známka hl7 a používá se se svolením HL7.