簡體   English   中英

在 EPIC FHIR 上搜索患者

[英]search Patient on EPIC FHIR

我試圖弄清楚在 EPIC FHIR 上搜索的患者是如何工作的。 在此處的沙盒上測試所有內容: https://fhir.epic.com/Documentation?docId=testpatients

文檔:

從 2019 年 5 月開始,Patient.Search 請求默認需要以下最小數據集之一才能匹配並返回患者記錄:

  • FHIR ID
  • {IDType}|{ID}
  • SSN 標識符
  • 名字、姓氏和出生日期
  • 名字、姓氏、法定性別和電話號碼/電子郵件

這工作正常(返回一名患者):

/api/FHIR/R4/Patient?family=Lin&given=Derrick&birthdate=1973-06-03

但這也返回了相同的記錄(家庭中的額外角色,錯誤的性別):

/api/FHIR/R4/Patient?family=Lina&given=Derrick&birthdate=1973-06-03&gender=female

這也是返回一個記錄(家庭中的額外字符,沒有名字):

/api/FHIR/R4/Patient?family=Lina&birthdate=1973-06-03

不確定我做錯了什么,還是預期的行為?

這里有很多歷史記錄,但 Epic 當前的 Patient.search 行為更像 Patient.$match。 具體來說,提供給 Patient.search 的標准使用(近似)OR 邏輯而不是 AND 邏輯進行組合。 在幕后,它實際上更多的是加權分數,但最終,您提供的標准越多,您可能獲得的結果就越多。 如果您習慣於 REST API 查詢參數的正常工作方式,這通常是違反直覺的。 但從技術上講,它是規范合法的,因為 FHIR 在其中有一個關於服務器能夠返回它認為合適的其他適當結果的宣傳。

https://build.fhir.org/search.html#Introduction

但是,如果服務器認為它們是相關的,則它有權返回額外的搜索結果。

我們現在沒有任何具體的更新,但很快(tm)可能會有變化。

我很驚訝最后一個返回任何結果,但關於前兩個搜索,這在 Epic 中是完全可能的,甚至是預期的。 Epic 在后台具有特殊的邏輯,可以根據某些條件評估您傳入的參數值,例如名稱是否完全匹配、名稱是否相似、出生日期是否完全匹配等。因此,通常不僅完全匹配,而且Patient.Search API 將返回類似的匹配項。 標准的權重可由 Epic 客戶自定義,因此有些可能比其他的具有更嚴格的邏輯。

我建議始終根據您的輸入參數驗證返回的結果,以驗證您正在使用完全匹配。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM