FHIR 服务器区分大小写

问题描述 投票:0回答:2

我正在查看各种客户端库,想知道它们如何处理各种服务器实现中的缺陷。

我可以看到,当谈到 URI 和其他东西时,一些服务器比其他服务器更宽容。

更深入地了解资源本身...... 例如,如果服务器返回 donotperform 而不是 doNotPerform。

有人有这方面的经验吗?

hl7-fhir
2个回答
0
投票

我不一定要与特定的客户端库交谈,但根据 FHIR 规范,区分大小写是一般规则。 搜索参数资源/元素名称(见注释)区分大小写,客户应更正搜索参数的大小写。 资源 ID 也区分大小写。

所以,一般来说,服务器应该根据规范中定义的情况返回数据。


0
投票

区分大小写高度依赖于上下文。如果您正在查看搜索,区分大小写的规则通常基于搜索类型。例如:

  • string 默认情况下不区分大小写,但您可以使用
    exact
    修饰符来执行区分大小写的搜索。
  • token 通常 被认为区分大小写,但它确实取决于基础数据(例如,针对
    CodeSystem
    ValueSet
    的搜索需要遵循 CodeSystem.caseSensitive 值)。
  • uri 通常区分大小写,但应该遵循每个系统的规则(例如,在 HTTP URL 中,域名不区分大小写,而路径区分大小写)。

解释资源中存在的时,它取决于元素类型。例如,代码需要遵守相同的 CodeSystem.caseSensitive 值。

从技术上讲,

Extension.url
是一个
uri
,但我认为我从未见过将扩展 URL 视为区分大小写以外的任何系统。

从开发人员的角度来看,我通常会尝试遵循:在您接受的内容中尽可能被允许,在您所做的内容中尽可能纠正。因此,即使在匹配区分大小写的情况下,如果区分大小写失败,我也会尝试回退到不区分大小写的匹配。另一方面,我尝试使用原始大小写生成所有内容,即使它不区分大小写。

希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.