【发布时间】:2017-09-25 19:10:46
【问题描述】:
我还没有真正找到关于在搜索 FHIR 资源时复杂的嵌套查询应该是什么样子的示例或说明。
一些例子(伪代码):
- (姓名=玛丽和性别=女性)或(地址城市=斯普林菲尔德和 地址状态=纽约)
- ((姓名=玛丽且性别=女性) 或 (address-city=Springfield & address-state=NY)) AND active=true
这可能吗?如果是,怎么做?
【问题讨论】:
标签: hl7-fhir
我还没有真正找到关于在搜索 FHIR 资源时复杂的嵌套查询应该是什么样子的示例或说明。
一些例子(伪代码):
这可能吗?如果是,怎么做?
【问题讨论】:
标签: hl7-fhir
FHIR 支持相当精细的搜索语法,但它不是一种查询语言。除非您有权访问服务器并且可以自己在该服务器上执行查询,否则您想要的搜索不能一劳永逸地完成。
如果您有权访问/影响服务器端,则可以实现命名查询,然后使用 _query 搜索参数执行该查询(请参阅http://www.hl7.org/fhir/search.html#query)。
如果您没有该访问权限,则可以通过几个步骤执行查询。例如,您的第一个查询需要 2 个查询:
GET [fhir endpoint]/Patient?name=Mary&gender=female
GET [fhir endpoint]/Patient?address-city=Springfield&address-state=NY
两者都会为您提供 Bundle 的结果。这两个捆绑包一起将是您正在寻找的匹配资源的完整列表。
对于第二个示例查询,您需要为两个 GET 提供 &active=true。
【讨论】: