2011-08-26 59 views
0

我在Visual Studio 2010中編寫了一個XSD模式文件。我想定義一個複雜類型以便不需要,並且在xml中具有無限制的條目。我使用了minOccurs和maxOccurs屬性,但在編輯器中出現錯誤,這些屬性(minOccurs/maxOccurs)不被允許。我可以將它們添加到簡單類型但不是複雜類型。你如何定義一個複雜類型可以有0到多個發生?在複雜類型中使用maxOccurs和minOccurs的XSD模式

下面是我用的XSD:

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <xs:element name="patient" minOccurs="0" maxOccurs="unbounded"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="to" type="xs:string"/> 
     <xs:element name="from" type="xs:string"/> 
     </xs:sequence> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 

回答

2

這應該仍然有效XSD語法。 VS編輯器是否突出顯示它並告訴你它不被允許?它可能只是報告不正確。

編輯:哦,你需要一個複雜類型的序列!

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <xs:element name="patients"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="patient" minOccurs="0" maxOccurs="unbounded"> 
      <xs:complexType> 
      <xs:sequence> 
       <xs:element name="to" type="xs:string"/> 
       <xs:element name="from" type="xs:string"/> 
      </xs:sequence> 
      </xs:complexType> 
     </xs:elemennt> 
     </xs:sequence> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 
+0

我不明白你的編輯。 「你需要一系列複雜類型」是什麼意思?我是新來的xsd。我爲上面的複雜類型定義了一個序列。 – user31673

+0

我其實衝過我的示例代碼。以上現在應該是正確的。你需要一個根節點('patient'),它是一個'complexType',它包含一系列'patient'元素。這就是那個序列,可以有0個或更多的事件。 –

相關問題