[Home] [By Thread] [By Date] [Recent Entries]


Joe Chiusano wrote:
> I believe this will not work because the schema would be
> non-determinstic. That is, because the following declaration:
>
>       <xs:element ref="earliestdate" minOccurs="0"/>
>
> appears in two different "choice" constructs, a schema processor
> will not be able to discern whether an occurrence of "earliestdate"
> is applicable to the first "choice" construct or the second one.
> Same idea for "latestdate".

I think that the desired model is:

  (description, ( (earliestdate, latestdate?) |
                  (latestdate, earliestdate?) ))

i.e. a description followed by either earliestdate (maybe followed by
latestdate) or latestdate (maybe followed by earliestdate):

  <xs:sequence>
    <xs:element name="description" />
    <xs:choice>
      <xs:sequence>
        <xs:element name="earliestdate" />
        <xs:element name="latestdate" minOccurs="0" />
      </xs:sequence>
      <xs:sequence>
        <xs:element name="latestdate" />
        <xs:element name="earliestdate" minOccurs="0" />
      </xs:sequence>
    </xs:choice>
  </xs:sequence>

But it wasn't described very clearly, so David Yancey might have
wanted something completely different.

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member