溫馨提示×

lxml怎么實現XML文檔的Schematron驗證

小億
102
2024-05-15 15:32:17
欄目: 編程語言

在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庫。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女