第 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 dataformat 支持 14 个选项,如下所列。
名称 | 默认值 | Java 类型 | 描述 |
---|---|---|---|
fhirVersion |
|
| 要使用的 FHIR 版本。可能的值有: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 |
prettyPrint |
|
| 设置用户友善的打印标志,这意味着解析器将使用人类可读的空间和新线对资源进行编码,而不是尽可能地压缩输出。 |
serverBaseUrl |
| 设置此解析器使用的服务器基本 URL。如果设置了值,如果资源引用作为绝对 URL 提供,则资源引用将转换为相对引用,但具有与给定基础匹配的基础。 | |
omitResourceId |
|
| 如果设置为 true (默认为 false)被编码的任何资源的 ID 不会包含在输出中。请注意,这不适用于包含的资源,仅适用于 root 资源。换句话说,如果将其设置为 true,则包含的资源仍具有本地 ID,但外部/包含 ID 将没有 ID。 |
encodeElementsAppliesToResourceTypes |
| 如果提供,请告知解析要应用链接 #setEncodeElements (Set) encode 元素的资源类型。这里未指定的任何资源类型都会完全编码,不包括任何元素。 | |
encodeElementsAppliesToChildResourcesOnly |
|
| 如果设置为 true (默认为 false),提供给 setEncodeElements (Set)的值不会应用到根资源(通常是 Bundle),但会应用到其中包含的任何子资源(例如,在该捆绑包中的搜索结果资源) |
encodeElements |
| 如果提供,指定应编码的元素,以排除所有其他元素。此字段的有效值包括:Patient - Encode 病人及其所有子子 Patient.name - Encode 只包括病人的名称 Patient.name.family - Encode 只包括 .text - Encode - Encode the text element on any resource (只有第一个位置可能包含通配符) . (必需)- 这是一个特殊情况,这会导致任何必需的字段为 0。 | |
dontEncodeElements |
| 如果提供,则指定不应编码的元素。此字段的有效值包括: 病人 - Don't encode 病人及其所有子人的 Patient.name - Don 并不编码病人名 Patient.name.family - Don't encode of the patient's family name .text - Don't en the text element on any resource (只有第一个位置可能包含通配符) DSTU2 备注: 请注意,包括 meta 的值(如 Patient.meta )将可用于 DSTU2 解析器,但 meta (如 Patient.meta.lastUpdated)的值只能在 DSTU3 模式下工作。 | |
stripVersionsFromReferences |
|
| 如果设置为 true (默认值),则包含版本的资源引用将在资源编码时删除版本。这通常很好,因为多数情况下,从一个资源到另一个资源的引用应该通过 ID 指向资源,而不是 ID 和版本。在某些情况下,可能需要在资源链接中保留版本。在这种情况下,这个值应设置为 false。这个方法提供了全局禁用引用编码的功能。如果需要精细的控制,请使用 setDontStripVersionsFromReferencesAtPaths (List) |
overrideResourceIdWithBundleEntryFullUrl |
|
| 如果设置为 true (默认值),则 Bundle.entry.fullUrl 将覆盖 Bundle.entry.resource 的资源 id (如果定义了 fullUrl)。在将源数据解析到 Bundle 对象时,会发生此行为。如果这不是所需的行为(例如,要在 fullUrl 和资源 ID 之间执行其他验证检查,则将其设置为 false)。 |
summaryMode |
|
| 如果设置为 true (默认为 false)则仅包含由 FHIR 规格标记为 is summary 元素的元素。 |
suppressNarratives |
|
| 如果设置为 true (默认为 false),则行为不会包含在编码的值中。 |
dontStripVersionsFromReferencesAtPaths |
| 如果提供的值,则指定路径中的任何资源引用都会对其资源版本进行编码,而不是在编码过程中自动剥离。此设置对解析过程没有影响。这个方法提供了比 setStripVersionsFromReferences (Boolean)的精细控制级别,即使 setStripVersionsFromReferences (Boolean)被设置为 true (默认) | |
contentTypeHeader |
|
| 如果数据格式能够这样做,则数据格式是否应该使用 data 格式的类型设置 Content-Type 标头。例如,用于数据格式到 XML 的 application/xml 或用于数据格式的 application/json 发送到 JSon 等。 |