2011-12-13 96 views
0

我嘗試創建一個XML來描述帶有多選選項或純文本的練習。該XML可能看起來像這樣:如何包含同名多個元素

<exercise number="1" type="multiChoice"> 
<question>My very importand question</question> 
<answer type="false">yes</answer> 
<answer type="true">no</answer> 

<exercise number="2" type="text"> 
    <question>Question 2</question> 
    <answer>the right answer</answer> 
</exercise> 

所以我試圖用一個序列的答案,它沒有工作,如果我嘗試當我有一個以上的,以驗證它<answer> -Tags在XML中。

這是架構:

<xs:complexType name="exerciseType"> 
    <xs:sequence> 
     <xs:element name="question" type="questionType"/> 
     <xs:sequence> 
      <xs:element name="answer" minOccurs="1"> 
       <xs:complexType> 
        <xs:simpleContent> 
         <xs:extension base="xs:string"> 
          <xs:attribute name="type" type="xs:boolean" use="optional"/> 
         </xs:extension> 
        </xs:simpleContent> 
       </xs:complexType> 
      </xs:element> 
     </xs:sequence> 
    </xs:sequence> 
    <xs:attribute name="number" type="xs:positiveInteger"/> 
    <xs:attribute name="type" type="xs:string"/> 
</xs:complexType> 

任何人都知道什麼是錯我的架構?

在此先感謝!

回答

2

你可以嘗試設置maxOccurs屬性:

<xs:complexType name="exerciseType"> 
    <xs:sequence> 
     <xs:element name="question" type="questionType"/> 
     <xs:element name="answer" maxOccurs="unbounded"> 
    </xs:sequence> 
    <xs:attribute name="number" type="xs:positiveInteger"/> 
    <xs:attribute name="type" type="xs:string"/> 
</xs:complexType> 

免責聲明:本寫不通過工具進行驗證,並可以包含錯誤。

+0

這工作 - 謝謝你的快速答案:)! – SideEffect

相關問題