【问题标题】:FHIR .NET API How to support Unknown Member in Resource?FHIR .NET API 如何支持资源中的未知成员?
【发布时间】:2018-05-28 21:15:55
【问题描述】:

我正在使用资源中包含自定义成员的 FHIR 服务器。

如果我们收到以下患者,请说明

xml = "<Patient xmlns='http://hl7.org/fhir'><hasSuperPower></hasSuperPower></Patient>";

如何在 FHIR .NET API 中添加额外的标签支持,以便可以使用此自定义资源? (以便 Deserilizer 可以对其进行处理并将其放入患者对象中。)

我从 Mirjam Baltus 的帖子中读到,模型类可以被增强,因为它们都被声明为“部分类”。做 这意味着我必须使用 FHIR API 源代码并在那里添加我自己的 Partial 类,然后重新编译它?

有没有一种方法可以让我直接使用 Nuget 的 DLL 而无需接触源代码?

【问题讨论】:

    标签: hl7-fhir


    【解决方案1】:

    为什么要使用自定义元素而不是标准扩展元素?以这种方式添加自定义元素不符合标准,不会与任何公共测试服务器一起使用,不会与其他 FHIR 系统互操作,也不会与参考实现一起使用。你看过规范的可扩展性部分吗?

    【讨论】:

      【解决方案2】:

      我也在 Google 论坛上回答了这个问题,并且同意 Lloyd 的观点。

      如果您收到带有&lt;hasSuperPower&gt; 标签的患者,则该患者不符合 FHIR 标准。 FHIR 有一种出色的方式来传达不适合任何标准字段的数据,称为扩展。如果您使用这些,则无需编写额外的代码来处理非 FHIR 资源,您可以直接使用现有的库而无需对其进行任何更改。

      超能力可能看起来像这样,并且符合 FHIR:

      <Patient xmlns="http://hl7.org/fhir">
        <extension url="http://mirjams.example.org/fhir/StructureDefinition/super-patient">
          <valueBoolean value="true"/>
        </extension>
      </Patient>
      

      我还想指出由 Brian Postlethwaite 撰写的关于自定义资源属性的博客:https://brianpos.com/2018/05/03/code-generation-fhir-custom-resources/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多