Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Operacja Patient-everything służy do zapewnienia widoku wszystkich zasobów związanych z pacjentem. Ta operacja może być przydatna w celu udzielenia pacjentom dostępu do całego rekordu lub dostawcy lub innego użytkownika w celu przeprowadzenia zbiorczego pobierania danych związanych z pacjentem. Zgodnie ze specyfikacją Fast Healthcare Interoperability Resources (FHIR®) funkcja Patient-everything zwraca wszystkie informacje związane z co najmniej jednym pacjentem opisanym w zasobie lub kontekście, na którym jest wywoływana ta operacja. W usłudze FHIR w usługach Azure Health Data Services funkcja "Patient-everything" umożliwia uzyskanie danych związanych z określonym pacjentem.
Użyj systemu Patient-everything
Aby wywołać metodę Patient-everything, użyj następującego polecenia:
GET {FHIRURL}/Patient/{ID}/$everything
Uwaga
Należy określić identyfikator określonego pacjenta. Jeśli potrzebujesz wszystkich danych dla wszystkich pacjentów, zobacz $export.
Usługa FHIR sprawdza, czy może znaleźć pacjenta zgodnego z podanym identyfikatorem pacjenta. Jeśli zostanie znaleziony wynik, odpowiedź jest pakietem typu searchset
z następującymi informacjami:
- Zasób pacjenta.
- Zasoby, do których bezpośrednio odnosi się zasób pacjenta
- Jeśli istnieją
seealso
odwołania do linków do innych pacjentów, wyniki obejmują operację Patient-everything względemseealso
pacjentów wymienionych. - Zasoby w przedziale pacjentów.
- Zasoby urządzeń, które odnoszą się do zasobu pacjenta.
Uwaga
Zostanie zwróconych maksymalnie 100 pierwszych urządzeń połączonych z pacjentem.
Parametry pacjenta - wszystkie aspekty
Usługa FHIR obsługuje następujące parametry zapytania. Wszystkie te parametry są opcjonalne.
Parametr zapytania | Opis |
---|---|
_typ | Umożliwia określenie typów zasobów, które zostaną uwzględnione w odpowiedzi. Na przykład _type=Encounter zwróci tylko Encounter zasoby skojarzone z pacjentem. |
_od | Będzie zwracać tylko zasoby, które zostały zmodyfikowane od podanego czasu. |
początek | Określenie daty rozpoczęcia spowoduje ściągnięcie zasobów, w których ich data kliniczna przypada po określonej dacie rozpoczęcia. Jeśli nie podano daty rozpoczęcia, wszystkie rekordy przed datą zakończenia zostaną uwzględnione. |
koniec | Określenie daty zakończenia powoduje pobieranie zasobów, których data kliniczna jest przed określoną datą zakończenia. Jeśli nie podano daty zakończenia, wszystkie rekordy po dacie rozpoczęcia są brane pod uwagę. |
Uwaga
Ta implementacja funkcji Patient-everything nie obsługuje parametru _count.
Przetwarzanie łączy pacjentów
W zasobie pacjenta istnieje element o nazwie link, który łączy pacjenta z innymi pacjentami lub powiązanymi osobami. Ci związani pacjenci pomagają w całościowym spojrzeniu na pierwotnego pacjenta. Odwołanie do odnośnika może być używane, gdy pacjent zastępuje innego pacjenta lub gdy dwa zasoby dotyczące pacjentów mają uzupełniające informacje. Przykładem użycia linków jest sytuacja, kiedy przychodzi komunikat ADT 38 lub 39 HL7v2. Opisuje aktualizację pacjenta. Ta aktualizacja może być przechowywana jako odwołanie między dwoma pacjentami w elemencie linku.
Specyfikacja FHIR zawiera szczegółowe omówienie różnych typów powiązań pacjentów, ale tutaj przedstawiamy ogólne podsumowanie.
- zastępuje — zasób Pacjenta zastępuje innego Pacjenta.
- refer - Pacjent jest ważny, ale nie jest uważany za główne źródło informacji. Wskazuje innego pacjenta na pobranie dodatkowych informacji.
- seealso — pacjent ma odsyłacz do innego pacjenta, który jest równie prawidłowy.
- zastąpiony-przez — zasób pacjenta zastępuje innego pacjenta.
Szczegóły linków dotyczących pacjenta/wszystkiego o pacjencie
Operacja Patient-everything w usłudze FHIR przetwarza połączenia pacjentów na różne sposoby, aby zapewnić najbardziej całościowy widok pacjenta.
Uwaga
Link może również odwoływać się do elementu RelatedPerson
. W tej chwili zasoby RelatedPerson
nie są przetwarzane w Patient-everything i nie są zwracane w pakiecie.
W tej chwili operacja Patient-everything zawiera zastępuje i odsyłacze jako część powiązanego pacjenta w obrębie przedziału pacjenta.
Zgodnie z opisem, linki seealso odnoszą się do innego pacjenta, który jest uznawany za równie ważny jak oryginał. Po uruchomieniu operacji Patient-everything, jeśli pacjent ma seealso
linki do innych pacjentów, operacja uruchamia Patient-everything dla każdego seealso
linku. Oznacza to, że jeśli pacjent jest połączony z pięcioma innymi pacjentami za pomocą łącza typu seealso
, uruchamiamy program Patient-everything dla każdego z tych pięciu pacjentów.
Uwaga
Jest to skonfigurowane tak, aby śledzić seealso
linki na jednym poziomie głębokości. Nie przetwarza linków seealso
w linkach seealso
.
Ostatni typ łącza to zastępowany-przez. W takim przypadku oryginalny zasób pacjenta nie jest już używany, a link replaced-by
wskazuje na pacjenta, który powinien być używany. Ta implementacja domyślnie Patient-everything
obejmuje wynik operacji na początku pakietu z ostrzeżeniem, że pacjent nie jest już prawidłowy. Będzie to również zachowanie, gdy nagłówek Prefer
ustawiono na handling=lenient
.
Ponadto możesz ustawić nagłówek Prefer
na handling=strict
, aby zamiast tego wyrzucać błąd. W takim przypadku zwracany jest kod błędu 301 MovedPermanently
, który wskazuje, że bieżący pacjent jest nieaktualny, i jednocześnie zwracany jest identyfikator prawidłowego pacjenta, zawartego w linku. Nagłówek ContentLocation
zwróconego błędu wskazuje poprawne i up-to-date żądania.
Uwaga
replaced-by
Jeśli link jest obecny, Prefer: handling=lenient
a wyniki są zwracane asynchronicznie w wielu pakietach, w jednym pakiecie zwracany jest tylko wynik operacji.
Kompleksowa kolejność odpowiedzi dotycząca pacjenta
Operacja Patient-everything zwraca wyniki w fazach:
- Faza 1 zwraca zasób
Patient
oraz wszelkie zasobygeneralPractitioner
imanagingOrganization
, do których się odwołuje. - Faza 2 i 3 zwracają zasoby w komorze pacjenta.
start
Jeśli określono parametry zapytania lubend
, faza 2 zwraca zasoby z przedziału, które można filtrować według daty klinicznej, a faza 3 zwraca zasoby z przedziału, którego nie można filtrować według ich daty klinicznej. Jeśli żaden z tych parametrów nie zostanie określony, faza 2 zostanie pominięta, a faza 3 zwróci wszystkie zasoby związane z pacjentami. - Faza 4 zwraca wszystkie urządzenia, które są powiązane z pacjentem.
Każda faza zwraca wyniki w pakiecie. Jeśli wyniki obejmują wiele stron, następny link w pakiecie wskaże następną stronę wyników dla tej fazy. Po otrzymaniu wszystkich wyników z fazy następny link w pakiecie wskaże wywołanie w celu zainicjowania następnej fazy.
Jeśli oryginalny pacjent ma jakiekolwiek seealso
powiązania, fazy 1-4 będą powtarzane dla każdego z tych pacjentów.
Przykłady wszechstronności związanej z pacjentami
Poniżej przedstawiono kilka przykładów użycia operacji 'Patient-everything'. Oprócz tych przykładów mamy przykładowy plik REST , który ilustruje sposób seealso
działania i replaced-by
zachowania.
Aby użyć funkcji Patient-everything do wykonywania zapytań dotyczących wszystkich danych pacjenta od 2010 do 2020, użyj następującego wywołania.
GET {FHIRURL}/Patient/{ID}/$everything?start=2010&end=2020
Aby użyć metody Patient-everything do wykonywania zapytań dotyczących obserwacji i napotkania pacjenta, użyj następującego wywołania.
GET {FHIRURL}/Patient/{ID}/$everything?_type=Observation,Encounter
Aby użyć funkcji Patient-everything do wykonywania zapytań o "wszystko" dotyczące pacjenta od dnia 27 maja 2021 roku o godzinie 05:00:00 (UTC), skorzystaj z następującego polecenia.
GET {FHIRURL}/Patient/{ID}/$everything?_since=2021-05-27T05:00:00Z
Jeśli dla każdego z tych wywołań zostanie znaleziony pacjent, otrzymasz odpowiedź 200 wraz z Bundle
wskazującymi na odpowiednie zasoby.
Następne kroki
Teraz, gdy wiesz, jak używać funkcji Patient-everything, możesz nauczyć się opcji wyszukiwania. Aby uzyskać więcej informacji, zobacz
Uwaga
FHIR® jest zastrzeżonym znakiem towarowym HL7 i jest używany z uprawnieniem HL7.