【问题标题】:Assert a resource conforms to FHIR Profile断言资源符合 FHIR Profile
【发布时间】:2014-07-15 18:25:47
【问题描述】:

希望能够以编程方式声明 FHIR 资源符合一个或多个配置文件。特别希望声明符合没有任何扩展的配置文件,但仅限制资源,例如将可选属性的基数从 0..1 更改为 1..1 以使其成为必需或限制值集/代码系统。

希望能够在创建资源时(POST 操作)以及事后将此类断言关联到现有资源(PUT 操作)。

此 wiki 页面:http://wiki.hl7.org/index.php?title=Profile_Validation_Tooling 建议使用 Category HTTP 标头,但示例中未指定特定 URL。 “资源能够通过使用标识配置文件的 URI “标记”来声明它们符合配置文件。”

名义个人资料网址:http://www.hl7.org/fhir/profiles/patient-restriction-profile.xml

例如,让我们使用一个简单的患者资源:

http://www.hl7.org/fhir/Patient/101

<?xml version="1.0" encoding="UTF-8"?>
<Patient xmlns="http://hl7.org/fhir">
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
      Mr. John Smith
    </div>
  </text>
  <identifier>
    <use value="usual"/>
    <label value="MRN"/>
    <system value="urn:oid:1.2.36.146.595.217.0.1"/>
    <value value="12345"/>
  </identifier>
  <name>
      <family value="Smith"/>
      <given value="John"/>
  </name>
  <active value="true"/>
</Patient>

更新:

显然,要将配置文件添加到现有资源,您可以使用带有标签列表的标签操作作为带有特殊 _tags url 后缀的 POST 正文。

POST http://www.hl7.org/fhir/Patient/101/_tags
Content-Type: application/xml+fhir

<taglist xmlns="http://hl7.org/fhir">
    <category term="http://www.hl7.org/fhir/profiles/patient-restriction-profile.xml"
    label="Test profile" scheme="http://hl7.org/fhir/tag/profile"/>
</taglist>

【问题讨论】:

    标签: hl7-fhir


    【解决方案1】:

    要标记资源,您可以使用 类别:[新个人资料网址];scheme="http://hl7.org/fhir/tag/profile";label="个人资料名称"

    指南在这里:http://hl7.org/fhir/extras.html#tag 在这里:http://hl7.org/fhir/http.html#tags

    【讨论】:

    • 更新 (PUT) 交互为现有资源创建新的当前版本。您可以通过 read 或 vread 操作在现有资源上声明配置文件标签吗?
    • 大概,您正在读取的服务器已尝试在公开资源之前断言该语句。但是您可以通过 read/vread 自己完成,如上所述检索 Category 标头,然后要求同一服务器(或任何其他 FHIR 服务器)通过调用其 RESTful“验证”操作(@ 987654323@)。很可能是一些当前的参考服务器还没有实现它(因为我们所说的配置文件验证正在进行中)。
    • 那么按照上述内容,您将如何区分组织 A 的“BloodPressure”和组织 B 的“BloodPressure”(假设它们不同)。没有与配置文件关联的方案,因此无法区分它们。
    • 当您将资源发送到服务器(使用 POST/PUT 更新它或发送到验证端点)时,您作为发件人包含一个 Category 标头,其中包含您作为发件人提出的关于发送的数据(在这种情况下为观察)符合哪个配置文件。因此,此类别标题将包含观察符合的配置文件的 url(因为您说它是组织的 A 的血压)类别:organA.com/profiles/our-fhir-profile#bloodpressure;方案="hl7.org/fhir/tag/profile"
    【解决方案2】:

    当您将资源发送到服务器(使用 POST/PUT 更新它或发送到验证端点)时,您作为发件人包含一个 Category 标头,其中包含您作为发件人提出的关于发送到哪些配置文件的声明数据(在这种情况下是观察)符合。因此,此类别标题将包含观察符合的配置文件的 url(因为您说它是组织的 A 的血压)

    分类:http://www.organA.com/profiles/our-fhir-profile#bloodpressure;方案="http://hl7.org/fhir/tag/profile"

    现在,当然,organB 会像这样发送其个人资料:

    分类:http://www.organB.com/profiles/measurements#bloodpressure;方案="http://hl7.org/fhir/tag/profile"

    很可能某些观察实例(因为 A 和 B 已就某些重叠达成一致)同时符合两者:

    分类:http://www.organB.com/profiles/measurements#bloodpressure;方案="http://hl7.org/fhir/tag/profile", http://www.organB.com/profiles/measurements#bloodpressure;方案="http://hl7.org/fhir/tag/profile"

    此外,服务器本身可能会定期针对它知道的所有配置文件运行所有实例并添加其他声明。

    【讨论】:

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