FHIR 如何处理 JSON 中的多行 Markdown?

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

我正在开展一个从实验室系统获取医疗数据的项目。我们想使用 FHIR 来序列化数据以进行交换。

我现在正在手动生成一些示例,其中我采用现有的人类可读的实验室报告,并使用 JSON 表示将它们构建为 FHIR。然后我们的团队和实验室系统的团队将使用示例分别编写导入和导出的代码。

我现在遇到了一个奇怪的问题。在 FHIR 中,

DiagnosticReport
资源定义了“markdown”类型的
DiagnosticReport.conclusion
element。这符合我们的需求,因为我们的医生对生成文档的格式非常严格。因此,我想保留打印报告中显示的文本 - 包括换行符。

当我执行此操作时,我的 JSON 验证器就会犹豫不决,这是有充分理由的。 JSON 标准不允许多行字符串。但 Markdown 标准不允许使用“代表”换行符的转义字符。似乎有在 HTML 中渲染时强制使用新段落的解决方案,但它们需要在标记输入中的行尾添加一些内容(反斜杠或空格)。同时,FHIR 标准规定此元素为 Markdown,而不是 HTML 或某种其他形式的格式化文本。 我看到了一个问题关于 Markdown 中的多行字符串

,但建议的解决方案假设有人正在用给定的语言编写完整的系统,并且应该使用处理 Markdown 的语言可识别的转义序列。但我们项目的重点是互操作性,并且强烈要求以独立于使用数据的系统的方式表示数据,同时严格遵循相关标准。

我知道最终的解决方案将不太理想。但问题是:在 FHIR 环境中,哪一种不太理想的选项是首选?我不可能是第一个遇到这个问题的人。 FHIR 社区在这种情况下是否遵循既定做法?

您所描述的是具有嵌套数据格式的情况。您正在将 Markdown 嵌入到 JSON 中。
json markdown interop multiline hl7-fhir
1个回答
0
投票
考虑 Markdown 文档

# Foo "hi"

您必须转义换行符和引号才能使此有效 JSON,因此序列化的 JSON 字符串是
"# Foo\n\n\"hi\""

这不再是有效的 Markdown,但是没关系,当您反序列化 JSON 并打印出字段值时,它就会是有效的。
    

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