[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Elements order:
- From: Marcus Carr <mrc@allette.com.au>
- To: Nicolas LEHUEN <nicolas.lehuen@ubicco.com>
- Date: Fri, 24 Aug 2001 12:27:56 +1000
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.
--
Regards,
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