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


John Graybeal <graybeal@m...> writes:

> If [W3C XML Schema can't require 1 a, 0 or 1 b, any number of c, in
> any order], can you offer a few words about why things were
> constrained in this way?

One reason was that there was disagreement about precedence -- that
is, does

  ( a & b? & c*)

mean

  a c b c 

is allowed, or only

  a c c b

?

Another (perhaps, with hindsight, misguided) reason was to mitigate
the impact on parser writers.

And finally, there was perhaps a somewhat paternalistic (and therefore
again perhaps misguided) feeling that this is bad markup design - you
shouldn't want to do this.  It makes documents hard to read, and hard
to process.  Allowing something unique (e.g. your 'required_element')
to appear in the midst of a large collection of optional elements is
at best unhelpful.

It also seems likely to arise from a confusion between domain
modelling with document design -- if, as seems likely, order is not
significant (that is, where in the group a child occurs bears no
semantic weight), then good markup design is to choose an order and
require it.

Speaking only for myself,

ht
-- 
 Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
                     Half-time member of W3C Team
    2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
            Fax: (44) 131 650-4587, e-mail: ht@i...
                   URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]

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