XSL-FO dokument

XSL-FO-dokument är XML-filer med utdatainformation.

XSL-FO dokument

XSL-FO-dokument är XML-filer med utdatainformation. De innehåller information om utdata layout och innehåll.

XSL-FO-dokument lagras i filer med suffix .fo eller .fob. Det är också vanligt att lagra XSL-FO-dokument med suffix .xml, vilket gör det lättare att öppna dem i XML-redigerare.

Strukturen för XSL-FO-dokument

Dokumentstrukturen för XSL-FO ser ut så här:

<?xml version="1.0" encoding="ISO-8859-1"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set
  <fo:simple-page-master master-name="A4">
    <!-- Sidor mall läggs här -->
  </fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
  <!-- Sidor innehåll läggs här -->
</fo:page-sequence>
</fo:root>

Strukturinterpretation

Ett XSL-FO-dokument tillhör XML-dokument eftersom det också behöver börja med en XML-deklaration:

<?xml version="1.0" encoding="ISO-8859-1"?>

Elementet <fo:root> är roden i ett XSL-FO-dokument. Denna roden måste också deklarera XSL-FO-namnrymden:

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
  Detta är innehållet i XSL-FO-dokumentet
</fo:root>

Elementet <fo:layout-master-set> innehåller en eller flera sidmönster:

<fo:layout-master-set
  <!-- Här är alla sidmönster -->
</fo:layout-master-set>

Elementet <fo:simple-page-master> innehåller en enskild sidmönster. Varje mönster måste ha ett unikt namn (master-name):

<fo:simple-page-master master-name="A4">
  <!-- Här är en viss sidmönster -->
</fo:simple-page-master>

En eller flera <fo:page-sequence> element kan beskriva sidans innehåll. master-reference-attributet används med samma namn för att hänvisa till simple-page-master-mönster:

<fo:page-sequence master-reference="A4">
  <!-- Här är sidinnehållet -->
</fo:page-sequence>

Kommentar:Kommentar: master-reference-värdet "A4" beskriver faktiskt inte någon fördefinierad sidformat. Det är bara ett namn. Du kan använda vilket namn som helst, till exempel "MyPage", "MyTemplate" och så vidare.