[
Lists Home |
Date Index |
Thread Index
]
> I'm somewhat new to Relax NG, but reading through it's primer doc it
> appeared that the Order of the Elements was also strictly
> governed by the
> schema (in other words, you can't do this in RelaxNG either).
It's not, although by default it is. To declare child elements as
unordered, place them in an <interleave> element.
> Which brings
> the question, WHY? Why do the schema languages care about the particular
> order of the XML nodes?
In the case of XML Schema, nested unordered content can play havoc with
determining the validity of an element instance in a content model. I might
be able to give you an example if it weren't Monday... but it's true, I
swear!
> I can see the advantages of having this as an option
> (i.e. something like <sequence order="fixed"> or something) but to make it
a
> requirement seems to backwards for most XML usages.
There was an excellent thread on this last week. Basically, the argument
goes:
a) if order doesn't matter, choose one (because it doesn't matter!)
b) if order does matter, declare the correct order
I'm paraphrasing a), but I believe there is a circularity to the argument
even when it's more intelligently phrased, which is why I hesitate to
embrace it wholeheartedly. I'm coming around, though, since I can see where
it sometimes make processing must faster and validation easier when there is
a declared fixed order to content. And supplying fixed order is always easy
for the content generator (I suppose); thus one should do so.
Someone may come along momentarily to give a more literate answer. Let's
hope.
|