使用Schema 1.1的lxml

6
我正在尝试使用lxml和xs:assert验证标签。我尝试使用这个IBM页面的示例:http://www.ibm.com/developerworks/library/x-xml11pt2/
<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>

看起来lxml不支持XML Schema 1.1。

有人可以验证一下吗?哪个XML(Python)引擎支持Schema 1.1?

2个回答

1

是的,libxml不支持xsd 1.1。请使用xmlschema >=1.0.14。


0

目前支持XSD 1.1的两个模式处理器是基于Java的Xerces和Saxon。


谢谢你的回答。那Microsoft的技术呢? - Nitay
没关系 - 维基百科上关于此的文章是相当详细的。谢谢。http://en.wikipedia.org/wiki/XML_Schema_(W3C)#Version_1.1 - Nitay
这个答案已经过时了。与此同时,还有Python包xmlschema。请参见我的回答 - Alex
感谢更新。我确实写了“目前”,所以我认为它仍然很完美!但是我非常高兴看到现在有一个新的XSD 1.1处理器可用。答案还未提到Altova模式处理器。 - Michael Kay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接