Books & Videos

Table of Contents

  1. Chapter 1 Getting Started

    1. The Design of XSLT

    2. XML Basics

    3. Installing XSLT Processors

    4. Summary

  2. Chapter 2 The Obligatory Hello World Example

    1. Goals of This Chapter

    2. Transforming Hello World

    3. How a Stylesheet Is Processed

    4. Stylesheet Structure

    5. Sample Gallery

    6. Summary

  3. Chapter 3 XPath: A Syntax for Describing Needles and Haystacks

    1. The XPath Data Model

    2. Location Paths

    3. Attribute Value Templates

    4. Datatypes

    5. XPath Operators

    6. [2.0] Comments in XPath Expressions

    7. [2.0] Types of XSLT 2.0 Processors

    8. The XPath View of an XML Document

    9. Summary

  4. Chapter 4 Creating Output

    1. Goals of This Chapter

    2. Generating Text

    3. Numbering Things

    4. Formatting Decimal Numbers

    5. [2.0] Formatting Dates and Times

    6. Using <xsl:copy> and <xsl:copy-of>

    7. Dealing with Whitespace

    8. Summary

  5. Chapter 5 Branching and Control Elements

    1. Goals of This Chapter

    2. Branching Elements of XSLT

    3. Invoking Templates by Name

    4. Parameters

    5. Variables

    6. Using Recursion to Do Most Anything

    7. A Stylesheet That Emulates a for Loop

    8. Summary

  6. Chapter 6 Creating Links and Cross-References

    1. Using the XML ID, IDREF, and IDREFS Datatypes

    2. XSLT’s Key Facility

    3. Generating Links in Unstructured Documents

    4. Summary

  7. Chapter 7 Sorting and Grouping Elements

    1. Sorting Data with <xsl:sort>

    2. [2.0] The <xsl:perform-sort> Element

    3. Grouping Nodes

    4. [2.0] New Grouping Syntax in XSLT 2.0

    5. Summary

  8. Chapter 8 Combining Documents

    1. The document⁠(⁠ ⁠) Function

    2. The document⁠(⁠ ⁠) Function and Sorting

    3. Implementing Lookup Tables

    4. Grouping Across Multiple Documents

    5. [2.0] Using XSLT 2.0 to Simplify Things

    6. [2.0] The doc⁠(⁠ ⁠) and doc-available⁠(⁠ ⁠) Functions

    7. [2.0] The collection⁠(⁠ ⁠) Function

    8. [2.0] The unparsed-text⁠(⁠ ⁠) and unparsed-text-available⁠(⁠ ⁠) Functions

    9. Summary

  9. Chapter 9 Extending XSLT

    1. The XSLT Extension Mechanism

    2. [2.0] Creating New Functions with <xsl:function>

    3. Example: Generating Multiple Output Files

    4. Creating Custom Collations

    5. Generating Hidden Word Graphics

    6. Example: Generating an SVG Pie Chart

    7. Writing Extensions in Other Languages

    8. Using Extension Functions from the EXSLT Library

    9. Accessing a Database with an Extension Element

    10. Creating a Photo Album with an Extension Element

    11. Summary

  1. Appendix XSLT Reference

  2. Appendix XPath Reference

    1. XPath Node Types

    2. XPath Node Tests

    3. XPath Axes

    4. The XPath Context

    5. XPath 1.0 Datatypes

    6. [2.0] XPath 2.0 Datatypes

    7. Operators and Keywords

    8. Operator Precedence—XPath 1.0

    9. [2.0] Operator Precedence—XQuery 1.0 and XPath 2.0

  3. Appendix XSLT, XPath, and XQuery Function Reference

    1. Kinds of Functions

  4. Appendix XML Schema Overview

    1. Declaring Elements and Attributes

    2. Defining Datatypes

    3. Using an XML Schema in a Stylesheet

  5. Appendix [2.0] Regular Expressions

    1. Simple Expressions

    2. Subexpressions

    3. Quantifiers

    4. [XPath] Reluctant Quantifiers

    5. Processing Modes

    6. [XPath] Anchors

    7. Back-references

    8. Metacharacters

    9. Single-Character Escapes

    10. Multiple-Character Escapes

    11. Character Groups

  6. Appendix XSLT Formatting Codes

    1. Formatting Codes for Numbers

    2. Formatting Codes for Dates and Times

  7. Appendix XSLT 2.0 Migration Guide

    1. Powerful New Features in XSLT 2.0 and XPath 2.0

    2. Potential Errors

    3. Approaches to Migration

  8. Glossary

  9. Colophon