More heart-in-the-mouth stuff for me, as I have coded the pre- and post-order iterators in Node according to another interpretation, and I have just had a mad search to try to justify it.
From the DOM Level 2 Traversal and Range spec glossary:
document order
The term document order has the same meaning as depth first, pre-order traversal, which is equivalent to the order in which the start tags occur in the text representation of the document.
Ouch, I mistakenly used in-order traversal, instead of pre-order traversal. This clears up quite a few mysteries! Does spec reading cause temporary brain damage?
This means if there are FOs generating nested areas with markers with the same marker-class in nested FOs, the outermost marker will be retrieved unless a isFirst() or isLast() preference kicks in.
This still leaves the question: Does a block with a break-before="page" or a break-after="page" span two pages, or will it always be the first/last area on the page its content is rendered on? Examples <fo:block id="A"> <fo:marker marker-class="I" id="m1"/> <fo:block id="B" break-after="page"> <fo:marker marker-class="I" id="m2"/> ... </fo:block> </fo:block> Does last-ending-within-page retrieve m1 or m2? I'd think m2.
<fo:block id="A" break-after="page"> <fo:marker marker-class="I" id="m1"/> <fo:block id="B"> <fo:marker marker-class="I" id="m2"/> ... </fo:block> </fo:block> Does last-ending-within-page retrieve m1 or m2? Probably m1, but where in the spec can I find backing for this opinion?
J.Pietschmann
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]