我不完全确定这是适合它的地方 - 如果是这样,这个问题应该是“我应该在哪里问这个问题?” ;)
我有一些我正在维护的代码正在解析 HL7 和 MLLP。它打开 MLLP 消息并将其发送到 HL7 解析器。它将它直接发送回 MLLP 解析器。正如你可以想象的那样,这很糟糕,很快。
我对 HL7/MLLP 还很陌生,但我真的很困惑,也很确定 HL7 不应该包含另一个 MLLP 消息。如果允许这样做,我能否获得一些文档的链接/引用来说明这一点?
只需使用转义序列来屏蔽 MLLP 代码,请参阅http://www.hl7standards.com/blog/2006/11/02/hl7-escape-sequences/
但是,如果您只想在一个 MLLP 信封中发送多个 HL7 消息,我会使用 FHS 和 BHS 段的批处理
虽然可能与您描述的问题不同,但 HL7 消息最终被双重包裹在 MLLP 信封中的情况并不少见。如果消息正在通过另一个系统转换,则尤其如此。(比如从计费系统,通过 EHR)
一个标准的信封是
<VT>...hl7data...<FS><CR>
但是双重包装的消息看起来像这样
<VT><VT>...hl7data...<FS><CR><FS><CR>
这只是需要注意的事情。并且应该由系统在中间正确解包和重新包装消息进行纠正。