2012-10-05 92 views
1

我有一個非常標準的XML模式,定義了一個名爲「part」的元素,應該重複。XML模式問題:重複元素不重複

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 

<xs:element name="part"> 
    <xs:complexType> 
    <xs:sequence> 
    <xs:element name="part_number" type="xs:string"/> 
    <xs:element name="price" type="xs:decimal"/> 
    </xs:sequence> 
</xs:complexType> 
</xs:element> 

</xs:schema> 

問題是,當我用這個模式來導出價格表我得到這個:

<?XML version="1.0" encoding="UTF-8" standalone="yes"?> 
<part> 
<part_number>10-000</part_number> 
<price>151.8</price> 
</part> 

當我想多張<part>元素。 我在哪裏搞亂模式?

回答

4
<xs:element name="parts"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="part" maxOccurs="unbounded" minOccurs="0"> 
      <xs:complexType> 
      <xs:sequence> 
       <xs:element name="part_number" type="xs:string"/> 
       <xs:element name="price" type="xs:decimal"/> 
      </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
     </xs:sequence> 
    </xs:complexType> 
    </xs:element> 

http://www.w3schools.com/schema/schema_example.asp

2

你的元素需要的maxOccurs = 「無界」,因爲對maxOccurs的默認值是1。

<xs:element name="part" maxOccurs="unbounded">