在FHIR中使用_include

时间:2013-05-14 07:34:09

标签: hl7 hl7-fhir

在FHIR查询规范中,它声明可以将_include参数添加到查询URL,以请求完整返回指定的引用资源,以防止进一步的网络请求检索这些资源。

diagnosticreport /搜索_include = DiagnosticReport.subject&安培; _include = Patient.provider

此构造要求您知道在进行查询之前将在结果集中引用的资源。我怀疑像“观察”这样的资源,其中可能会有许多配置文件,每个配置文件可能有不同的扩展名,但情况并非如此。

是否可以使用语法将所有引用的资源“包含”?

2 个答案:

答案 0 :(得分:2)

嗯,这可能是可能的。虽然你有可能获得大量资源,但你不知道为什么会得到这些资源。服务器可能更倾向于拒绝这种请求。对于服务器来说肯定要慢很多 - 它必须评估更多的内容来决定包含或不包含的引用。

答案 1 :(得分:0)

此页面:https://www.hl7.org/implement/standards/FHIR/search.html#return 描述如下:

2.2.4.1包含路径
包含路径可能包括通配符,例如 MedicationDispense.results。* ,甚至 _include = * ,但客户端和服务器都需要注意不要请求或返回这样做时有很多资源。最值得注意的是,在新包含的资源上重新应用包含路径可能会导致循环或检索完整患者的文件:资源被组织到一个相互关联的网络中,而广泛的_include路径最终可能会遍历服务器上的所有可能路径。对于服务器,这些递归和通配符_includes要求很高,并且可能会显着减慢搜索响应时间。预计服务器将限制完成的迭代次数,并且没有义务遵守在搜索结果中包含其他资源的请求。