XSL-FO Documenten

XSL-FO-documenten zijn XML-bestanden met outputinformatie.

XSL-FO Documenten

XSL-FO-documenten zijn XML-bestanden met outputinformatie. Ze bevatten informatie over de uitvoerlay-out en de uitvoerinhoud.

XSL-FO-documenten worden opgeslagen in bestanden met de extensie .fo of .fob. Het is ook gebruikelijk om XSL-FO-documenten op te slaan met de extensie .xml, omdat dit hen gemakkelijker maakt voor toegang door XML-bewerkers.

Structuur van het XSL-FO-document

De documentstructuur van XSL-FO ziet er zo uit:

<?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">
    <!-- Paginamemplate komt hier -->
  </fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
  <!-- Paginainhoud komt hier -->
</fo:page-sequence>
</fo:root>

Structuurverklaring

Een XSL-FO-document behoort tot de XML-documenten, omdat het ook moet beginnen met een XML-declaratie:

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

Het <fo:root>-element is het root-element van het XSL-FO-document. Dit root-element moet ook de naamruimte van XSL-FO declareren:

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
  Dit is de inhoud van het XSL-FO-document
</fo:root>

Het <fo:layout-master-set> element bevat een of meerdere pagina sjablonen:

<fo:layout-master-set>
  <!-- Hier zijn alle pagina sjablonen -->
</fo:layout-master-set>

Het <fo:simple-page-master> element bevat een enkele pagina sjabloon. Elke sjabloon moet een unieke naam hebben (master-name):

<fo:simple-page-master master-name="A4">
  <!-- Hier is een specifieke pagina sjabloon -->
</fo:simple-page-master>

Een of meerdere <fo:page-sequence> elementen kunnen de inhoud van de pagina beschrijven. Het master-reference attribuut gebruikt dezelfde naam om de simple-page-master sjabloon te verwijzen:

<fo:page-sequence master-reference="A4">
  <!-- Hier is de inhoud van de pagina -->
</fo:page-sequence>

Opmerking:Opmerking: de waarde "A4" van master-reference beschrijft eigenlijk geen vooraf gedefinieerd paginaformaat. Het is slechts een naam. U kunt elke naam gebruiken, zoals "MyPage", "MyTemplate", enz.