Overview
Intro
History: XML and SGML
History: What are stylesheets?
History: FOSI
FOSI Example
History: DSSSL
DSSSL Example:
History: CSS
CSS Example
History XML and XSL
The "old XSL" (the XSL W3C Note)
Old XSL example
The new XSL
New XSL
Transformations
Transformations: Why are they important?
Transformation example:
Before transformation:
After transformation
Transformational features
XSL Stylesheets
Rule application
Rule application is "recursive"
Simple Example
Input
Output
General Procedure
The minimal stylesheet
Starting at the top
Handle the slideshow element: part 2
Handle the title element type
Handle the slides element type
Handle the slide element type
Handle the point element type
We're done!
Final stylesheet:
Processing the stylesheet
Setting up your system
Executing the XSL processor
Exercise:subpoints
Exercise: subpoints
Implementing subpoints
Will this rule ever get called?
Patterns
Select patterns
Alternatives in patterns
Context
Context-requiring example
XSL does context
Matching on parents
Select patterns can also use context
Matching on grandparents
Matching on indirect ancestry
Matching on indirect ancestry
The Root
Qualifiers
Types of qualifiers
Qualifier-requiring example
XSL qualifier syntax
Attribute existence qualifiers
Attribute value qualifiers
Children qualifiers
Positional qualifiers
Negating positional qualifiers:
Qualifiers on ancestors
Select patterns can use qualifiers
Anchoring a match
Starting with the root
Starting with an anchor
Absolute (ID) anchors
Relative anchors
Wildcards
Templates
Literal result elements
Literal text
Processing all children
Processing particular children
Direct processing
Conditionals: <xsl:if>
Conditions: <xsl:choose>
Overview: Advanced Features
Annoying details (out of scope)