我得到了这个xml代码:
<s:complexType name="number">
<xs:sequence>
<xs:element name="number" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="start" type:"xs:double"/>
<xs:attribute name="end" type:"xs:double"/>
<xs:complexType>
我想确保end属性的数字大于start。 我该怎么做?
答案 0 :(得分:1)
使用XSD 1.1,您可以使用Assertions
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:complexType name="number">
<xs:sequence>
<xs:element name="number" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="start" type="xs:double"/>
<xs:attribute name="end" type="xs:double"/>
<xs:assert test="@end gt @start"/>
</xs:complexType>
</xs:schema>