XSLT Development (3 days)
LXS-12: Fixed price XSLT training delivered on your site at any UK location.
COURSE OUTLINE |
pricing | more XSLT training |
Consistently achieving outstanding reviews from attendees, this is a highly practical, in-depth training course aimed at experienced developers who will be using XSLT in a primary capacity. It is relevant to application developers whose ultimate goal may be to produce RSS, PDF, SOAP, HTML, XHTML, XML, XSL-FO, SVG or Text output (among others) from either document-centric or data-centric XML source documents. Those requiring a more gentle introduction to only the fundamentals of XSLT would be encouraged to consider our two-day XSLT introductory-level course: XSLT Foundation. The course duration can be lengthened if required. On completion, a comprehensive set of course notes, examples, tutor and attendee scripts are provided on a free USB pen drive to take away.
Suggested Prerequisites
XML experience, though not essential is preferred. The course duration can be lengthened if required for those without XML experience. Please seek our advice (01785 223253) if in doubt.
XML Basics: A Quick Review
- Well Formedness and Well Formedness Checking
- Unicode Implications and Character Encoding
- XML Entity References and XSLT
- Working with Namespaces and Prefixes in XSLT
Introducing XSLT Programming
- The Role of XSLT - Transformations Explained
- XSLT: Stylesheets or Programs?
- Document-centric and Data-centric scenarios
- Typical transformations: RSS, SOAP, XSL-FO, HTML, CSV, TXT
- The XSLT Processor
- Different types of Output:
xml,htmlandtext - Standalone, Browser and Server XSLT Processing
- Creating and Editing XSLT
- The XSLT Root Element, Namespace and Prefix
- Using
xsl:outputto specify output type, output encoding and indentation - The Root Template and its Importance
- Some Simple Language Elements (Eg:
xsl:value-of,xsl:for-each) - XML, XSLT and Whitespace
- The need for
xsl:text - Creating and Executing a First XSLT Program (transformation)
XPath Necessities, Flow Control and Sorting
- Trees Not Tables or Recordsets: New Tools Required
- The XML Source Document as an XPath Tree
- The Relationship Between XSLT and XPath
- The Key to XSLT Success: Understanding the XPath Tree
- Using XPath Expressions - The Importance of Context
- Selecting and Extracting Nodes, Elements, Attributes and Text
- Using XPath Predicates to Efficiently Filter Content
- Using XPath Functions
- Understanding and Working with XPath Axes
- Flow Control Using
xsl:ifandxsl:choose - Sorting Output
Working with Templates
- About XSLT Templates
- Document-centric and Data-centric Template Scenarios
xsl:templateand Template Positioning- Named Templates and Matching Templates
- Using Procedural Templates with
xsl:call-template - Using Declarative Templates with
xsl:apply-templates - XPath and Templates: Template Priorities
- Understanding the Default Template Rules
- The Difference and Similarity Between
<xsl:value-of select="." />and<xsl:apply-templates /> - Using the Default Template Rules to Your Advantage
Some Useful Tools
- Excluding Source Prefixes from the Output Document
- Disabling Output Escaping
- Creating Comments in the Output Document
- Excluding the XML Declaration from the Output Document
- Creating Processing Instructions
- Preserving Whitespace: Input and Output
- Working with DOCTYPES
Variables and Parameters
- Introducing XSLT variables: Naming, Populating, Using, Limitations
- Where, and Where Not, to use Variables
- Using More than One Source Document
- Creating and Using Parameters
- Global Parameters and Global Variables
- Passing Parameters to Templates
- Passing External Parameters to the XSLT Processor
- Templates and Recursive Techniques
Some Useful XSLT Recipes
- Clever Uses of
xsl:copyandxsl:copy-of - Programmatically Creating Attributes and Elements from Source Data
- Modularizing your Code with
xsl:includeandxsl:import - Formatting Numbers
- Using
xsl:messageto Debug your Code - Finding Minimums and Maximums
- Numbering Output
- Using Entity References to Simplify XPath Expressions
- More Efficient Working with Groups and Keys

"Good, with good practicals. A lot of material to cover but felt I understood everything."
Developer
Office for National Statistics
(Fareham)