W3C home > Mailing lists > Public > xmlschema-dev@w3.org > July 2006

RE: Resctriction problem on complexType

From: Michael Kay <mike@saxonica.com>
Date: Thu, 13 Jul 2006 15:13:58 +0100
To: "'Bruno Chatel'" <bcha@chadocs.net>, <xmlschema-dev@w3c.org>
Cc: "'Pierre Attar'" <attar@tireme.fr>
Message-ID: <008401c6a686$9b9883d0$e80e050a@turtle>

Your restricted type allows an art1 element followed by an s1 element. The
base type doesn't allow this. It's invalid to define a restricted type that
allows content that the base type doesn't permit.

Michael Kay
http://www.saxonica.com/
 

> -----Original Message-----
> From: xmlschema-dev-request@w3.org 
> [mailto:xmlschema-dev-request@w3.org] On Behalf Of Bruno Chatel
> Sent: 13 July 2006 15:03
> To: xmlschema-dev@w3c.org
> Cc: Pierre Attar; Bruno Chatel
> Subject: Resctriction problem on complexType
> 
> 
> Hi,
> 
> I have an error wuth the following schema using a restriction 
> of a complexType.
> 
> The schema is not valid using different tools (SQC, XSDValid, 
> Xerces, XmlSpy)...
> But the error messages are not really understandable.
> 
> The aim is ti defne a restricted type by setting minOccurs to 
> 1 to included choices.
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
> elementFormDefault="qualified" attributeFormDefault="unqualified">
>  <xs:complexType name="essai">
>       <xs:choice>
>            <xs:choice minOccurs="0" maxOccurs="unbounded">
>                 <xs:element ref="art1"/>
>                 <xs:element ref="art2"/>
>            </xs:choice>
>            <xs:choice minOccurs="0">
>                 <xs:element ref="s1" maxOccurs="unbounded"/>
>                 <xs:element ref="s2" maxOccurs="unbounded"/>
>            </xs:choice>
>       </xs:choice>
>  </xs:complexType>
> 
>  <xs:complexType name="essaiRestrict">
>       <xs:complexContent>
>            <xs:restriction base="essai">
>                 <xs:choice>
>                      <xs:choice maxOccurs="unbounded">
>                           <xs:element ref="art1"/>
>                           <xs:element ref="art2"/>
>                  </xs:choice>
>                  <xs:choice>
>                           <xs:element ref="s1" maxOccurs="unbounded"/>
>                       <xs:element ref="s2" maxOccurs="unbounded"/>
>                  </xs:choice>
>              </xs:choice>
>         </xs:restriction>
>       </xs:complexContent>
>  </xs:complexType>
>  
> <xs:element name="art1"/>
>  <xs:element name="art2"/>
>  <xs:element name="s1"/>
>  <xs:element name="s2"/>
>  
> </xs:schema>
> 
> Can anybody explain the problem ?
> 
> Thanks in advance
> 
> --
> Bruno Chatel
> Tel : (+33) (0)4 96 11 14 57
> bcha@chadocs.com
> http://www.chadocs.com
> --------------------------------------
> 
> 
Received on Thursday, 13 July 2006 14:14:30 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 11 January 2011 00:14:55 GMT