是否可以定义具有任意数量元素的XML模式?

时间:2014-08-04 18:59:35

标签: xml xsd schema sequence

到目前为止,这是我的代码,我的问题是如何在序列中定义元素? (序列中的每个元素也需要具有属性" name"和" Position")

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="FieldData">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="1stElement" position="">
             ...
            <xs:element name="nthElement" position="">
        </xs:sequence>
    </xs:complexType>
</xs:element>

1 个答案:

答案 0 :(得分:1)

有许多方法可以在序列中定义任意数量的元素。这是一个简单的方法:

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:element name="FieldData">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="e1" type="eType"/>
        <xs:element name="e2" type="eType"/>
        <xs:element name="e3" type="eType"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:complexType name="eType">
    <xs:attribute name="name" use="required"/>
    <xs:attribute name="Position" use="required"/>
  </xs:complexType>

</xs:schema>

如果这不符合您的需求,请提供更多详细信息。