IT / Programming / W3C / XML / XSLT and XSL-FO Combined

XML - XSLT and XSL-FO Combined


ID 2757624
Classroom 4 days 9:00-16:30
Webinar 5 days 9:00-12:30
Method Lecture with examples and exercises.
Prequisite XML basics
Audience Programmers, Web developers

XML XSLT and XSL-FO Combined Training


  • Lunch / Catering
  • Assistance for hotel / travel bookings
  • Comelio certificate
  • Flexible: Free cancellation up until one day before the training


XML XSLT and XSL-FO Combined TrainingXSLT (Extensible Stylesheet Language Transformations) is a language for transforming XML documents into other XML documents, or other objects such as HTML for web pages or plain text. XSL Formatting Objects, or XSL-FO, is a markup language for XML document formatting which is most often used to generate PDFs. The XSLT stylesheet contains a collection of template rules: instructions and other directives that guide the processor in the production of the output document. The general idea behind XSL-FO's use is that the user writes a document, not in FO, but in an XML language. Then, the user uses an existing XSLT stylesheet or creates one of his/her own which then transforms / converts the XML into XSL-FO. From there, an FO processor finally renders the FO-document in formats like PDF. This training starts by presenting the basic concepts of XSLT and XML processing. It then covers the variety of XSLT processing options, conditional processing, variables and paramers as well as sorting, grouping and filtering XML contents with the aid of XPath expressions. You will learn how to generate output in (X)HTML, text, and also XML. The second part of the training provides you with a substantial knowledge of the FO standard and shows you in many hands-on labs how to create an XSL-FO document so that a real-world XML file can be published as a complex book.

Training Dates

  • 2021-Jan-15 - Jan-14
  • 2021-Mar-26 - Mar-25
  • 2021-Jun-04 - Jun-03

850 EUR +VAT

Location | Enrollment


XML XSLT and XSL-FO Combined Seminar
XSLT: XSLT Templates

Template Rules: Defining Templates, Defining Template Rules, Applying Template Rules, Conflict Resolution for Template Rules - Templates and Modes - Named Templates - Attribute Value Templates - Built-in Template Rules - Overriding Template Rules


Basic Concepts of XPath - Usage Patterns of XPath in XSLT - Localization and Filtering of Nodes - Axes - Predicates and Filters - Functions

XSLT: Complex Processing Flows using XSLT and XPath

Repetition: Conditional Processing with xsl:if and xsl:choose - Repetition with xsl:for-each - Control Structures in XPath - Parameters and Variables: Values of Variables and Parameters, Creating implicit document nodes, Global Variables and Parameters, Local Variables and Parameters

Numbering, Sorting and Grouping

Numbering: Formatting a Supplied Number, Numbering based on Position in a Document, Number to String Conversion Attributes - Sorting: The xsl:sort Element, The Sorting Process, Comparing Sort Key Values, Processing a Sequence in Sorted Order - Grouping: The Current Group, The Current Grouping Key, The xsl:for-each-group Element

XML and Text Construction

Literal Result Elements - Construction of XML: Creating Element Nodes Using xsl:element, Creating Attribute Nodes Using xsl:attribute, Creating Text Nodes, Processing Instructions, Namespace Nodes, Comments - Copying Nodes - Additional Features: Multiple Source Documents, Reading Text Files - Formatting Dates and Times - Number Formatting - Text Output for SQL and CSV

Inclusion and Import in XSLT Stylesheets

Combining Stylesheet Modules: Locating Stylesheet Modules, Stylesheet Inclusion, Stylesheet Import - Embedded Stylesheet Modules - Conditional Element Inclusion

FO: Page Templates and their Properties

Page Masters - Page Sequence Masters - Regions - Complex Pagination - Page Numbers and other Static Content

FO: Text-/Block Formatting

Font, Color, Text Decoration, and Size - Block Formatting: Padding, Indentation, Positioning, Space - Tables: Simple and Complex Tables, Formatting of Tables using Border, Padding and Positioning - Lists: Simple and Numbered Lists, Complex Lists - Graphics: Embedding of Images - Scaling and Positioning of Images

FO: Book Design

Chapters and Sections - Page Breaks - Table of Contents - Running Headers - References and Links - Complex Transformations and Modularization: Attribute Groups, Variables and Temporary Trees for Modular Programming - XSLT Techniques for Text Formatting


XML XSLT and XSL-FO Combined Trainer

Marco Skulschus (born in Germany in 1978) studied economics in Wuppertal (Germany) and Paris (France) and wrote his master´s thesis about semantic data modeling in XML, shortly before any of the current Semantic Web standards had been adopted. He started working as lecturer and consultant in 2002.

  • XSLT, XPath und XQuery ISBN 978-3-939701-18-7
  • XSL-FO ISBN 978-3-939701-17-0
  • XML Schema ISBN 978-3-939701-22-4
  • XML: Standards und Technologien ISBN 978-3-939701-21-7
  • MS SQL Server – XML und SOAP-Webservices ISBN 978-3-939701-03-3
  • Oracle, PL/SQL und XML ISBN 978-3-939701-49-1

He works as an IT-consultant and project manager. He developed various XML-based applications with his team in India and is regularly involved in complex import/export scenarios / data integration projects and in XML-based reporting solutions.


He led several research projects for business partners concerning expert systems, ontology-based software, and also online questionnaires. Nearly all of these projects were based on a complex XML-data model or made use of XML-based rule sets.

XML XSLT and XSL-FO Combined Trainer