Příklad 1. Zdrojový XML dokument – vizitka.xml
<?xml version="1.0" encoding="UTF-8"?>
<osoba>
<jmeno>Jirka Kosek</jmeno>
<email>jirka@kosek.cz</email>
<foto>kosek.jpg</foto>
<poznamka>Je to úplný <dulezite>magor do
XML</dulezite>. Už mu z toho asi hráblo, pořád brblá
něco o XSLT a XML schématech. Ale jinak je
<dulezite>převážně neškodný</dulezite>. Napíšeme ještě
něco, aby textu bylo více. Ještě více než více. Až ho
bude úplně nejvíce. Více než nejvíce. Pořád málo. Tak
ještě přidáme. Ať má dost. A to by bylo,
abysedlouhéslovonerozdělilozvláštěkdyž
hoprotáhnemeopravduhodně.</poznamka>
</osoba>Příklad 2. XSLT styl pro generování FO – vizitka.xsl
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:template match="/">
<fo:root>
<fo:layout-master-set>
<fo:simple-page-master margin-bottom="0.5cm"
margin-left="0.5cm"
margin-right="0.5cm"
margin-top="0.5cm"
page-width="9cm"
page-height="5cm"
master-name="my-master">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="my-master">
<fo:flow flow-name="xsl-region-body"
font-family="Times New Roman"
font-size="8pt">
<fo:block>
<fo:float float="right">
<fo:block margin-left="6pt" margin-bottom="2pt">
<fo:external-graphic src="url({osoba/foto})"
content-width="2cm"/>
</fo:block>
</fo:float>
<xsl:apply-templates/>
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
</xsl:template>
<xsl:template match="jmeno">
<fo:block font-family="Helvetica"
font-size="200%"
font-weight="bold">
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:template match="email">
<fo:block>
e-mail:
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:template match="foto">
<!-- Již jsme zpracovali, teď ignorujeme -->
</xsl:template>
<xsl:template match="poznamka">
<fo:block space-before="6pt" font-style="italic"
text-align="justify" language="cs"
hyphenate="true">
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:template match="dulezite">
<fo:inline color="red" font-weight="bold">
<xsl:apply-templates/>
</fo:inline>
</xsl:template>
</xsl:stylesheet>spuštění převodu z XML do PDF přes FO
saxon -o vizitka.fo vizitka.xml vizitka.xsl xep -fo vizitka.fo
nebo v jednom kroku
xep -xml vizitka.xml -xsl vizitka.xsl