微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用se.acode.openehr.parser.ADLParser和org.openehr.adl.parser.AdlDeserializer的OpenEHR ADLParser错误

如何解决使用se.acode.openehr.parser.ADLParser和org.openehr.adl.parser.AdlDeserializer的OpenEHR ADLParser错误

我们正在尝试反序列化ADL文件(ADMIN-ENTRY),但是同时使用ADLParser和ADLDeserializer会发生错误

使用se.acode.openehr.parser.ADLParser返回此错误消息:

se.acode.openehr.parser.ParseException: Encountered " <V_LOCAL_CODE> "\"at0108\" "" at line 109,column 112.
Was expecting:
    "}" ...
    
    at se.acode.openehr.parser.ADLParser.generateParseException(ADLParser.java:7327)
    at se.acode.openehr.parser.ADLParser.jj_consume_token(ADLParser.java:7191)
    at se.acode.openehr.parser.ADLParser.c_attribute(ADLParser.java:2832)
    at se.acode.openehr.parser.ADLParser.c_complex_object_body(ADLParser.java:2604)
    at se.acode.openehr.parser.ADLParser.c_complex_object(ADLParser.java:2587)
    at se.acode.openehr.parser.ADLParser.c_object(ADLParser.java:2632)
    at se.acode.openehr.parser.ADLParser.c_attr_values(ADLParser.java:2868)
    at se.acode.openehr.parser.ADLParser.c_attribute(ADLParser.java:2831)
    at se.acode.openehr.parser.ADLParser.c_complex_object_body(ADLParser.java:2604)
    at se.acode.openehr.parser.ADLParser.c_complex_object(ADLParser.java:2587)
    at se.acode.openehr.parser.ADLParser.c_object(ADLParser.java:2632)
    at se.acode.openehr.parser.ADLParser.c_attr_values(ADLParser.java:2868)
    at se.acode.openehr.parser.ADLParser.c_attribute(ADLParser.java:2831)
    at se.acode.openehr.parser.ADLParser.c_complex_object_body(ADLParser.java:2604)
    at se.acode.openehr.parser.ADLParser.c_complex_object(ADLParser.java:2587)
    at se.acode.openehr.parser.ADLParser.c_object(ADLParser.java:2632)
    at se.acode.openehr.parser.ADLParser.c_attr_values(ADLParser.java:2868)
    at se.acode.openehr.parser.ADLParser.c_attribute(ADLParser.java:2831)
    at se.acode.openehr.parser.ADLParser.c_complex_object_body(ADLParser.java:2604)
    at se.acode.openehr.parser.ADLParser.c_complex_object(ADLParser.java:2587)
    at se.acode.openehr.parser.ADLParser.c_object(ADLParser.java:2632)
    at se.acode.openehr.parser.ADLParser.c_attr_values(ADLParser.java:2868)
    at se.acode.openehr.parser.ADLParser.c_attribute(ADLParser.java:2831)
    at se.acode.openehr.parser.ADLParser.c_complex_object_body(ADLParser.java:2604)
    at se.acode.openehr.parser.ADLParser.c_complex_object(ADLParser.java:2587)
    at se.acode.openehr.parser.ADLParser.c_object(ADLParser.java:2632)
    at se.acode.openehr.parser.ADLParser.c_attr_values(ADLParser.java:2868)
    at se.acode.openehr.parser.ADLParser.c_attribute(ADLParser.java:2831)
    at se.acode.openehr.parser.ADLParser.c_complex_object_body(ADLParser.java:2604)
    at se.acode.openehr.parser.ADLParser.c_complex_object(ADLParser.java:2587)
    at se.acode.openehr.parser.ADLParser.cadl_text(ADLParser.java:2553)
    at se.acode.openehr.parser.ADLParser.arch_deFinition(ADLParser.java:738)
    at se.acode.openehr.parser.ADLParser.archetype(ADLParser.java:295)

使用org.openehr.adl.parser.AdlDeserializer返回此错误消息:

org.openehr.adl.parser.AdlParserException: 1:0 extraneous input '' expecting {ARCHETYPE,TEMPLATE,TEMPLATE_OVERLAY}
335:0 mismatched input 'ontology' expecting <EOF>
    at org.openehr.adl.parser.AdlDeserializer.parse(AdlDeserializer.java:68)
    at org.openehr.adl.parser.AdlDeserializer.parse(AdlDeserializer.java:51)

这是ADL文件https://drive.google.com/file/d/1m7vQ7fw7EvQI58t3kbL73Py713DYV-Q9/view?usp=sharing

有人知道我该怎么解决吗?

解决方法

我认为第 109 行带有 DV_TEXT 的构造是非法的。 在这一行下面几行使用了相同的结构,尝试删除这一行,看看是否在该位置出现错误。

你想达到什么目的?它是一个正则表达式吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。