This book is designed to give you as much of the whole XSLT story as one book can hold. Youll not only see the full XSLT syntaxfrom the most basic to the most advancedbut also dig into many of the ways in which XSLT is used today.
There are hundreds of real-world topics covered in this book, such as performing XSLT transformations on Web servers, connecting to databases, and using browsers to perform transformations on the fly.
Heres a sample of some of the topics in this book. Note that each of these topics have many subtopics (too many to list here):
The XSLT 1.0 Recommendation
The XSLT 1.1 Working Draft
The XSLT 2.0 Requirements
The XPATH 1.0 Recommendation
The XPath 2.0 requirements
The XSL 1.0 Candidate Recommendation
Using the Xalan, Saxon, XT, and Oracle XSLT processors
Creating XML, HTML, RTF, and text output
Recursive template processing
Default template rules
Handling whitespace
Disabling output escaping
Selecting which template to apply
Creating match patterns
Using predicates in match patterns
Matching Elements, Children, Element Descendants, Attributes, and so on
Matching by ID
XPath abbreviated syntax
If conditions
For-each constructs
Making conditional choice decisions
Simple element sorting
Handling multiple selections
Nested templates
Stylesheet parameters
Simplified stylesheets
Writing stylesheets for the Internet Explorer
Creating stylesheet rules
Using extension elements
Using extension functions
Creating literal result elements
Using attribute value templates
Stripping whitespace
Creating new elements, attributes, comments, and more
XSLT modes (context-specific formatting)
Result tree fragments
XPath data formats
XPath expressions
All the XSLT and XPath functions
Creating attribute sets
Calling named templates
Keys, single and multiple
Creating multiple output documents
Using Oracle, Saxon, XML4Java, XT in Java code with API calls
Using JavaScript for XSLT in the Internet Explorer
The XSL-FO Formatting Objects
The XSL-FO Formatting Properties
Server-side XSLT transformations with Java Server Pages (JSP), Active Server Pages (ASP), and Java servlets.
This book fully covers the official XSLT specifications, as created by the World Wide Web Consortium (W3C: the XSLT 1.0 recommendation, the XSLT 1.1 working draft, and the XSLT 2.0 requirementsfor more on what these terms mean, see Chapter 1). As I discuss in Chapter 1, the W3C has announced that the XSLT 1.1 working draft is not going to become an official recommendation, because theyre pressing on with XSLT 2.0. (XSLT 2.0 is now in the requirements stage, which comes before the working draft stage.) However, because the contents of the XSLT 1.1 working draft will be absorbed into XSLT 2.0and because many XSLT processors will implement whats known of XSLT 1.1I cover the XSLT 1.1 working draft completely in this book as well, making it clear when were dealing with XSLT 1.1 working draft-only material.
You must specify the XSLT version youre using when you write an XSLT stylesheet. Because version 1.1 is never going to go past the working draft stage or be officially released, I set the version to 1.0 in the examples in this book, except during discussions of XSLT 1.1 working draft-only material, in which case I explicitly set the version to 1.1.
There is also an enormous amount of material on XSLT available on the Internet today, so I also fill this book with the URLs of dozens of those resources, including all the software that well use in this book, which is free to download. (However, theres a hazard here that I should mentionURLs change frequently on the Internet, so dont be surprised if some of these URLs have changed by the time you look for them.)
One of the resources available online is the complete code listings for this book. You can find them on the New Riders site, www.newriders.com.