我有以下XML
结构:
<?xml version="1.0" encoding="utf-8"?>
<DataSets>
<DataSet>
<Parameter id="1"/>
<Parameter Description="My Description"/>
<Parameter value="3.14"/>
</DataSet>
<DataSet>
<Parameter id="2"/>
<Parameter timeout="123"/>
</DataSet>
</DataSets>
对于验证,我想创建一个XSD
架构。最内部元素Parameter
可以通过任何类型使用任何名称。必须至少一个这样的元素。
如何为这个内部元素定义XSD
方案?
答案 0 :(得分:1)
您可以使用xs:any指定任何名称和类型。您的XML针对以下XSD进行验证:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="DataSets" type="dataSets"/>
<xs:complexType name="dataSets">
<xs:sequence>
<xs:element name="DataSet" type="dataSet" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="dataSet">
<xs:sequence>
<xs:any minOccurs="1" maxOccurs="unbounded" namespace="##any" processContents="lax" />
</xs:sequence>
</xs:complexType>
</xs:schema>