2012-03-22 19 views
2
<?xml version="1.0"?> 
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<xsd:element name="game"> 
    <xsd:complexType> 
     <xsd:all> 
      <xsd:element name="info" type="infoType" minOccurs="0"/> 
     </xsd:all> 
    </xsd:complexType> 
</xsd:element> 
    <xsd:complexType name="infoType"> 
     <xsd:sequence> 
     <xsd:element name="name" type="xsd:string" minOccurs="0" maxOccurs="1"/> 
     <xsd:element name="players" minOccurs="0" maxOccurs="1"> 
      <xsd:complexType mixed="true"> 
       <xsd:attribute name= "number" type="playernum"/> 

       <!-- xsd:element name="screenname" type="xsd:string"> 
        <xsd:complexType> 
        <xsd:attribute name= "player" type="playernum"/> 
        </xsd:complexType> 
       </xsd:element --> 

      </xsd:complexType> 
     </xsd:element> 
     </xsd:sequence> 
    </xsd:complexType> 
<xsd:simpleType name="playernum"> 
    <xsd:restriction base="xsd:int"> 
    <xsd:minInclusive value="1"/> 
    <xsd:maxInclusive value="4"/> 
    </xsd:restriction> 
</xsd:simpleType>  
</xsd:schema>infoType 

問題のコードはコメントです。XSDネストした要素

それはエラー出力を生成する:

game.xsd:26:element要素:スキーマパーサーエラー:要素 '{http://www.w3.org/2001/XMLSchema}complexType':内容は ではありません。期待されるのは(注釈?、(simpleContent | complexContent | (group | all | choice | sequence)?,((attribute | attributeGroup)*、 anyAttribute?)))))です。

問題の要素には、デフォルトでcomplexContentを持つcomplextTypeが含まれています。 ご協力いただきありがとうございます。

答えて

3

私はあなたがxsd:sequenceが欠落していると言うだろう、さらにscreennamexsd:string、同時にcomplexTypeすることはできません - あなたは、どちらか一方を選択することがあります。

おそらくこれは何が必要です:それはあなたに感謝しました、私はXSDに新しいです

<?xml version="1.0"?> 
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
    <xsd:element name="game"> 
    <xsd:complexType> 
     <xsd:all> 
     <xsd:element name="info" type="infoType" minOccurs="0"/> 
     </xsd:all> 
    </xsd:complexType> 
    </xsd:element> 
    <xsd:complexType name="infoType"> 
    <xsd:sequence> 
     <xsd:element name="name" type="xsd:string" minOccurs="0" maxOccurs="1"/> 
     <xsd:element name="players" minOccurs="0" maxOccurs="1"> 
     <xsd:complexType mixed="true"> 
      <xsd:sequence> 
      <xsd:element name="screenname"> 
       <xsd:complexType mixed="true"> 
       <xsd:attribute name= "player" type="playernum"/> 
       </xsd:complexType> 
      </xsd:element> 
      </xsd:sequence> 
      <xsd:attribute name= "number" type="playernum"/> 
     </xsd:complexType> 
     </xsd:element> 
    </xsd:sequence> 
    </xsd:complexType> 
    <xsd:simpleType name="playernum"> 
    <xsd:restriction base="xsd:int"> 
     <xsd:minInclusive value="1"/> 
     <xsd:maxInclusive value="4"/> 
    </xsd:restriction> 
    </xsd:simpleType> 
</xsd:schema> 
+0

は、あなたは私の永遠のおかげで、良い先生を持っている、しかしかなり明白だった;-) – Hut

関連する問題