Freigeben über


Verwenden von "Patient-everything" im FHIR-Dienst

Der Vorgang Patient-everything wird verwendet, um eine Ansicht aller Ressourcen zu erhalten, die sich auf einen Patienten beziehen. Dieser Vorgang kann nützlich sein, um Patienten Zugriff auf ihre gesamte Akte zu gewähren oder um einem Anbieter oder einem anderen Benutzer einen Massendatendownload in Bezug auf einen Patienten durchzuführen. Gemäß der FHIR-Spezifikation® (Fast Healthcare Interoperability Resources) gibt Patient-everything alle Informationen zurück, die sich auf einen oder mehrere Patienten beziehen, die in der Ressource oder dem Kontext beschrieben sind, für die bzw. der dieser Vorgang aufgerufen wird. Im FHIR-Dienst in Azure Health Data Services ist Patient-everything verfügbar, um Daten zu einem bestimmten Patienten abzurufen.

Verwenden Sie Patient-everything

Verwenden Sie den folgenden Befehl, um Patient-everything aufzurufen:

GET {FHIRURL}/Patient/{ID}/$everything

Hinweis

Sie müssen eine ID für einen bestimmten Patienten angeben. Wenn Sie alle Daten für alle Patienten benötigen, finden Sie weitere Informationen unter $export.

Der FHIR-Dienst überprüft, ob er den Patienten finden kann, der der bereitgestellten Patienten-ID entspricht. Wenn ein Ergebnis gefunden wird, handelt es sich bei der Antwort um ein Bundle vom Typ searchset mit den folgenden Informationen:

  • Ressource für Patienten.
  • Ressourcen, auf die direkt von der Patientenressource verwiesen wird
  • Wenn Verknüpfungsverweise zu anderen Patienten vorhanden sind seealso , enthalten die Ergebnisse die Operation "Patient-everything" für die seealso aufgelisteten Patienten.
  • Ressourcen im Patientenabteil.
  • Geräteressourcen , die auf die Patientenressource verweisen.

Hinweis

Bis zu den ersten 100 Geräten, die mit einem Patienten verknüpft sind, werden zurückgegeben.

Parameter für alles für den Patienten

Der FHIR-Dienst unterstützt die folgenden Abfrageparameter. Alle diese Parameter sind optional.

Query parameter (Abfrageparameter) BESCHREIBUNG
_Typ Hier können Sie angeben, welche Arten von Ressourcen in die Antwort einbezogen werden sollen. Zum Beispiel würde _type=Begegnung nur Encounter Ressourcen zurückgeben, die mit dem Patienten verbunden sind.
_seit Gibt nur Ressourcen zurück, die seit dem angegebenen Zeitpunkt geändert wurden.
Start Wenn Sie das Startdatum angeben, werden Ressourcen eingezogen, deren klinisches Datum nach dem angegebenen Startdatum liegt. Wenn kein Startdatum angegeben wird, befinden sich alle Datensätze vor dem Enddatum im Gültigkeitsbereich.
Ende Wenn Sie das Enddatum angeben, werden Ressourcen eingezogen, deren klinisches Datum vor dem angegebenen Enddatum liegt. Wenn kein Enddatum angegeben wird, befinden sich alle Datensätze nach dem Startdatum im Gültigkeitsbereich.

Hinweis

Diese Implementierung von Patient-everything unterstützt den Parameter _count nicht.

In einer Patientenressource gibt es ein Element namens Link, das einen Patienten mit anderen Patienten oder verwandten Personen verbindet. Diese verknüpften Patienten helfen dabei, eine ganzheitliche Sicht auf den ursprünglichen Patienten zu erhalten. Die Verknüpfungsreferenz kann verwendet werden, wenn ein Patient einen anderen Patienten ersetzt oder wenn zwei Patientenressourcen über komplementäre Informationen verfügen. Ein Anwendungsfall für Verknüpfungen ist, wenn eine ADT 38- oder 39 HL7v2-Nachricht eingeht. Es beschreibt ein Update für einen Patienten. Dieses Update kann als Referenz zwischen zwei Patienten im link-Element gespeichert werden.

Die FHIR-Spezifikation bietet einen detaillierten Überblick über die verschiedenen Arten von Patientenlinks, aber hier fügen wir eine Zusammenfassung auf hoher Ebene hinzu:

  • ersetzt - Die Ressource Patient ersetzt einen anderen Patienten.
  • refer - Patient ist gültig, wird aber nicht als Hauptinformationsquelle betrachtet. Zeigt auf einen anderen Patienten, um zusätzliche Informationen abzurufen.
  • seealso - Patient enthält einen Link zu einem anderen Patienten, der ebenso gültig ist.
  • replacement-by: Die Ressource Patient ersetzt einen anderen Patienten.

Der Vorgang "Alles für Patient" im FHIR-Dienst verarbeitet Patientenverknüpfungen auf unterschiedliche Weise, um Ihnen eine möglichst ganzheitliche Sicht auf den Patienten zu bieten.

Hinweis

Ein Link kann auch auf eine RelatedPerson. RelatedPerson Derzeit werden Ressourcen nicht in Patient-everything verarbeitet und nicht im Bundle zurückgegeben.

Im Moment sind Ersetzungs - und Überweisungslinks in der Operation "Patient-everything" als Teil des verknüpften Patienten im Patientenfach enthalten.

Wie beschrieben, verweisen sieheauch-Links auf einen anderen Patienten, der als gleichwertig mit dem Original angesehen wird. Wenn der Patient nach dem Ausführen des Patient-everything-Vorgangs Links zu anderen Patienten hat seealso , führt der Vorgang Patient-everything für jede seealso Verbindung aus. Das bedeutet, wenn ein Patient mit fünf anderen Patienten mit einer Typverknüpfung seealso verknüpft ist, führen wir Patient-everything auf jedem dieser fünf Patienten aus.

Hinweis

Dies ist so eingerichtet, dass Links nur eine Schicht tief gefolgt seealso werden. Die seealso Links eines seealso Links werden nicht verarbeitet.

Siehe auch Flussdiagramm.

Der letzte Verbindungstyp wird ersetzt durch. In diesem Fall wird die ursprüngliche Patientenressource nicht mehr verwendet und der replaced-by Link verweist auf den Patienten, der verwendet werden soll. Diese Implementierung von Patient-everything standardmäßig enthält ein Operationsergebnis zu Beginn des Pakets mit einer Warnung, dass der Patient nicht mehr gültig ist. Dies ist auch der Fall, wenn der Prefer Header auf handling=lenientfestgelegt ist.

Darüber hinaus können Sie den Prefer Header so handling=strict festlegen, dass stattdessen ein Fehler ausgelöst wird. In diesem Fall gibt die Rückgabe des Fehlercodes 301 MovedPermanently an, dass der aktuelle Patient veraltet ist, und gibt die ID für den richtigen Patienten zurück, der im Link enthalten ist. Der ContentLocation Header des zurückgegebenen Fehlers verweist auf die richtige und up-to-date-Anforderung.

Hinweis

Wenn ein replaced-by Link vorhanden Prefer: handling=lenient ist und die Ergebnisse asynchron in mehreren Bundles zurückgegeben werden, wird nur ein Vorgangsergebnis in einem Bundle zurückgegeben.

Reihenfolge der Patienten-Beantwortung

Der Vorgang Patient-everything gibt Ergebnisse in Phasen zurück:

  1. Phase 1 gibt die Patient Ressource selbst zusätzlich zu allen generalPractitionermanagingOrganization und-Ressourcen zurück, auf die sie verweist.
  2. Phase 2 und 3 geben beide Ressourcen im Patientenfach zurück. Wenn die start Abfrageparameter oder end angegeben sind, gibt Phase 2 Ressourcen aus dem Compartment zurück, die nach ihrem klinischen Datum gefiltert werden können, und Phase 3 gibt Ressourcen aus dem Compartment zurück, die nicht nach ihrem klinischen Datum gefiltert werden können. Wenn keiner dieser Parameter angegeben ist, wird Phase 2 übersprungen, und Phase 3 gibt alle Ressourcen für das Patientenfach zurück.
  3. Phase 4 gibt alle Geräte zurück, die auf den Patienten verweisen.

Jede Phase gibt Ergebnisse in einem Bündel zurück. Wenn sich die Ergebnisse über mehrere Seiten erstrecken, verweist der nächste Link im Bundle auf die nächste Seite mit den Ergebnissen für diese Phase. Nachdem alle Ergebnisse einer Phase zurückgegeben wurden, verweist der nächste Link im Bundle auf den Aufruf, um die nächste Phase zu initiieren.

Wenn der ursprüngliche Patient Verbindungen aufweist seealso , werden die Phasen 1 bis 4 für jeden dieser Patienten wiederholt.

Beispiele für Patient-everything

Im Folgenden finden Sie einige Beispiele für die Verwendung des Vorgangs "Patient-everything". Zusätzlich zu diesen Beispielen haben wir eine REST-Beispieldatei, die veranschaulicht, wie das Verhalten und replaced-by funktioniertseealso.

Verwenden Sie den folgenden Aufruf, um mit "Patient-everything" das "Alles" eines Patienten zwischen 2010 und 2020 abzufragen.

GET {FHIRURL}/Patient/{ID}/$everything?start=2010&end=2020

Um Patient-everything zu verwenden, um die Beobachtung und Begegnung eines Patienten abzufragen, verwenden Sie den folgenden Aufruf.

GET {FHIRURL}/Patient/{ID}/$everything?_type=Observation,Encounter 

Verwenden Sie den folgenden Aufruf, um mit Patient-everything das "Alles" eines Patienten seit 2021-05-27T05:00:00Z abzufragen.

GET {FHIRURL}/Patient/{ID}/$everything?_since=2021-05-27T05:00:00Z 

Wenn für jeden dieser Anrufe ein Patient gefunden wird, erhalten Sie eine Antwort von 200 mit einer Bundle der entsprechenden Ressourcen.

Nächste Schritte

Nachdem Sie nun wissen, wie Sie den Vorgang "Patient-everything" verwenden, können Sie sich mit den Suchoptionen vertraut machen. Weitere Informationen finden Sie unter

Hinweis

FHIR® ist eine eingetragene Marke von HL7 und wird mit Genehmigung von HL7 verwendet.