XML Private

XSLT and XSL-FO Training (XSL502)

Course Length: 5 days

This XSL training class teaches developers how to use XSLT 2.

XSLT and XSL-FO Training

Register or Request Training

  • Private class for your team
  • Live expert instructor
  • Online or on‑location
  • Customizable agenda
  • Proposal turnaround within 1–2 business days

Course Overview

This XSL training class teaches developers how to use XSLT 2.0 and XPath 2.0 to transform XML documents into HTML, plain text and other XML formats with XSLT and to PDF with XSL-FO.

Course Benefits

  • Learn to use XPath to access XML elements and attributes
  • Learn to loop through XML elements
  • Learn to use conditionals in XSLT
  • Learn to create and call templates
  • Learn to work with multiple XSLTs
  • Learn to reference external XML documents
  • Learn how the Formatting Objects (FO) language works
  • Learn to auto-generate FO documents from XML with XSLT
  • Learn to use a Formatting Objects Engine to generate PDF documents from XML

Delivery Methods

Private Class
Delivered for your team at your site or online.

Course Outline

  1. XSLT Basics
    1. eXtensible Stylesheet Language
    2. The Transformation Process
    3. An XSLT Stylesheet
    4. Output Types
    5. Elements and Attributes
  2. XPath
    1. XPath in XSLT
    2. XPath Expression
    3. Path Expressions
    4. Node Test
    5. Axis
    6. Predicate
    7. Accessing Nodes (exercise)
    8. Abbreviated Syntax
    9. Accessing Nodes with Abbreviated Syntax (exercise)
    10. Understanding the Enhanced Data Model in XPath 2.0 and Beyond
    11. XPath Functions
    12. XPath Operators
    13. Using XPath Functions and Operators (exercise)
  3. Flow Control
    1. Looping in XSLT
    2. Looping with xsl:for-each (exercise)
    3. Sorting with XSLT
    4. Looping and Sorting (exercise)
    5. Conditions with XSLT
    6. Conditionals (exercise)
  4. Templates Parameters Variables
    1. xsl:apply-templates
    2. Using xsl:apply-templates (exercise)
    3. xsl:call-template
    4. Passing Parameters
    5. Using xsl:call-template (exercise)
    6. Removing Content
    7. Template Modes
    8. Template Priority
    9. XSLT Variables
  5. Multiple Documents
    1. Including XSLTs
    2. Importing XSLTs
    3. Conflict Resolution
    4. Multiple Input and Output Documents
    5. Reusing Templates (exercise)
  6. Grouping and Keys
    1. Grouping
    2. Grouping Songs By Artist (exercise)
    3. Key Basics
    4. Creating a Simple Key (exercise)
    5. Improving Performance with Keys
    6. Improving Performance with Keys (exercise)
  7. Regular Expressions
    1. Regular Expression Syntax
    2. Functions that Use Regular Expressions
    3. The xsl:analyze-string instruction
    4. Using xsl:analyze-string (exercise)
  8. User-defined Functions
    1. User-Defined Functions
    2. User-Defined Functions (exercise)
  9. Advanced XSLT Techniques
    1. Working with Namespaces
    2. Working with Numbered Lists
    3. Outputting Processing Instructions
    4. Copying Nodes
  10. Tying It All Together - XSLT
    1. Transforming the Business Letter (exercise)
  11. Formatting Objects Basics
    1. The purpose of XSL-FO
    2. How XSL-FO Works
      1. XSL-FO Document Parts
      2. An XSL-FO Example
      3. The Root Element: root
      4. layout-master-set and simple-page-master
      5. Regions
      6. page-sequence
      7. flow and static-content
      8. block
    3. Static Content
      1. region-before and region-after
      2. static-content
  12. Blocks and Inlines
    1. Formatting Blocks
      1. Box Model
      2. Border
      3. Space, Indent and Padding
      4. Background
      5. A Formatting Example
      6. Formatting Text
    2. Inline Elements
    3. Inheritance
      1. wrapper
    4. Creating Lists
      1. list-block
      2. list-item
      3. list-item-label
      4. list-item-body
    5. Whitespace
  13. Page Layout
    1. Page Masters
    2. Simple Layout
      1. fo:simple-page-master
      2. fo:region-body
      3. fo:region-before, fo:region-after, fo:region-start, and fo:region-end
    3. page-sequence-master
      1. Creating a Cover Page
      2. Odd and Even Pages
    4. Blank Pages
      1. break-before and break-after
    5. Columns
  14. Links and Graphics
    1. External Links
    2. Graphics
    3. Internal Links
  15. Tying It All Together: XSL-FO
    1. Tying it all Together
  16. Keeps, Orphans, and Widows
    1. Keep Constraints
      1. keep-with-previous and keep-with-next
      2. keep-together
    2. Orphans and Widows
  17. Leaders, Markers and Page Numbers
    1. The Output
    2. Table of Contents
      1. Page Numbering
    3. Leaders
    4. Markers
  18. Tables
    1. Creating Tables
      1. fo:table
      2. fo:table-column
      3. fo:table-header, fo:table-body, fo:table-footer
      4. fo:table-row
      5. fo:table-cell
  19. Footnotes and Floats
    1. Footnotes
      1. xsl-footnote-separator
    2. Floats

Class Materials

Each student receives a comprehensive set of materials, including course notes and all class examples.

Class Prerequisites

Experience in the following is required for this XML class:

  • Basic XML

Have questions about this course?

We can help with curriculum details, delivery options, pricing, or anything else. Reach out and we’ll point you in the right direction.