Since you asserted that my use of orthogonality is just "rhetoric", and you
accused me of "logorrhea", afaik there is a concise mathematical test for
orthogonality of layers:
If there is no inverse between layers, then they should not be merged (they
are orthogonal).
-----
For example, DOM (at least Core) can not be inverted back to the parsed
XHTML (exactly). Thus they are separate orthogonal layers with a one-way
parser transformation.
This is succinctly why you should not merge all the layers that XBL does.
When there is no inverse and you combine layers, then can't go backwards
(mix and match) any more.
The collary is that if there is exists an inverse between two layers, then
you are free to combine without any loss of utility.
In practical terms, we have to attack orthogonality is reasonable size
chunks, even if inverse law isn't fulfilled. I.e. maximum utility and
modularization is not practical. When we sew our pockets to our pants, we
make the assumption that the inverse is not likely to be useful. I would
argue for XBL, if we did not have XSLT to do similar job.
-Shelby Moore