Chapter 1 A brief tutorial
1.1 What is XSLT (and XSL, and XPath)?
1.2 A simple XSLT stylesheet
1.3 More element and attribute manipulation
1.4 Summing up the tutorial
Chapter 2 XPath
2.1 Location paths, axes, node tests, predicates
2.2 Axes
2.3 Node tests
2.4 Predicates
Chapter 3 Elements and attributes
3.1 Adding new elements to the result tree
3.2 Changing element names for the result tree
3.3 Parent, grandparent, sibling, uncle, and other relative elements: getting their content and attributes
3.4 Previous, next, first, third, last siblings
3.5 Converting elements to attributes for the result tree
3.6 Copying elements to the result tree
3.7 Counting elements and other nodes
3.8 Deleting elements from the result tree
3.9 Duplicate elements, deleting
3.10 Empty elements: creating, checking for
3.11 Moving and combining elements for the result tree
3.12 Selecting elements based on: element name, content, children, parents
3.13 Adding new attributes
3.14 Converting attributes to elements
3.15 Getting attribute values and names
3.16 Testing for attribute existence and for specific attribute values
3.17 Reusing groups of attributes
Chapter 4 Advanced XML markup
4.1 Comments
4.2 Entities
4.3 Namespaces
4.4 Images, multimedia elements and others
4.5 Processing instructions
Chapter 5 Programming issues
5.1 Control statements
5.2 Combining stylesheets with include and import
5.3 Named templates
5.4 Debugging
5.5 Extensions to XSLT
5.6 Numbers and math
5.7 Strings
5.8 Variables and parameters: setting and using
5.9 Declaring keys and performing lookups
5.10 Finding the first, last, biggest, and smallest
5.11 Using the W3C XSLT specification
Chapter 6 Specialized input & output
6.1 HTML and XSLT
6.2 Browsers and XSLT
6.3 Multiple input documents
6.4 Using modes to create tables of contents and other generated lists
6.5 Non-XML output
6.6 Numbering, automatic
6.7 Sorting
6.8 Stripping all markup from a document
6.9 Valid XML output: including DOCTYPE declarations
6.10 XML declarations
6.11 Whitespace: preserving and controlling
6.12 Generating IDs and links
6.13 XSL and XSLT: creating Acrobat files and other formatted output
6.14 Splitting up output into multiple files
Appendix A XSLT quick reference
Appendix B Running XSLT processors
Glossary
Index