Why doesn't XML have Bag? Uh, "set"
Roger L. Costello
costello at mitre.org
Fri Mar 26 14:04:01 GMT 1999
Thanks Dave for clarifying terminology. It is "set" that I meant, not
"bag". Just to make certain that I understand, an XML DTD cannot
express the following:
"A <Kitchen> element contains exactly three child elements: one instance
of <Sink>, one instance of <Stove>, and one instance of <Refrigerator>,
and these child elements can appear in any order."
P.S. Attributes can be listed in any order in an XML document,
regardless of the order that they are listed in the DTD. Right?
David Megginson wrote:
> 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:
> 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
> 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
> or even
> will allow a set, but they will not catch the error where the same
> element appears twice.
> All the best,
> David Megginson david at 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;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev