您的位置:宽带测速网 > 编程知识 > lxml怎么实现XML文档的Schematron验证

lxml怎么实现XML文档的Schematron验证

2025-07-04 09:26来源:互联网 [ ]

在lxml中,可以使用etree模块中的Schematron类来实现XML文档的Schematron验证。以下是一个简单的示例代码:

from lxml import etree# 定义Schematron验证规则schematron = etree.Schematron(etree.XML('''<schema xmlns="http://purl.oclc.org/dsdl/schematron"><pattern><rule context="book"><assert test="title">Every book must have a title.</assert></rule></pattern></schema>'''))# 加载XML文档xml_doc = etree.parse('books.xml')# 进行Schematron验证validation_result = schematron.validate(xml_doc)# 输出验证结果if validation_result:print("XML文档通过Schematron验证")else:print("XML文档未通过Schematron验证")

在上面的示例中,首先定义了一个Schematron验证规则,然后使用Schematron类加载这个规则。接着加载了一个XML文档books.xml,并调用validate方法对其进行Schematron验证。最后根据验证结果输出相应的信息。

需要注意的是,要使用etree.Schematron类,需要确保安装了lxml库。