1

在 Oracle 上验证我的 XML 文档失败(通过 oraxsd c 库),但在其他工具中成功。

Oracle 验证错误:

LSX-00009:类型“#simple”的数据丢失
LSX-00213:粒子“序列”仅出现 0 次,最小值为 1

对于以下 XSD:

<xs:element name="AGREE" minOccurs="0">
    <xs:simpleType>
        <xs:restriction base="type7434"/>
    </xs:simpleType>
</xs:element>

<xs:simpleType name="type7434">
    <xs:annotation>
        <xs:documentation>AGREE</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string">
        <xs:maxLength value="70"/>
    </xs:restriction>
</xs:simpleType>

并遵循 XML:

<AGREE/>

相同的结果: <AGREE></AGREE>

在这种情况下,Oracle 验证是否错误?如果是这样,解决方法是什么?

我对 XSD 几乎没有控制权,对 XML 有一些控制权以及对验证过程本身的完全访问权限。

Oracle 版本:Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit

4

1 回答 1

1

对于它的价值,它对我来说似乎是一个错误。我想知道验证器是否在唯一标签和空元素之间做出了一些古怪的区分:它是否也拒绝<AGREE></AGREE>?如果添加<xs:minLength value="0"/>到 type7434 的声明,它会改变行为吗?

于 2013-02-11T23:42:40.237 回答