About the HTML+CSS+XBL web document decomposition

This is an attempt to understand both parties motivations in the xbl's 
thread, more precisely:
- why those who have tried xbl find it really useful?
- why xbl appears to be redundant with other w3c technologies?

As a preambule, I apology for jumping in and beginning this thread da 
capo but the main thread is extremely difficult to follow. In addition, 
I must warn I am really novice (or ignorant) in the involved fields 
(html, css, javascript, xbl, xslt, soap). Therefore I ask for indulgency 
misunderstandings and the lack of rigor and if you find the following 
trivial. But I'll do my best to make my point clear, precise and brief.

What is a web document?
A set of informative elements (a) originating from a server (b) targeted 
to a destinator (c). Each one:
- offers at a given time a specific presentation (d) to the destinator.
- handles interactions at a given time between (a), (b), (c) and (d).

I will then assume that a 'web document' is at a given time a point in a 
space with three orthogonal dimensions:
(1) element trees
(2) static presentations (how the destinator see, ear, smell the elements)
(3) dynamic interaction definitions (external:what should happen if the 
mouse is over or is clicked on an element and internal: how animations 
proceeds)

The key point is that what the destinator only perceives is the web 
document projection on the subspace 1(+)2. Shelby is right saying that 
usually, interactions just move a point in the 1(+)2 subspace into 
another one in the same subspace and that could be handled by xslt. But 
he fails to describe the underlying (3) axis.

DOM and CSS made a clear distinction between (1) and (2). However (3) is 
still mixed in both CSS and HTML. I claim that every dynamic mechanism 
(script, event handling) can be extracted from the web document and 
injected elsewhere separately (top level scripts such as background 
animations could be bound to the body element). Note that such a proper 
separation does not imply to restrict current CSS power. :hover, :active 
etc in CSS are just presentation of implicit interaction bindings. 
However, CSS may be revisited with the 1(+)2(+)3 decomposition in mind.

So, imo, the question is: Is the HTML+CSS+XBL decomposition a good and 
practical description of the 1(+)2(+)3 space?

I am not the best person to answer this, but here are my thoughts.
XBL, though not orthogonal to 1(+)2 can be considered as an attempt to 
make a clear distinction between 1(+)2 and (3) and provides such a way 
to separate the scripts and event handling from the markups. As CSS 
binds presentation to markups, XBL binds scripts and event handling to them.
CSS2 and HTML4.01 are currently not orthogonal (since one can inline 
styles) and XHTML2, if I understand correctly, is an attempt to do so. 
As Daniel pointed for (1) and (2), it is not compulsory to have all 
formats completely orthogonal it may only make things more difficult, 
without adding any benefit. The same goes with the (3) axis. XBL can 
describe pure (3) elements but XBL also offers sub element construction 
and presentation (Ian's example: select a land could be a dropdown or a 
world map). XBL should not be blamed for that, because it is extremely 
convenient and avoids duplications.

However, even if I think that current HTML+CSS+XBL decomposition is 
really good and practical, I have not investigated if it's the best one 
but I guess that their scopes especially for CSS can be refined (towards 
orthogonalization).

I hope this contribution will be useful for the discussion, and I have 
not written too big errors.

Received on Tuesday, 7 January 2003 13:46:00 UTC