[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Unrestricted order and cardinality?
Le mercredi 21 juin 2006 à 14:21 +0100, Marielou a écrit : > Funny thing is, the description used to be written in > a DTD, but my boss now wants a schema! Did he tell which one? If not, give him a RELAX NG schema, that will make your life much easier :) ... > When I use <choice> in a schema, I find it works when > all element occurrences are unrestricted, Yes, that's how I understood your requirements in your first mail. > but I have > several child elements to describe each with different > cardinality, all are unrestricted in the order. So I > tried with maxOccurs="unbounded" on the <choice> and a > limit on the elements but I find that the maxOccurs on > the <choice> takes priortiy over element occurrences > so maxOccurs e.g below > > <xs:element name="parentA"> > <xs:complexType> > <xs:choice minOccurs="0" maxOccurs="unbounded"> > <xs:element ref="childB" minOccurs="1" maxOccurs="1"/> > <xs:element ref="childC" minOccurs="1" > maxOccurs="7"/> > <xs:element ref="childD" minOccurs="1" maxOccurs="4"/> > <xs:element ref="childE" minOccurs="1" > maxOccurs="unbounded"/> > ... > </xs:choice> > </xs:complexType> > </xs:element> > > lets all elements occur unbounded and ignores that > e.g. B should only occur 1x. If I remove "unbounded" > from the <choice>, I cant get past the first element! Yep, that's how xs:choice is supposed to work. What you need would be xs:all without the restrictions imposed to this composer in the W3C XML Schema recommendation but such a thing doesn't exist. If you can use RELAX NG, this is trivial using an interleave pattern. Eric -- GPG-PGP: 2A528005 Weblog: http://eric.van-der-vlist.com/blog?t=category&a=English ------------------------------------------------------------------------ Eric van der Vlist http://xmlfr.org http://dyomedea.com (ISO) RELAX NG ISBN:0-596-00421-4 http://oreilly.com/catalog/relax (W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema ------------------------------------------------------------------------ Ceci est une partie de message=?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|