dbUnit dtd错误:元素类型“数据集”的声明必须以\'>\'结尾

问题描述

|| 我是第一次使用dbUnit。我从这里获取了样本dtd:
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<!ELEMENT dataset (table+) | ANY>
<!ELEMENT table (column*,row*)>
<!ATTLIST table
    name CDATA #required
>
<!ELEMENT column (#PCDATA)>
<!ELEMENT row (value | null | none)*>
<!ELEMENT value (#PCDATA)>
<!ELEMENT null EMPTY>
我收到以下错误:   org.dbunit.dataset.DataSetException:第2行:元素类型\“ dataset \”的声明必须以\'> \'结尾。 这意味着什么?我很困惑,因为我采用了原始dtd,其次在数据集定义的末尾有一个\'> \'。 谢谢您的帮助!     

解决方法

将第一行更改为: <!ELEMENT数据集(表+ | ANY)> 将使语法正确。 但是,该模型也可能是: <!ELEMENT数据集ANY> 因为\“ ANY \”上下文规范仍然会匹配表元素(更多信息,请参见:http://www.w3.org/TR/xml/#sec-ologic-struct)