Inasmuch as I couldn’t attend the Limerick MultilingualWeb workshop last year, I’m doubly pleased to be presenting at the Luxembourg workshop on 15–16 March 2012 with a talk titled “XSL-FO meets the Tower of Babel”:
XSL Formatting Objects (XSL-FO) from the W3C is an XML vocabulary for specifying formatting semantics. While it shares many properties with CSS, it is most frequently used with paged media, such as formatting XML documents as PDF. XSL-FO 2.0 is currently under development, and one of its top-level requirements is for further improved non-Western language support. However, the requirement for improved support in XSL-FO 2.0 is actually less specific than the 1998 requirements for XSL 1.0 since we recognised that we didn’t have the knowledge and expertise to match our ambitions. For that, we would need more help — either from individual experts or from the W3C forming more task forces along the lines of the Japanese Layout Task Force to capture and distill expertise for use by all of the W3C and beyond.
XSL-FO does quite well at “big picture” multilingualism, with support for the Unicode Bidirectional Algorithm, multiple writing modes, and multiple text directions being there from the start and with property names being “writing-mode neutral” – such as preferring property names with “-before”, “-after”, “-start”, and “-end” rather than “-top”, “-bottom”, “-left”, and “-right” – but the “small picture” of getting the details right for individual languages and scripts has mostly been out of reach because the Working Group (under its various names) has not had the necessary knowledge to get all of it right.
If you print out the “Internationalization” section of the “XSL Requirements Summary” (produced before XSL 1.0 but explicitly not for any target version), it’s about 10 pages. You might be tempted to discount that by noting that requirements for Western European and related languages takes about four pages, but even six or so pages is a lot more, and a lot more specific, than the corresponding section from “Extensible Stylesheet Language (XSL) Requirements Version 2.0“:
6 Further improved non-Western language support
Improve support for non-Western languages, such as Mongolian, Indic languages, Thai, Japanese, Chinese, etc. The working group invites language experts to identify language specific features that are currently not yet supported by XSL.
Specifically, the Japanese Layout Taskforce is creating a document about requirements for general Japanese layout realized with technologies like CSS, SVG and XSL-FO. The document is currently in draft stage and is being developed further by the Japanese participants in the task force. This document will be an input to the XSL working group as a source of requirements.
But as I state in the abstract for the Multilingual Web workshop, this isn’t because we don’t want to do better at non-Western languages in XSL-FO 2.0, it’s because we recognised that we need more outside help to fulfil our ambitions. It may just be that the MultilingualWeb workshop could be the start of a way to get some of that help.