我正在尝试使用HAPI解析由外部系统生成的 HL7 (v2.3) 消息。这些消息包括自定义 Z 段,包括消息的第二段(在 MSH 和 EVN 之间)。
MSH
Z
EVN
...
问题是对于遇到第一个 Z 段后解析的任何段,HAPI 将生成消息结构,但该结构中的所有数据都是空的。所以,我仍然有一个 EVN 段对象,但其中没有任何数据。
我试过了:
- 没什么,只用开箱即用的 HAPI 解析消息,忽略这一段
- 通过创建我自己的 ADT 消息类(扩展默认类)来扩展 HAPI,在 Z 段中连接:
- addNonstandardSegment()
- add() 与 AbstractSegment 的自定义实现
我目前的解决方法是在 HAPI 获取消息之前预先解析消息并删除该段,但这绝对是错误的方法。有人对我应该做什么有想法吗?