我刚刚阅读了有关 XSD 1.1 断言的本教程:
http://www.ibm.com/developerworks/library/x-xml11pt2/
我复制了他们的一个示例并创建了这个xsd
文件:
<?xml version="1.1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="dimension">
<xs:complexType>
<xs:attribute name="height" type="xs:int"/>
<xs:attribute name="width" type="xs:int"/>
<xs:assert test="@height = @width"/>
</xs:complexType>
</xs:element>
</xs:schema>
我正在尝试使用以下命令将其解析为使用CodeSynthesis XSD XML Schema 到 C++ 编译器4.0.0的代码生成 hxx 文件:
/path/to/binary cxx-tree /path/to/file.xsd
但我收到以下错误:
/path/to/file.xsd:7:41:错误:复杂类型定义中的无效元素“断言”
当我将 xml 版本更改为1.0
. 据我了解,在这种情况下,xml 版本无关紧要,但我可能错了。
什么会导致此错误消息,我该如何解决?