## Paged Media, XSS and XSL . Goal of these notes - basis for discussion . not trying to persuade anyone, but to inform . very brief history to give shared context . very slightly less brief overview of XSL to compare with CSS . very brief notes on paged media requirements . the difficult question: how do we go forward? . overall goal: prod-bottom document formatting! ## Quick Background . SGML was created for publishing, became a Rec ISO standard in 1986 . The Working Group punted on two hard parts in order to get the spec out: hyperlinking styling . The hyperlinking spec became HyTime, largely obsoleted by the simpler WWW . The style part became DSSSL, the Document Style and Semantics Specification Language, and formed the basis for XSL. . XML was originally called Web SGML, and was a profile of SGML that could be shared on the Web and displayed with Netscape plugins. . XLink was the hyperlinking part of XML and largely failed. . XSL was the style part, builds on DSSSL, and is widely used today. ## About XSL . The Extensible Style Language is in two parts: XSLT and XSL-FO . Both parts build on XPath, which built on SGML HyTme. ## XSLT . Tree transformation language using templates . XSLT 1 (1998) is built in to Web browsers . XSLT WG is currently working on XSLT 3 . Part of XSL so you can transform an arbitrary XML document into something you know how to format. ## XSL-FO . Fixed vocabulary (in the same sense as HTML) with elements like inline, block, list . three parts: . templates, called page master, define pages with regions for content . the content is formatted into "flows", and put into the regions using a "flow map" . expression language and machinery to support fetching values (e.g. "see page 36", "page 2 of 6", see section "Argyle Socks") There's also some additional machinery like calling out to JDF for binding and imposition, for making back-of-the-book indexes, for slightly more sophisticated table formatting than HTML, footnotes and margin notes, etc etc. The actual text flow is very like HTML, and is styled with CSS properties, extended slightly for paged media, and done before the CSS Box Model was final (oops), but intended to be aligned. ## Paged Media . A lot of book features are there because of people, not only because of history. . Page numbers become important in print (everyone turn to page 32). . Footnotes have the property you can see at a glance whether you want to read them. . Complex formatting within running heads is very common - font and size changes, tables (e.g. Effectivity in government or industry work), mathematics, multiple lines -- effective use of bandwidth . The Swiss Modular Grid took off because it leverages the human eye's ability to detect repetition and alignment . Navigation and wayfinding are very important . Index generation and collation must be done by the formatter. ## Moving Forward . XSL-FO 2.0 work has pretty much stopped; there are lots of users who are demanding new features, implementors who want new features, but very few participants. . Should XSL-FO 2.0 actually be HTML + CSS? . HTML + CSS is not a drop-in replacement - missing functionality and some (minor) incompatibilities. . Want solution to be suitable for ebooks, magazines, tech pubs... today XSL-FO is close for magazines, tech pubs, not used for epub except to generate PDF . Most of the world's largest publishers seem to be using XSL-FO extensively for mostly-prose books. And poetry. ## Working Groups . more paged media work within CSS? . how can anyone keep up with CSS if they are not Tab or Fantasai? . move some work to the more-or-less vacant XPPL WG? or a new WG? . danger of divergence, but might be easier to follow? . or is CSS getting there as it is?