XSL / XSLT Intro and Resources
XSL ( Extensible Stylesheet Language ) is a styling language for XML documents. Most often when someone is referring to XSL, they are referring to XSLT or XSL-FO.
The purpose of XSLT is to provide a language that can specify how to transform an XML document into another document. XSLT can be used to transform XML into another XML with a different document type definition or schema.
General XSL / XML Guides and Tutorials
- XSL Video Tutorial - XSL Basics covers XSL, XSLT, and XSL-FO in detail, with examples.
- The Skew.org XML & XSLT Resources has a list of links to example XSL documents, along with some helpful resources and tools.
- XML Resources and Validators: learn all about XML itself.
- XSLT Tutorial is one of the most popular ways to learn the basics of XSLT on the web.
- Introduction to XSLT is a detailed technical tutorial from IBM DeveloperWorks.
- XSLT Tutorial from Tizag is a simple tutorial that walks through the basics of XSLT.
- How to Transform XML is the beginning of a multi-part tutorial on XSLT, explaining how to use the language in detail.
- XSLT Tutorial - Basics is an introductory, but fairly lengthy and detailed, tutorial explaining the purpose of XSLT and showing how to do relatively simple transformations from XML to HTML.
- Essential XSLT is an excerpt from Steven Holzner's out of print 2001 book, Inside XSLT.
- XML and XSLT is a short introduction to XSLT, showing a simple (but interactive) XSLT transformation.
- How XSLT Works is an excerpt from XSLT 1.0 Pocket Reference (2005), by Evan Lenz. This is more technical tutorial than many of the other introductory pages, with lots of detailed programming information.
- XSLT Tutorial: Advanced Features covers variables, keys, conditionals, and the difference between push and pull processing. This tutorial is from the David Birnbaum's Digital Humanties site, so the examples are drawn from XML documents relevant to humanities research.
- What is XSLT? is a fairly extensive tutorial from O'Reilly that covers the XML background, related specifications, and has in-depth information on XSLT.
- XSLT Introduction walks you through each aspect of the XSLT language, with a focus on programming capabilities.
- XSLT Overview from Tutorials Point gives a high-level look at how XSLT is used.
- Transforming XML Data with XSLT is a Java-focused tutorial on the language.
- XSLT 1.0 and XPath 1.0 is a free 8-part tutorial on using XSLT. This is based on a more in-depth premium course with video content, which you can access from the same page.
- Scott Penrose's XSLT Tutorial is a very practical introduction to XSLT that quickly deals with common misconceptions and questions, and provides great examples along with instructions about how to use the most popular XSLT tools.
- XSLT Tutorial is a beginner's guide to XSLT and XML.
- How to Create Static HTML Website With Navigation Using XSLT is a practical tutorial on transforming XML to HTML.
- Libxslt Tutorial explains how to use the libxslt C library to transform an XML document into HTML.
- XSLT Tutorial from ActiveState explains how to work with XSLT in the Komodo IDE.
- XSL Languages provides an overview of how XSLT works together with XSL-FO, XPath, XQuery, XML, and other markup languages.
- XML and XSLT Tutorial for Dreamweaver explains how to import an XML document into Dreamweaver, transform it with XSLT, and prepare it for web publishing.
- Transforming XML with XSL describes how to use XSLT to import XML documents into InDesign.
Additional Learning Materials
- Mozilla Developer Network's XSLT reference is extensive. It includes a detailed reference on XSLT, tutorials on basic transformations, tips on browser tooling, helpful links, and more.
- XSLT Questions and Answers is a really helpful selection of XSLT-related FAQ.
- XSLT Transformations in Oracle Service Bus explains how XSLT works in OSB. Even if you don't use OSB, this tutorial gives a good insight into how XSLT is used programatically within a system to serve enterprise document formatting needs.
- Tools for XSL is an opinionated list of XSL authoring, editing, parsing, and transformation tools, with commentary.
- XMLUrlResolver: Using Embedded XSLT Resources in C# explains an advanced technique for including XML documents into other documents.
- XSL Transformations (XSLT) is the original 1.0 W3C Recommendation on the language.
- XSL Transformations (XSLT) Version 2.0 is the current W3C specification.
- XSL Transformations (XSLT) Version 3.0 is the official W3C recommendation on the latest version of XSLT. As if this writing, XSLT 3.0 is still a Candidate Recommendation, which means it hasn't been formally adopted yet.
- XSLT 1.0 & XPath 1.0 Quick Reference is a print-ready PDF of a pocket reference you can fold-up and take with you anywhere.
- The Extensible Stylesheet Language Family (XSL) is an index of XSL-related resources from the W3C.
Tools for Working With XSLT
- Transform XML with XSLT is an online XML transformer.
- Online XSLT Test Tool runs XSLT Transformations on XML online. Also includes examples documents for seeing how transformations work.
- Altova MapForce is a desktop UI application that lets you place to XML Schema or DTD models side-by-side and map content from one to the other, automatically generating your XSLT for transforming from one to the other.
- XSLT Standard Library is a set of XSLT tools and templates, written in XSLT itself.
- The oXygen XML Editor provides excellent support for XSLT authoring, editing, and debugging.
- Xalan-C++ is an Open Source XSLT processor from Apache Software Foundation.
- EditiX is a cross-platform XSLT editor and debugger.
- Gulp-Xslt is an XSLT transformation plugin for Gulp.
- Altova's XMLSpy supports XSLT 1.0 and 2.0.
- SAXON is an XSLT and XQuery processor.
- Xmplify XML Editor for Mac OS X has good support for XSLT.
- Learning XSLT (2003), by Michael James Fitzgerald, is a practical guide to XSLT intended for experienced developers who haven't worked with XSLT or XPath previously.
- XSLT 1.0 Pocket Reference (2005), by Evan Lenz, is a handy book to have on your desk (or in your pocket) if you use XSLT regularly.
- XSLT and XPath On The Edge (2001), by Jeni Tennison, is not an introductory text on XSLT. Rather, it is a practical guide to implementing XSLT in the real world, with lots of practical solutions to common (and not so common) problems.
- XSL: The Personal Trainer for XSLT, XPath and XSL-FO (2015), by William Stanek, is really a "trainer," offering a series of practical examples to work through for improving your XSL skills.
- Beginning XSLT 2.0: From Novice to Professional (2005), by Jeni Tennison, is an introductory book that starts with HTML and walks the reader through an understanding of XML and then focuses on how XSLT works.
- XSLT For Dummies (2002), by Richard Wagner, is a great book on the subject and, like most of the "for Dummies" books, covers the material in an engaging, straightforward manner.
- XSLT Programmer's Reference 2nd Edition (2001), by Michael Kay, is a very popular desk reference, considered essential by many XSLT programmers.
- Special Edition Using XSLT (2002), by Michael Floyd, covers XSLT basics, the relationship of XSLT to XSL-FO, and shows how XSLT can be used to generate a wide range of formats including SVG and PDF.
- Beginning XSLT and XPath: Transforming XML Documents and Data (2009), by Ian Williams, covers the basics but also has a focus on data-driven XML work for programmatic use.
- Sams Teach Yourself XSLT in 21 Days (2002), by Michiel Van Otegem, is one of the most popular tutorial books for learning XSLT.
- XML, XSLT, Java, and JSP: A Case Study in Developing a Web Application (2001), by Westy Rockwell, is a highly practical book for people who work with XML and XSLT in Java.
- XSLT Cookbook: Solutions and Examples for XML and XSLT Developers (2005), by Sal Mangano, provides a number of ready-made examples and documents covering many common XSLT use cases.
- Mastering XSLT (2002), by Chuck White, is an advanced book for developers who already understand XSLT and want to dive into the deep end.
- XSLT, 2nd Edition (2008), by Doug Tidwell, is a detailed reference and tutorial on XSLT 2.0.
- XSLT Jumpstarter: Level the Learning Curve and Put Your XML to Work (2015), by David James Kelly, is an example-driven book designed to get developers up to speed on XML and XSLT quickly.
If you work with XML documents, and need a way to translate in and out of multiple formats, you should spend some time learning the ins and outs of XSL & XSLT.
Further Reading and Resources
We have more guides, tutorials, and infographics related to coding and development:
- XML Resources and Validators: learn all about XML itself.
- MSXML Introduction and Resources: this will get you going with Microsoft XML Core services (MSXML), which will help you build XML-based applications.
- XPath Introduction and Resources: learn about this XML query language.
What Code Should You Learn?
Confused about what programming language you should learn to code in? Check out our infographic, What Code Should You Learn? It not only discusses different aspects of the languages, it answers important questions such as, "How much money will I make programming Java for a living?"