我有一个像这样的
XML文件:
<?xml version="1.0" encoding="UTF-8"?> <items> <item id="1"> <valid_from>2010-07-09</valid_from> <valid_to>2010-07-12</valid_to> </item> <item id="2"> <valid_from>2010-07-09</valid_from> <valid_to>2009-07-12</valid_to> </item> </items>
是否可以定义一个XML Schema,它说valid_from元素必须比valid_to元素更旧?
解决方法
您可以使用< xs:assert> (或者< xs:report>)来做到这一点:
<xs:complexType name="ItemType"> <xs:sequence> <xs:element name="valid_from" type="xs:date" /> <xs:element name="valid_to" type="xs:date" /> </xs:sequence> <xs:assert test="valid_from lt valid_to" /> </xs:complexType>
但这需要XML Schema 1.1