Contents
- Pretentious Introduction
- XSL Overview
- XSL-FO
- W3C
- Getting Involved
- Questions and Ending
- Further Reading
Introduction: Umberto Eco
A quote from a talk given by Umberto Eco
at the Bibliotheca Alexandrina in Egypt.
We have three types of memory.
The first one is organic,
which is the memory made of flesh and blood and the one administrated by our brain.
Umberto Eco
[...] The second is mineral, and in this sense mankind has known two kinds of mineral memory:
Umberto Eco
[...] millennia ago, this was the memory represented by clay tablets and obelisks,
pretty well known in this country, on which people carved their texts.
However, this second type is also the electronic memory of today's computers, based upon silicon.
Umberto Eco
[...] We have also known another kind of memory, the vegetal one,
the one represented by the first papyruses, again well known in this country,
and then on books, made of paper.
Umberto Eco
Let me disregard the fact that at a certain moment the vellum
of the first codices were of an organic origin, and the fact
that the first paper was made with rugs and not with wood.
Umberto Eco
Let me speak for the sake of simplicity of vegetal memory in order
to designate . . .
Vegetal Memory
Whenever we present textual information to a human,
we must format the text.
- Text can be separated from properties such as
font, colour, size and position.
- Different people can create text and specify how it
is to be formatted, e.g. an author and a publisher,
a journalist and a magazine editor, a programmer and a
Web site or user interface designer.
- The same text can be formatted in different ways
- The same format (e.g. a magazine layout) can be
used for more than one text.
- We've got a gazillion years of experience in communicating
with text and graphics both on paper (vegetal) and on
hardware display devices like...
Presentation and Content

What is XSL?
- An International Standard for formatting XML documents,
produced by the W3C
- Produced in two technical parts, XSLT and XSL-FO
Why Two parts (Vermont Farmer)
- Part 1: XSLT, transform XML documents
- Part 2: XSL-FO
XSLT
- An XML vocabulary to transform documents
- A declarative programming language
- Version 2.0 released in January 2007 with
more support for strong typing, error detection, other
"programming-in-the-large" features
- Original goal was to transform arbitrary
XML documents into XSL-FO
XML documents for formatting
XSL-FO one-slide overview
- An XML vocabulary
- A declarative language
- Model: declare (define) "page masters"; content is a sequence
of flow objects that are mapped into page areas in the
page masters.
Push-me Pull-you
- XSLT supports two modes of transformation: push and pull.
In one, the input is pushed through the engine, and parts
of it that match "templates" are processed; in the other,
a template fetches (pulls) the parts it wants out of the input;
you can intermix the styles.
- XSL-FO only has push mode, in which the content
creates pages
- Sometimes you also want pull mode, layout oriented,
in which the layout is fixed and extracts parts of the
content (this may work well with XQuery!)
You can't do everything
- Formatting covers a huge range, from cave paintings
and cuneiform tablets all the way to aircraft manuals,
mail order catalogues and financial reports.
- The goal is to find useful things where we can
help the world through interoperability
Some Examples
[examples]
- run-arounds in old book
- run-arounds in magazine
- hung punctuation in advert
- balanced columns, copyfitting
- Hung punctuation in Japanese
-
1
2
3
4
5
6
7
The W3C
- We're a non-profit consortium.
- We're a secret cabal that meets behind closed doors
in order to exclude people (OK, not really)
- We're a bunch of aliens from outer (or inner) space
- We're an international standards organisation, and
we believe that specifications should be free (libre,
unencumbered) and freely availaible.
- We believe that it's wrong to make a technical specification
in the knowledge that you exclude people. The Web is for
all people, regardless of language or culture or ability or
special needs.
Getting Involved
- We're starting XSL FO 2.0 work.
- Organizations can (pay to) join
- If you don't work for an organization that would
normally pay to join, but you are an acknowledged expert
in the area, you can participate for free.
- In any case you can send comments whenever we publish
drafts. The Working Group must acknowledge
all comments and address them before the draft can move on
to the next stage. We really do listen to the comments
and try to accommodate people's needs.
Questions and Ending
- About XSL-FO and features
- About W3C
- About XML, XML Query, XSLT, XML Schema, or other
things we're doing in this area
- If not here, I'm liam@w3.org
Images from www.fromoldbooks.org and
used by permission;
other photos are by
Liam Quin.
Books
- Succinct: Robin Williams, The Non-Designer’s Design Book
- On Type: Erik Spiekermann & E.M. Ginger, Stop Stealing Sheep & find out how type works
- Detailed: Robert Bringhurst, The Elements of Typographic Style
- On user interfaces: Kevin Mullet and Darrel Sano, Designing Visual Interfaces
- On XSL-FO: Dave Pawson, XSL-FO: Making XML Look Good in Print, O'Reilly 2002
- The XSL-FO Specification at W3C