".
I might be embarrassing myself here, but for SVG I want something like this:
1. Maintain a Document-level dependency graph for SVG content. Dependencies are implied by parent-child DOM relationships, plus resources (filters, masks, paints, text paths, etc)
2. You can have bounding regions for each node in this graph, so you will be able to figure out what to lazily layout
3. Layout needed regions in topological order.
I think, given the way SVG sizing works, that this will generate the right result. We really shouldn't be laying out SVG the same way we lay out HTML because the way sizes are computed is almost exactly opposing.
I am glossing over places where there are percentage widths, which may cause all this to fall apart.
This also will address a whole series of bugs we have with SVG causing out-of-order layout of other nodes that ultimately never get laid out. It is also the layout model needed for MathML, as I understand it.
Stephen.