2011-08-26 23 views
0

私はVisual Studio 2010でXSDスキーマファイルを作成しています。複雑な型を定義する必要はなく、xmlには無制限のエンティティがあります。 minOccursとmaxOccurs属性を使用しましたが、これらの属性(minOccurs/maxOccurs)が許可されていないというエラーがエディタに表示されています。単純な型には追加できますが、複雑な型には追加できません。どのように複雑な型が0から多くの出現を持つことができるかを定義しますか?複合型のmaxOccursとminOccursを使用する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構文のようになります。ここでは

は私が使っていた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

私は実際に私のサンプルコードを突っ込んだ。上記は正しいはずです。ルートノード( 'patients')が必要です。これは、' patient'要素のシーケンスを含む 'complexType'です。 0以上の出現を持つシーケンスです。 –

関連する問題