如何在使用XSD進行驗證期間填充XML中的默認值?如果我的屬性未被定義爲use="require"
並且具有default="1"
,則可以將這些默認值從XSD填充到XML。在Python中基於XSD驗證和填充默認值
例子: 原始XML:
<a>
<b/>
<b c="2"/>
</a>
XSD方案:
<xs:element name="a">
<xs:complexType>
<xs:sequence>
<xs:element name="b" maxOccurs="unbounded">
<xs:attribute name="c" default="1"/>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
我想用XSD驗證原始XML並填補所有默認值:
<a>
<b c="1"/>
<b c="2"/>
</a>
我如何在Python中獲得它? 驗證沒有問題(例如XMLSchema)。問題是默認值。
我剛剛問過類似的問題,看看這是否支持任何語言的任何驗證庫http://stackoverflow.com/questions/4900867/is-there-a-xml-schema-validation-library-那支持的默認屬性價值 – 2011-02-04 17:21:09
但我從來沒有這樣做,但是,從[lxml文檔](http://lxml.de/validation.html#validation-at-parse-time)它看起來就像它會將默認值「編織」到文檔中一樣。 – 2011-11-14 22:20:53