【问题标题】:How to search on FHIR using complex nested queries如何使用复杂的嵌套查询在 FHIR 上进行搜索
【发布时间】:2017-09-25 19:10:46
【问题描述】:

我还没有真正找到关于在搜索 FHIR 资源时复杂的嵌套查询应该是什么样子的示例或说明。

一些例子(伪代码):

  • (姓名=玛丽和性别=女性)或(地址城市=斯普林菲尔德和 地址状态=纽约)
  • ((姓名=玛丽且性别=女性) 或 (address-city=Springfield & address-state=NY)) AND active=true

这可能吗?如果是,怎么做?

【问题讨论】:

    标签: hl7-fhir


    【解决方案1】:

    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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-28
      • 2021-07-17
      • 1970-01-01
      • 1970-01-01
      • 2018-07-29
      相关资源
      最近更新 更多