XSL-FO 1.1 via XSLT

The formatting core of DiType doesn't have (or has simplified) algoritms for some XSL-FO 1.1 features.
This is done intentionally.

One of the main goals of the formatter is high-speed execution of core formatting algorithms. Transformations of the formatting objects is a trivial task that can be done outside the kernel without loss of performance.
Don't bother the kernel with such problems. :)

XSLT is the right way and a good tool to implement the functionality related to object tree transformation.
So a part of XSL-FO 1.1 features is implemented via XSLT.

Page sequence wrapper

The formatting core doesn't accept the fo:page-sequence-wrapper element.

I've implemented a stylesheet that does the following:

Note: the @id attribute is inherited from the fo:page-sequence-wrapper by the first (pre-document order) fo:page-sequence descendant (not child; fo:page-sequence-wrapper elements can be nested).

Folio

The formatting core does not accept the fo:folio-prefix and fo:folio-suffix elements [well, actually, it does, but uses only the text content, thus limiting the capabilities — DavidTolpin].

I've implemented a stylesheet that does the following:

Note: Acording to XSL-FO 1.1 spec, the anchor elements cannot be descendants of the fo:folio-prefix and fo:folio-suffix elements.

TODO: the above statement needs to be checked in the stylesheet.

Alexei Gagarinov

XSL11viaXSLT (last edited 2008-04-28 13:39:16 by TigranAghababyan)