Why doesn't XML have Bag?
David Megginson
david at megginson.com
Fri Mar 26 13:42:19 GMT 1999
Roger L. Costello writes:
> Why doesn't XML support the notion of an unordered list of elements,
> i.e., a Bag? Perhaps this is a limitation of DTD, not XML? That is,
> DTDs do not support Bags, but XML has no such inherent limitation? Does
> DCD support Bags? /Roger
XML DTDs can constrain the content of a bag just fine:
(a|b|c|d|e|f)*
XML DTDs cannot constrain the content of a set (where each element may
appear exactly once, in any order). This is not an SGML DTD
limitation, since in SGML you can use
(a&b&c&d&e&f)
You can simulate this in XML DTDs, but the content models become
absurdly large.
This is not to say that you cannot have a set in XML even *with* DTD
validation; it's just that DTD validation will not catch the errors.
For example, either
(a|b|c|d|e|f)*
or even
ANY
will allow a set, but they will not catch the error where the same
element appears twice.
All the best,
David
--
David Megginson david at megginson.com
http://www.megginson.com/
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list