OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Elements order:

Nicolas LEHUEN wrote:

> What if we add an <age> element now ? Then a <gender> element ? The content
> model will explode...
> The problem is that when serializing certain data structure, it is not
> always easy to guarantee a particular element order.
> For example, if you serialize an hashtable by iterating over its cells, you
> can't predict the key ordering because it depends on the hash code
> algorithm, the size of the hashing array, etc.

There are three scenarios that account for a very high percentage of
circumstances - you generally have a degree of certainty about:

  a)  the existence of the elements but not the order - a content model of
      (age | gender | name | surname)+
      would be sufficient.

  b)  the order of the elements but not the existence - a content model of
      (age?, gender?, name?, surname?)
      works fine.

  c)  neither the order nor the existence - I'd be loathe to spend too much
modeling this carefully. Time might be better spent analysing the data and
trying to determine what the baseline is. This might involve a process that
introduces order to the elements anyway.

> This is all the more annoying that for structured data, it does not matter
> that the <name> element precedes the <surname> or not.

Agreed, and I acknowledge that the approaches above aren't ideal - I'm just not
certain that this situation manifests as A Big Problem very often.


Marcus Carr                      email:  mrc@allette.com.au
Allette Systems (Australia)      www:    http://www.allette.com.au
"Everything should be made as simple as possible, but not simpler."
       - Einstein