升级到 IBM Integration Bus Healthcare Pack V4.0.0.0

使用 MRM HL7 消息集的应用程序和接口的迁移建议。

当从以下任一先前版本的 Healthcare 升级到 IBM® Integration Bus Healthcare Pack V4.0.0.0 时,请考虑以下建议:

1.1 解析重复项时的行为更改

HL7 消息中的重复 (maxOccurs > 1) 字段和组件的解析在 IBM Integration Bus Healthcare Pack V3.0.0.1 和更高版本中已发生更改。

IBM Integration Bus Healthcare Pack V3.0.0.1 之前的 Healthcare 版本中,出现空的重复字段或重复组件会导致对重复项的解析终止。重复项的所有剩余数据会分配给下一个字段或组件。此行为与 MRM 解析器中记录的行为一致,但对于 HL7 不甚理想。

IBM Integration Bus Healthcare Pack V3.0.0.1 和更高版本中,如果某个字段或组件可重复 (maxOccurs > 1),它在消息集内会标记为可空。该项出现的所有空实例会使用值 NULL 放到消息树中。出现的非空项将正常解析。

1.2 影响分析

大部分消息流不受此行为更改的影响。然而,您可能已修改处理重复字段和组件的部分消息流,以弥补先前版本 Healthcare 的行为。其中一些消息流可能受行为更改的影响。

如果您已在先前版本 Healthcare 中开发消息流,建议您执行以下影响分析:
  1. 标识使用 HL7v25P 消息集的所有消息流。Healthcare:从 HL7 到 HL7Healthcare:从 HL7 到报告模式的所有实例使用此消息集,但可能存在其他消息集。
  2. 针对每个消息流,检查该流是否包含处理重复字段或组件的逻辑。此逻辑包含在 ESQL 或 Java 代码中,或者包含在Mapping节点配置中。
  3. 针对处理重复项的每个流,检查流逻辑是否依赖于先前版本 Healthcare 的行为。

1.3 迁移选项

如果现有 HL7 应用程序不依赖于先前版本 Healthcare 的行为,那么您可以使用 IBM Integration Bus Healthcare Pack V3.0.0.1 和更高版本所提供的消息集。

如果您修改现有消息流中的代码来弥补先前版本 Healthcare 的行为,那么必须使用 HL7v25P 消息集的现有版本。您不能使用 IBM Integration Bus Healthcare Pack V3.0.0.1 和更高版本随附的 HL7v25P 消息集。使用 Healthcare 现有版本的消息集将保留现有版本的行为,并避免消息流行为中发生未计划的更改。

2. 将 DFDL 模型用于 HL7 的应用程序和界面的迁移建议

HL7 的 DFDL 模式由 HL7DFDLInput 节点以及所有基于 DFDL 的模式使用。在 IBM Integration Bus Healthcare Pack V3.0.0.1 和更高版本中,当遇到空的重复字段时,这些模式会将 NULL 插入到消息树中;非重复字段和组件不受影响。插入 NULL 将保持与使用消息集的模式的一致性。当先前版本 Healthcare 中的 DFDL 模式会忽略某个字段或组件时,插入 NULL 可能导致该字段或组件显示在 IBM Integration Bus Healthcare Pack V3.0.0.1 和更高版本的消息树中。不需要特殊的迁移步骤。

Copyright IBM Corporation 2011, 2015Copyright IBM Corporation 2011, 2015.

        
        最近一次更新时间
        最近一次更新时间 : 2015-06-19 10:56:53


概念主题概念主题 | V4.0.0.0 | ha03170