【问题标题】:Getting started with Profiles配置文件入门
【发布时间】:2016-01-22 17:02:43
【问题描述】:

在构建示例 FHIR 服务器时,我谈到了配置文件的主题。我仍在学习/使用规范,所以请耐心等待。

在阅读了有关配置文件的规范文档后,我不确定在 FHIR 服务器上提供配置文件的起点在哪里。仅供参考 - 我正在使用 DSTU 2 C# 参考实现。

首先,一个高级问题 - 规范讨论了差异与快照。我的理解是,仅显示来自基本资源的更改(如 FHIR 规范所允许的)将构成差异。如果 FHIR 服务器的资源与其基础资源发生了一些更改,则该资源的 StuctureDefinition 应该同时具有差异和快照。差异仅显示来自基础资源的更改,而快照则显示有关资源的所有内容(包括来自基础资源的更改) - 两者都以两种不同的方式反映同一组更改?

其次,规范声明 - “操作系统中使用的结构定义资源应始终填充快照视图”。如何最好地填充快照是我的困惑所在。

参考实现确实提供了一个 StructureDefinition 类,并且似乎具备手动编写 StructureDefinition 代码所需的一切。然后可以像任何其他 FHIR 资源一样通过 json 或 xml 返回它。这是应该/需要做的吗?参考实现中是否有任何可用的东西可以自动为给定资源生成一个与您可以从 FHIR 规范网站下载的 StructureDefinition 相同的 StructureDefinition?或者,实施者是否打算从 FHIR 规范网站下载所有核心 StructureDefinition 文件,并使用它们作为起点,为其服务器上的每个核心 FHIR 资源创建本地 StructureDefinition?

如果 FHIR 服务器仅提供带差异的 StructureDefinition,没有快照,那么查看 StructureDefinition 的 xml/json 的人将需要通过“base”值查询资源的 StructureDefinition 和资源上的差异FHIR 服务器以全面了解资源在服务器上的实际外观。我猜这就是为什么快照应该在 FHIR 服务器上可用,因此不需要检查多个源。这也是为什么我想知道每个 FHIR 服务器是否应该为每个核心资源拥有 FHIR 规范 StructureDefinitions 的本地副本,或者服务器是否应该通过 FHIR 规范网站引用 StructureDefinitions(核心 FHIR StructureDefinitions 的集中存储库与。 分散式)。如果 FHIR 服务器上可用的 StructureDefinitions 应该参考 FHIR 规范网站以获取核心资源,那么 FHIR 服务器的工作是通过基于每个 StructureDefinition 的“基础”值的某种 Web 调用在幕后构建快照吗? ?

这里有很多问题。任何指导表示赞赏。谢谢。

【问题讨论】:

    标签: hl7-fhir


    【解决方案1】:

    快照显示了与基本结构定义的差异。基础可以是资源或数据类型定义或另一个配置文件。它们确实是同一信息的两种不同表达方式。仅给定快照或仅给定差异,只要您有可用的基本结构定义的快照副本,您就可以导出另一个。

    差异主要对人类有用 - “此配置文件与基本配置文件有何不同?”通常对审阅者很重要,但从软件的角度来看,您只关心“允许的内容”,即快照完整描述的内容。

    服务器是否选择在本地托管资源结构定义取决于它。如果您希望定期检索它们,那么拥有本地副本将是明智的。 (HL7 的副本不一定能“快速”检索,并且该网站当然不是为处理高负载而设计的。)

    请注意,计算快照或差异的工作通常是创作过程的一个问题。它不会对实际托管在服务器上的内容施加任何限制。

    【讨论】:

    • 感谢劳埃德的澄清。几个后续问题:每个 FHIR 服务器都需要一致性声明是否准确?一致性声明中剩余资源的配置文件属性的基数为 0..1。这是否意味着不需要使用配置文件(尽管强烈推荐)?
    • 每个想要声明它符合 FHIR(客户端、服务器或其他任何东西)的系统都需要一个 Conformance 实例。如果系统是 FHIR RESTful 服务器,则必须通过针对基本 URL 调用 OPTIONS 或针对 [base]/metadata 执行 GET 来获得该一致性实例。对于其他系统,它只需要“可用”(在某处的网站上,根据要求通过电子邮件发送或其他方式)。确实鼓励使用配置文件来准确记录您的系统对每种资源的支持,但不是必需的。
    【解决方案2】:

    根据规范“服务器应提供一致性声明,指定支持哪些交互和资源。”,所以在您的第一个后续问题上是的。不需要使用配置文件。如果您只想使用核心资源而无需更改它们,您的资源将遵循核心结构定义。您可以在 resource.profile 中指定。但是,如果您只使用核心规范,则不需要制作配置文件。 如果您想制作自己的 StructureDefinitions,您可以手动完成,但您也可以使用 Furore 的工具 Forge。 Forge 将允许您保存快照并将其放入服务器,因此您的服务器可以将其(以 xml 或 json 格式)提供给任何需要它的人。

    【讨论】:

    • 谢谢巴尔图斯先生。我会去 Forge 看看。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-06
    • 1970-01-01
    相关资源
    最近更新 更多