Course Overview
This course covers the complete W3C Specifications of XSL (XSLT and XPath) and exposes the student to the full power of transforming XML documents.
Course Prerequisites
Students should be experienced with XML and Software development
Outline
Introduction to XSL
- Introduce the extensible Stylesheet Language
- Introduce the extensible Stylesheet Language Transformations
- Explain the Transformation process
- Discuss when you would need or could use XSL
Introduction to XPath
- Introduce XPath
- Learn the fundamentals of XPath needed for learning XSLT
- List the different types of expressions
- Understand the basics of the path expression syntax
- Understand step expressions
- Address XML attributes using the XPath path expression
- Understand the meaning and the structure of a predicate
- Understand the technique behind the predicate truth value
- Use predicates with logical operators such as and/or
- Peek into the extensive function library of XPath
XSLT Introduction
- Create basic XSLT documents
- Understand the structure of an XSLT document
- Explain the syntax of the
stylesheet
declaration - Explain
template
declarations - Understand the "default template"
- Understand the two main methods of using templates
- Use Output instructions (
value-of
) - Use Conditional instructions (
if
,choose
,when
,otherwise
) - Use the
for-each
instruction
Building Stylesheets
- Understand XSLT templates
- Understand template pattern matching
- Define multiple templates
- Use the
apply-templates
andcall-template
instruction - Understand parameters and variables
- Understand value and parameter values
- Understand tunneled parameters
- Understand how to specify the output document or multiple documents of a transformation
- Understand how to organise stylesheets using
include
andimport
- Understand the concept of stylesheet precedence
- Use character mapping
- List XSLT (additional) functions
Using XPath
- Understand the full syntax of important XPath expressions
- Know the
full composition
of the path expression and its step expressions - List the axes that partition a document from any context without overlap.
- Understand the meaning of axes concepts like siblings, child , ancestors and descendants
- Understand the node test (name and kind tests)
- List the different kind of tests available in XPath
- Appreciate the abbreviated syntax
- Understand data types in XPath (and list the XPath specific types)
- Understand type casting in XPath
- Explain the Comparison expressions
- Explain the for expression
- Explain sequence expressions
- Explain quantified expressions
Using XSLT elements
- Understand grouping in XSLT using the
for-each-group
instruction - Understand how to add dynamic nodes and attributes to the resulting document
- Understand how to use attribute value templates
- Copy nodes to the result document
- Understand how to format numbers
- Understand how to use cross-references in XSLT
- Understand numbering and how to control and configure the automatic numbering
- Discuss miscellaneous XSLT instructions