I'm at a point now where I run against a wall whatever I look at to do next. I wanted to put off the page breaking issue as long as possible to give myself more time to understand all the implications. It turns out that this wasn't such a bad idea because I got a lot of hints along the way where I need to pay attention. As you may have seen, my last point was preparing collapsing borders. The painting works, so the whole resolution remains. I started with that and realized that the borders have to be resolved during the layout stage and cannot be resolved beforehand (see note in 1.3 in [1]). It always comes down to this: I need to rewrite the page breaking now.
I went back to Simon's and Finn's ideas about page breaking and I see some overlap. For example, both push top-level BPs to a PageLM. Both approaches sound good on first read but since this was only the broad overview of the approach there are obviously some questions popping up, like: How does table layout fit in? If you look at the illustration at the bottom of [1], a BP from a table will most probably need to have information on what it comprises within each column. Take for example, the second to last orange line which shows an example BP that comprises the "text" line (row 1, cells 3-4), but nothing from columns 1 and 2. Or rather the RowLM must probably generate some vertical padding for columns 1 and 2 to fill up the area. BTW, that's where table-cell3a.xml currently fails. That smells a lot like there are some additional information items inside such a BreakPoss/KnuthBox so the addArea stage can later correctly reproduce what content to generate for a top-level BP. If I'm thinking about adjusting min/opt/max inside these structures and handling things like footnotes, floats, collapsing borders and table-footers, my head starts spinning but that's because I still don't understand the whole of the Knuth algorithm for example. Thankfully, I got confirmation yesterday that my copy of "Digital Typography" is finally on its way. I should have it by Wednesday. So this is just my way to tell you guys what I'm doing right now. I'm going to document everything I find out and appreciate any help here. And forgive me if right now, I can't keep up with you, yet (But that should change real quickly now), and if I might seem to have ignored your earlier input. I didn't. I appreciate it very much and depend on it. [1] http://wiki.apache.org/xmlgraphics-fop/TableLayout Thanks, Jeremias Maerki