W3C home > Mailing lists > Public > xmlschema-dev@w3.org > January 2009

Re: Ignore Order while validating XSD

From: C. M. Sperberg-McQueen <cmsmcq@acm.org>
Date: Mon, 26 Jan 2009 12:12:33 -0700
Message-Id: <FD169D6C-DA83-49BE-9CB8-8D395E0AC8CE@acm.org>
Cc: "C. M. Sperberg-McQueen" <cmsmcq@acm.org>, xmlschema-dev@w3.org
To: Eduardo Oliveira <eduardo.oliveirared@gmail.com>


On 26 Jan 2009, at 09:08 , Eduardo Oliveira wrote:

> ...
> Even, I have a problem because I can not limit the repeating size  
> because the elements are inside an unbounded size choice element,  
> isnīt it?

Correct.  XSD 1.1 may be helpful to you here (so make sure your vendors
know you would like to see it supported), because it will allow you to
express

>
> Another problem I had is using xs:all inside the xs:group cause an  
> error. Is it not possible?

No, all-groups complicate matters a great deal when they are allowed
inside of other group types.  It's not the occurrence of xsd:all inside
the model group definition that is forbidden, but the use of that
defined all-group inside a sequence.  So what you want may be more like
this:


  <xsd:group name="bcx">
   <xsd:choice>
    <xsd:element ref="my:b" />
    <xsd:element ref="my:c" />
    <xsd:element ref="my:x" />
   </xsd:choice>
  </xsd:group>

  <xsd:complexType name="oliveira">
   <xsd:sequence>
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
     <xsd:group ref="my:bcx"/>
    </xsd:choice>
    <xsd:element ref="my:a" />
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
     <xsd:element ref="my:a" />
     <xsd:group ref="my:bcx"/>
    </xsd:choice>
   </xsd:sequence>
  </xsd:complexType>

I hope this helps.


-- 
C. M. Sperberg-McQueen, W3C XML Activity
http://www.w3.org/People/cmsmcq
http://cmsmcq.com/mib/
http://www.balisage.net/
Received on Monday, 26 January 2009 19:12:28 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:15:50 UTC