在使用我的XSD XML驗證停止元素我想空元素不被接受如何在XML被空使用XSD
我的XML:
<Request>
<Query>Select * from Table</Query>
<Query></Query>
</Request>
我的XSD:
<xs:simpleType name="className">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="status">
<xs:restriction base="xs:integer">
<xs:minInclusive value="100" />
<xs:maxExclusive value="600" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="requires">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="sql">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="requires" type="requires"/>
<xs:attribute name="when" type="xs:string" />
<xs:attribute name="limit" type="xs:string" />
<xs:attribute name="offset" type="xs:string" />
<xs:attribute name="classname" type="className" />
<xs:attribute name="status" type="status"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="query">
<xs:complexContent>
<xs:extension base="sql">
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Request">
<xs:complexType>
<xs:sequence>
<xs:element name="Query" type="query" maxOccurs="unbounded">
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
我希望如果查詢標記爲空,則不接受查詢標記,因此這應該是無效的。希望我的問題是關鍵的。 :)
非常感謝。這對我來說很愚蠢。我爲非空字符串聲明瞭一個新的simpleType,因爲將來可能需要爲className放置一些正則表達式。 –