用于安排相遇的 FHIR 消息

FHIR messages for scheduling of encounters

我们有一个场景,我们正在评估使用 FHIR 将计划中的相遇信息从 EHR 应用程序(源应用程序)传输到互联网门户应用程序(目标应用程序)。触发此消息传输的事件是计划中的相遇,或者计划中的相遇被取消。

引用 https://www.hl7.org/fhir/messaging.html:

In FHIR messaging, a "request message" is sent from a source application to a destination application when an event happens.

一些questions/issues:

更新

澄清:

消息是最合适的机制:

  • 您想将多个资源作为一个包传递
  • 您不需要文档的开销(table 的内容,严格的渲染规则)
  • 路由通信可能需要异步通信and/or
  • 您想做比简单的 CRUD 操作更复杂的事情
  • 您想使用 HTTP 以外的传输方式

但是,您可以选择使用消息进行任何通信。 IE。 No-one 会打电话给你 non-conformant 选择使用消息传递,即使另一个范例可能更 'typical'。

消息是 Bundle 资源,其中第一个条目是 MessageHeader。 MessageHeader 使用 'data' 元素指向焦点资源。在这种情况下,焦点将是遭遇。还可以传送额外的资源。通常,您使用配置文件来提供有关捆绑包中应包含哪些内容和不包含哪些内容的指导。 (element.type.aggregation 标识某些内容是否需要出现在包中)。唯一的规则是,当你追踪束中资源之间的所有关系时,它们形成了一个完全连接的网络。但是,关联可以在任一方向上。 IE。可以包含指向 Encounter 的内容,而不仅仅是 Encounter 指向的内容。

在 Bundle 中,引用可以是完整的 URLs、相对的 URLs(基于引用资源的 URL)或 UUID。您可以看到示例消息 here.

对于 notification-type 消息交互,您的响应消息通常只包含一个 MessageHeader,其 .response 将指向原始消息手的标识符,代码为 "ok"。在其他情况下,消息响应可能包含数据。例如。创建或合并的结果、对查询的响应、决策支持信息等

抱歉,这不是肯定或否定的答案。

我已将 REST+FHIR 资源 API 用于两个门户系统 - 这是为了从源系统获取数据。 我们也有一个类似的场景,我们需要将数据传递到门户,我们在存在 HL7v2 提要的地方使用消息传递,或者在不存在的地方使用 REST+FHIR 资源 API。劳埃德关于什么是适当的观点是正确的。

如果一切正常,我通常会回复 200。当我上次查看规范时,未指定响应,它建议使用 OperationOutcome 或其他资源。 我遵循了 'REST in Practice' (O'Reilly) 一书中的做法,因此我会修改发送给我的资源(例如新标识符或额外数据),并 return 发送给发件人。

我们为我们的客户端门户界面做类似的事情。 本质上,我们有一个 publishing/subscription 服务来监视我们内部系统的相关更改,然后对门户进行 FHIR 休息调用以更新它。 (我们的门户界面是 FHIR 服务器)

不完全是消息传递,但也不完全是 REST/subscription。 对于我们的门户而言,它只是CRUD。

对我来说,这归结为您希望选择需要发送的内容和时间的逻辑在哪里(以及您有什么可用的工具)。