【发布时间】:2015-04-11 07:29:16
【问题描述】:
Hapi 包含一个解析器函数,可以将特定的 HL7 版本解析为备用版本:
HapiContext context = new DefaultHapiContext();
CanonicalModelClassFactory mcf = new CanonicalModelClassFactory("2.5");
context.setModelClassFactory(mcf);
PipeParser parser = context.getPipeParser();
parser.getParserConfiguration().setIdGenerator(new InMemoryIDGenerator());
context.getParserConfiguration().setValidating(false);
ADT_AXX axx = null;
try {
axx = (ADT_AXX) parser.parse(message.toString());
}
catch (HL7Exception e) {
log.warn("Exception parsing to AXX");
e.printStackTrace();
}
在 2.31 版中,主治医生在 PV1.7-9 中发送消息。在 2.5 中有一个 ROL 段来保存这些信息。我的问题是 Hapi 解析器似乎没有将 PV1.7.9 解析为 ROL。我不认为这是正确的行为?任何支持指导表示赞赏?
【问题讨论】:
-
您解析的消息是什么,收到的错误消息是什么?我对
hapi了解不多,但我会尝试在负责消息映射的源代码中找到答案,并且我希望会有一些可配置的映射。随着hl7协议的存在时间越长,它变得越动态和消息配置文件驱动。顺便说一句:我不认为在这个低级别的图书馆应该假装它看到了其他东西而不是真正的东西。通常是一些上层抽象层的业务 -
感谢您的评论,但我认为答案比我想象的要直截了当。