I have a pattern of learning things The Hard Way. That is, get a book, dive in, and just do it. Eventually, some order emerges from the chaos, and one day, it all starts to make sense. This approach has failed once or twice — my ill-fated attempts to learn Perl come to mind.
When I needed to learn XSL a few years back, I expected something like the Perl experience — a language that was unintuitive, annoying, and occasionally painful. To my surprise, I discovered that I actually like XSL!
The XSL language is build on templates. You define a processing template for each element in your XML source file. This means that you can build up your XSL transformation a little bit at a time. You can start with the easy search and replace stuff and move up to more challenging issues, such as building hyperlinks from cross-references, creating tables of contents, and sorting indexes.
In September, I will be teaching our first Transforming XML Content with XSL class. The class will build up just as I’ve described, starting with the easy stuff and moving up to rather complex transformation requirements. We will focus on things that need to be done for publications: paragraphs, inline elements, inline tables of contents, navigation, indexes, and attractive formatting.
I’m interested in feedback on the syllabus.