XSL-FO dokument

XSL-FO-dokumenter er XML-filer med outputinformation.

XSL-FO dokument

XSL-FO-dokumenter er XML-filer med outputinformation. De indeholder oplysninger om layout og outputindhold.

XSL-FO-dokumenter gemmes i filer med .fo- eller .fob-afslutning. Det er også almindeligt at gemme XSL-FO-dokumenter med .xml-afslutning, hvilket gør det lettere for XML-redigeringsværktøjer at få adgang til dem.

Strukturen af XSL-FO-dokumenter

Strukturen på et XSL-FO-dokument ligner dette:

<?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">
    <!-- Side-skabelon skal gå her -->
  </fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
  <!-- Sideindhold skal gå her -->
</fo:page-sequence>
</fo:root>

Strukturforklaring

XSL-FO-dokumenter tilhører XML-dokumenter, fordi de også skal starte med en XML-deklaration:

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

<fo:root>-elementet er rod-elementet i et XSL-FO-dokument. Dette rod-element skal også deklarere XSL-FO-navnerummet:

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
  <!-- Dette er indholdet af XSL-FO-dokumentet -->
</fo:root>

Elementet <fo:layout-master-set> indeholder en eller flere sideskabeloner:

<fo:layout-master-set>
  <!-- Her er alle sideskabelonerne -->
</fo:layout-master-set>

Elementet <fo:simple-page-master> indeholder en enkelt sideskabelon. Hver skabelon skal have et unikt navn (master-name):

<fo:simple-page-master master-name="A4">
  <!-- Her er en bestemt side skabelon -->
</fo:simple-page-master>

En eller flere <fo:page-sequence> elementer kan beskrive indholdet af siderne. master-reference attribut bruger det samme navn til at referere til simple-page-master skabeloner:

<fo:page-sequence master-reference="A4">
  <!-- Her er sideindholdet -->
</fo:page-sequence>

Kommentarer:Kommentarer: master-reference værdien "A4" beskriver faktisk ikke en prædefineret sideformat. Det er kun et navn. Du kan bruge ethvert navn, såsom "MyPage", "MyTemplate" osv.