第 102 章 FHIR JSon DataFormat
从 Camel 版本 2.21 开始,可用为 Camel 版本 2.21
FHIR-JSON 数据格式利用 HAPI-FHIR 的 JSON 解析器解析到/从 JSON 格式解析到/来自 HAPI-FHIR 的 IBaseResource
。
102.1. FHIR JSON 格式选项
FHIR JSon 数据格式支持 14 个选项,它们如下所列。
名称 | 默认 | Java 类型 | 描述 |
---|---|---|---|
fhirVersion |
|
| 要使用的 FHIR 版本。可能的值有:DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 |
prettyPrint |
|
| 设置 pretty print 标志,即解析器将使用元素之间的人类可读和新行来编码资源,而不是尽可能提高的输出。 |
serverBaseUrl |
| 设置此解析器使用的服务器基本 URL。如果设置了值,如果资源引用作为绝对 URL 提供,则会将其转换为相对引用,但具有与给定基本基本匹配的基础。 | |
omitResourceId |
|
| 如果设置为 true(默认为 false),则输出中不包含任何被编码的资源的 ID。请注意,这不适用于包含资源,仅适用于 root 资源。换句话说,如果将其设置为 true,其中包含的资源仍会有本地 ID,但 outer/包含 ID 将不会有 ID。 |
encodeElementsAppliesToResourceTypes |
| 如果提供,告知解析哪些资源类型应用链接 #setEncodeElements (Set)编码元素。这里未指定的资源类型都会完全编码,且没有排除元素。 | |
encodeElementsAppliesToChildResourcesOnly |
|
| 如果设置为 true (默认为 false),则提供给 setEncodeElements (Set)的值不会应用到根资源(通常是捆绑包),而是应用于其中包含的任何子资源(例如,搜索结果资源) |
encodeElements |
| 如果提供,指定应编码的元素,到所有其他的排除项。此字段的有效值包括: Patient - Encode 患者及其所有子子 Patient.name - Encode 只包括患者名称 Patient.name.family - 对任何资源(只有第一个位置可能包含通配符)添加文本元素(仅包括通配符)的编码。 | |
dontEncodeElements |
| 如果提供,指定不应编码的元素。此字段的有效值包括: 耐心 - Don't en patient 以及其所有子人的 Patient.name - Don 对病人的名称 Patient.name.family - Don' encode the patient 的家族名称 .text - Don't 对任何资源上的文本元素进行编码(只有第一个位置可以包括通配符)DS2 备注: 请注意,包括 Patient.meta 的值(如 Patient.meta)可用于 DSTU2 解析器,但 meta 上带有子元素的值(如 Patient.meta.lastUpdated 只在 DSTU3 模式中可以正常工作。 | |
stripVersionsFromReferences |
|
| 如果设置为 true(默认值),则包含版本的资源引用将在资源编码时删除版本。这通常是很好的,因为在多数情况下,从一个资源到另一个资源的引用应该由 ID(而不是 ID 和版本)指向资源。在某些情况下,最好在资源链接中保留版本。在这种情况下,这个值应该设置为 false。这个方法提供了全局禁用引用编码的功能。如果需要精细控制,请使用 setDontStripVersionsFromReferencesAtPaths (List) |
overrideResourceIdWithBundleEntryFullUrl |
|
| 如果设置为 true(默认值),则 Bundle.entry.fullUrl 会在定义了 fullUrl 时覆盖 Bundle.entry.resource 的 resource id。将源数据解析为 Bundle 对象时会发生此行为。如果这不是所需行为,则将其设置为 false(例如,客户端代码需要在 fullUrl 和资源 id 间执行额外的验证检查)。 |
summaryMode |
|
| 如果设置为 true(默认为 false),则只包括 FHIR 规格所标记的元素,如概述元素。 |
suppressNarratives |
|
| 如果设置为 true(默认为 false),则编码的值不会包含 narratives。 |
dontStripVersionsFromReferencesAtPaths |
| 如果提供的值,指定路径中的任何资源引用都将对其资源版本编码,而不是在编码过程中自动剥离。此设置对解析过程没有影响。这个方法提供了比 setStripVersionsFromReferences (Boolean)指定的任何路径的更精细的控制级别,即使 setStripVersionsFromReferences (Boolean)被设为 true (默认) | |
contentTypeHeader |
|
| 如果数据格式能够这样做,则数据格式是否应该以 data 格式设置 Content-Type 标头。例如,用于数据格式的 application/xml (数据格式)或 application/json 用于数据格式 marshalling to JSon etc。 |