Re: Ambiguous content models -- allowed or disallowed by XSDL?

Hi Henry,

> Summary: Ambiguity and unique attribution are different -- the *ML
> family have never ruled out the former, always required the latter.

Thanks for that clear summary. The example that's been buzzing around
in the back of my head is:

  <xs:sequence minOccurs="2" maxOccurs="2">
    <xs:element name="a" minOccurs="1" maxOccurs="2" />
    <xs:element name="b" minOccurs="0" />
  </xs:sequence>

which fulfils the unique attribution constraint since there is only
one particle for each of the two elements a and b, but is ambiguous
because if you have:

  <a /><a /><b />

then you don't know whether you've got to the end of the content model
(the first a comes from the first occurrence of the sequence, the
remainder from the second occurrence of that sequence) or if you're
still within the first occurrence of the sequence.

For my education, could you explain (or point me to something that
explains) how parsers manage to accept the sequence a, a, b without
backtracking?

BTW, XSV and Xerces (C++ and Java) are quite happy with the sequence
a, a, b, but MSXML objects, saying that the content model hasn't been
completed, so it looks like Microsoft needs some education as well ;)

Cheers,

Jeni

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

Received on Thursday, 13 June 2002 05:21:41 UTC