Re: Container model vs Switches (was: <IMAGE>? <TT> == <I>? toHell(NS))

 From: Foteos Macrides <MACRIDES@SCI.WFBR.EDU>

| Abigail <> wrote:
| >
| >Furthermore, does the model _matter_? Why should I care if the browser
| >use a container model, or a tree, or switches? As long as it does the
| >task right, (and reasonable efficient), that's ok, isn't?
| 	Certainly, in theory, anything which does the task "right"
| and is reasonably "efficient" is OK, just as, in theory, any number
| of "angels" you can fit on the head of a pin is OK.

Actually, there's a pretty practical issue here.  SGML elements make a
tree of element instances.  The attributes set in tags get associated
with those elements.  Inheritance can work either by automatically
propagating inherited attributes down to children or by looking up
the tree from the child to see where the attribute was last set.

This model has no provision for doing anything with switch-style tags
(like SPOT), so that support would need to be added as application
semantics.  This would add a certain amount of complexity to the
browser's data model and processing model.  There would be some
performance cost to managing regions and propagating attributes across
the elements in their scope.  You would have to add the ability to attach
different attributes to different top-level components of an element
(the parts that aren't in any sub-element) and you have to look for
those changes as you traverse the element's sub-tree (as opposed to just
pushing and popping as you go into and come out of sub-elements).

It also means that a standard SGML validator couldn't do anything useful
with that markup - you would have to add HTML-specific semantics to look
for region problems (like dangling To/From references or To occurring
before From).

Again, it's doable, and there are valid uses for it, but I'm not sure
it's worth the effort.


scott preece
motorola/mcg urbana design center	1101 e. university, urbana, il   61801
phone:	217-384-8589			  fax:	217-384-8550
internet mail:

Received on Thursday, 31 October 1996 14:23:42 UTC