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."
Correct? /Roger
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:
>
> (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