- From: Shelby Moore <shelby@coolpage.com>
- Date: Thu, 19 Dec 2002 00:33:04 -0600
- To: Ray Whitmer <rayw@netscape.com>
- Cc: www-dom@w3.org
I did not get off on vacation today as planned. Maybe tomorrow. >In the HTML DOM, there are certain presentation properties exposed >directly on objects. Just to be clear, you are reaffirming there is a precedent for exposing the presentation state directly on markup objects, i.e. a 1:1 correlation between markup (DOM) objects and presentation objects. >Please define "transformed state" before I can tell you whether I agree >with you or not. I am thinking more abstractly than a specific case or layer. The definition is "any transformed state DERIVED from the DOM markup state". You did not reply yet to my other 2 previous posts, so it is difficult for me to know now, where we are in our understanding of each other's views. I will try to elaborate any way. First of all, I see our fundamental disagreement is on whether tranformed states can and/or should have 1:1 correspondence with the DOM state. Thanks for making the strong point that they can not have 1:1 correspondence in all situations, and the correspondence may be reliant on other variables (i.e. a multi-variant correspondence, e.g. time, etc as you pointed out). However, it is my assertion that the 1:1 correspondence, even though partial, is a very useful model for the purposes of dynamic web pages (e.g. applications). Without 1:1 correspondence, then I do not know what kind of model one would get to try to related two disparate abstract state models. I will now show why this 1:1 correspondence is CRUCIAL to MOST web authoring. Let's consider the analogy in mathematics. If we have a given state, given by a matrix of values, and we transform it to a new state, then our transform matrix controls several important mathematical properties, such as whether there is an inverse, whether the transform is linear, associative, communitive, etc.. Your assertion is that the transform from DOM markup state to (for example) presentation state, is a sufficiently complex transform that the correlation between the elements of the two states can not (or should not) be correlated at the element level. However, my assertion is that HTML and CSS has (and must) sufficiently consider the possible ways of presentation, such that the correlation is predictable enough for 1:1 correlation. For example, this week when I suggested sentence style, the CSS list replied that the presentation algorithm for sentences must be known before we can consider the new feature. Because if the correlation between markup state and presentation state were not predictable, then authoring web pages would be a "blind" activity. By "blind", I mean the author would have no predictable notion of how his page is being presented. I can assure you the market will never accept an abstraction of XHTML to the level that presentation is unpredictable. More on this below... >The more specific the DOM APIs for dealing only with a specific markup >language, the less problem there is defining where 1:1 correspondances >are likely to always exist. The HTML DOM is almost always used to >present in a legacy-browser-type fashion, and hence in the HTML DOM, we >know much more about the likely presentation than in the core or XML DOM >modules. I figured your response would be that this is a legacy issue that W3C wants to purge in future. However, has the W3C considered what the replacement model would be for HTML forms programming?? I think you are going to ultimately come to the conclusion that 1:1 correspondence is necessary to make a reasonable programming model for the presentation. Otherwise, if you completely abstract the presentation, then how does the program know which element is the last name of the form?? >Of course even the HTML Working Group at W3C does not like the present >HTML DOM long-term because they wish to make the HTML browser more >flexible with less built-in knowledge about the markup language, >especially when moving to the modularity envisioned for XHTML. I am 100% in favor of modularity. For example, I made a proposal to add Event style sheets, so that we can abstract (modularize) the behavior from the markup. It also serves to remove redundant specification of events in markup. However, if you completely abstract the presentation from the markup, then there is no reasonable way to correlate the two for the purposes of programming the behavior. In the end, a button in markup has to be a button in presentation. There has to be a 1:1 correspondence. It is so obvious to me. What I am missing that is causing you to resist my assertion that 1:1 is not optional?? >>Again I do not think specialized interfaces for modifying the transformed >>state are to be encouraged. Where ever possible it is logically very >>important that one try to use markup to set state. >> >Again, please define "the transformed state". I don't believe it has >ever been defined before, so it is hard to determine which layer you are >targetting and whether it is standard enough to be exposed. The author (for writing chances to a) a web document should only be targetting one layer and that is markup. If you expose a transformed DERIVED state for writing, then you will have subverted markup and created a new markup language by default. This is also why you have no choice but to develop 1:1 correspondence interfaces for reading the transformed state. My point is that CSS is working very hard on this, so leverage their work. It is ironic, because I sense (perhaps incorrectly) that you feel I am against the abstractness of markup, when in fact, I am trying to protect it from being compromised by transformed state (write) interfaces. In fact, now we come full circle to my original post, wherein I said I do not want to use a propreitary api such as the new stuff for building applications with Mozilla. The problem with their approach is they are (akaik) exporting new interfaces for writing on the presentation. That is very bad for W3C standards. >If it includes focus state, blur, current form field values, etc. then I >disagree. Then you will destroy the abstractness of markup. You will then have authoring combining markup with other write apis to form a new vegetable soup of markup which is extremely brittle. We need to keep markup pure and we need to insure that the things people want to do with web pages, can be done from the pureness of markup. All writing of the state should come from markup. The limits of markup determine the limits of state that can be written. Of course we can expose non-1:1 transformed state for reading without any worries, but we should prioritize exposing the 1:1 properties first. >If it is the actual computed style values, as obtained via the CSS >module, then I agree, which is why you are permitted through that module >to modify, not the end result, but the upstream result, if memory serves me. Correct. You have reaffirmed that one must write thru markup, not at transformed state. I think we want the same goals for pureness of markup. I am very curious as to what, if any, disagreement we still have. I am very willing to be swayed by compelling technical points. So far, I think my case for the necessity of 1:1 is very strong. -Shelby Moore
Received on Thursday, 19 December 2002 01:32:48 UTC