Related link: http://www.cranesoftwrights.com/schedule.htm#pfux

XSL-FO combines an enormous (and verbose!) vocabulary and lots of possible combinations. In our second day of XSL-FO training, the potential number of interactions is seems ever larger, as does the number of cases where repurposing features (especially empty blocks, and footnotes) to produce results which aren’t immediately obvious.

There’s a strange kind of genius at work in the page-layout systems of XSL-FO, demanding that stylesheet writers specify the logic by which their documents operate. The XSLT/XSL-FO combination lets developers create enormous logic puzzles which lay out pages rather than the more familiar (to me) process of human interaction in applications like PageMaker, Quark, InDesign, and FrameMaker.

While it’s sometimes possible to leap into the XSL-FO instance markup, there’s still (deliberately) a large layer of indirection between that markup and the final rendered product. Working with XSLT stylesheets which generate XSL-FO, which is for the most part the preferred approach, adds another layer of indirection. While it’s certainly possible to tweak stylesheets to render a particular document, I have to admit that I really miss the cascade of CSS and its much easier element-by-element tweaking capabilities. There are best practices for creating tweakable (well, modularized) XSLT stylesheets, but you’re much more at the mercy of the creator of the stylesheet with which you’re interacting.

I have a hard sitting through five days of anything, especially huge volumes of technical information, but Ken Holman has done a remarkable job of keeping this interesting. He combines enthusiasm for the training with a long list of projects outside of training, and his work beyond the training made the examples a lot more compelling. I can’t imagine teaching this for five days solid, but he seemed just as ready to explore the details of keeps and breaks this afternoon as he was to explain the overall architecture on Monday.

I came to the training as a skeptic of XSLT and especially XSL-FO, and I haven’t experienced a massive conversion. At the same time, though, I have a far better perspective on what these tools are good for (and not good for), not to mention a much deeper understanding of how they fit together. I’ll be taking what I’ve learned back to O’Reilly, where I’m hoping to use my improved XSLT skills for a variety of editorial tasks, and see if I can fit XSL-FO into my process so that authors can get a better snapshot of what their work will look like.

After five days of this, I’m pretty tired, but very happy. It’s a different feeling than I tend to get after a conference or reading a book, and it’s one I’d encourage more people to enjoy.

Does training make a big difference for you?