FHIR 搜索递归 _include

FHIR Search recursive _include

考虑以下搜索请求 http://host:port/base/DiagnosticOrder?patient.organization.name=MidValley&_count=10&_include=DiagnosticOrder:encounter:Encounter&_include:recurse=Encounter:practitioner:Practitioner&_include:recurse=Encounter:patient&_include:recurse=Patient:organization&_include:recurse=Patient:link&_include:recurse=Practitioner:organization

下面是我的问题

  1. 我将 _include:recurse 的含义解释为真正的递归是否正确? (如上例所示,我们从 DiagnosticOrder 递归,通过 Patient 和 Practitioner 直到 Organization
  2. 如果以上为真,那么官方对children of self-referencing children的解释是什么?例如,上面的查询是否需要服务器 return 组织链接患者的链接患者在订单中引用的遭遇中引用的患者? 抱歉,如果我把这个复杂化得无法理解,但下面是一个易于理解的查询表示(对于程序员,抱歉),带有计算的 id,parent 和深度,而不考虑 return 组织的相关患者。

"It is at the server's discretion how deep to recursively evaluate the inclusions"。所以对此没有官方答案,因为它对于服务器来说非常复杂。我的观点是服务器应该尽最大努力实现完全递归,但他们也必须弄清楚如何限制他们所做的工作量。由于这是一个棘手的问题,我们还没有具体说明他们是如何做到的。