- From: Bruno Chatel <bcha@chadocs.net>
- Date: Thu, 13 Jul 2006 17:58:28 +0200
- To: "Michael Kay" <mike@saxonica.com>, <xmlschema-dev@w3c.org>
- Cc: "'Pierre Attar'" <attar@tireme.fr>
(I help Pierre who does not succed in sending message to the list) >Date: Thu, 13 Jul 2006 16:33:12 +0200 >To: xmlschema-dev@w3c.org >From: Pierre Attar <pat@tireme.fr> >Subject: Fwd: RE: Resctriction problem on complexType > >Michael, > >Thanks for your answer but I don't really see >where, in this sample, essaiRestrict complexeType allows art1 AND s1. >The basis still remains a choice. The only >restriction made is to make mandatory the two >choices contained in the first one. > > >FYI, here are the different logs of tools : > >Xerces C 2.7 : >Error at file T:\proj\tmp\pbRestriction.xsd, line 20, char 39 > Message: Recurse: There is not a complete >functional mapping between the particles > >XSDValid : >file:/T:/proj/tmp/pbRestriction.xsd:E:20:2: >complexType is an invalid restriction of its base >type: "choice" particle is not a valid >restriction of corresponding "choice" particle in >base type [rcase-Recurse.2.1] [derivation-ok-restriction.5.3] > >SQC : >Initializing Schema Quality Checker. Please wait ... >SchemaQualityChecker has been initialized >PROCESSING T:\proj\tmp\pbRestriction.xsd time : 2006-07-13T15:29:53 ... >T:\proj\tmp\pbRestriction.xsd (file 1 of 1) now being read ... >ERROR > file = file:T:/proj/tmp/pbRestriction.xsd line 35 column 19 >SEVERITY: 1 >ERROR TYPE: 2 >MESSAGE TYPE REFINEMENT ERROR (content type >incompatible with the content type of the basetype): >In the definition of complexType essaiRestrict, >elementOnly content model (<xs:c >hoice maxOccurs="1" minOccurs="1"> > <xs:choice maxOccurs="unbounded" minOccurs="1"> > <xs:element maxOccurs="1" > minOccurs="1" name="art1" nillable="false"/> > <xs:element maxOccurs="1" > minOccurs="1" name="art2" nillable="false"/> > </xs:choice> > <xs:choice maxOccurs="1" minOccurs="1"> > <xs:element maxOccurs="unbounded" >minOccurs="1" name="s1" nillable="false"/> > <xs:element maxOccurs="unbounded" >minOccurs="1" name="s2" nillable="false"/> > </xs:choice> ></xs:choice> >) is not a restriction of elementOnly content >model (<xs:choice maxOccurs="1" mi >nOccurs="1"> > <xs:choice maxOccurs="unbounded" minOccurs="0"> > <xs:element maxOccurs="1" minOccurs="1" name="art1"/> > <xs:element maxOccurs="1" minOccurs="1" name="art2"/> > </xs:choice> > <xs:choice maxOccurs="1" minOccurs="0"> > <xs:element maxOccurs="unbounded" minOccurs="1" name="s1"/> > <xs:element maxOccurs="unbounded" minOccurs="1" name="s2"/> > </xs:choice> ></xs:choice> >), the content type defined by the basetype. > > >Regards, Pierre > > 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 15:57:17 UTC