Introducing XSLT
Extensible Stylesheet Language Transformation (XSLT) is all about handling and formatting the contents of Extensible Markup Language (XML) documents. XML has become a very hot topic, and now it's XSLT's turn. XML enables you to structure the data in documents, and XSLT enables you to work with the contents of XML documents - manipulating the content and creating other documents, such as when you sort an XML employee records database or store that data in an HTML document - and to format that data in a detailed way.
You can work with the contents of XML documents by writing your own programs that interface to XML parser applications, but that involves writing your own code. With XSLT, on the other hand, you can perform the same kinds of tasks, and there's no programming required. Rather than write your own Java, Visual Basic, or C++ code to handle the contents of XML documents, you just use XSLT stylesheets to specify what you want to do, and an XSLT processor does the rest. That's what XSLT is all about, and it's becoming the next big thing in the XML world.
A Little Background
Extensible Stylesheet Language (XSL), the larger specification that encompasses XSLT, is a creation of the World Wide Web Consortium (W3C) , a coalition of groups originally founded by Tim Berners-Lee. The W3C is the body that releases the specifications, such as those for XSL, that are used in this book. They help make XML and XSL what they are.
W3C and Style Languages
You can read about the history of W3C's work with style languages at http://www.w3.org/Style/History. It's interesting to see how much work has gone on - and how much style languages have changed over the years.
The grandfather of XML, Standard Generalized Markup Language (SGML), was developed in the 1980s, but it was too complex to find much use, and in fact, XML is a simplified version of SGML. A style language called Document Style Semantics and Specification Language (DSSSL) was developed for use with SGML, and in the same way that XML was derived from SGML, XSL is based on the original DSSSL. As the W3C says: "The model used by XSL for rendering documents on the screen builds upon many years of work on a complex ISO-standard style language called the Document Style Semantics and Specification Language (DSSSL)."
However, the original part of XSL - that is, XSL-FO (XSL Formatting Objects) - has not proved easy enough to find widespread use yet either, so XSLT was introduced to make it easier to convert XML documents to XSL-FO form. As it turns out, XSLT is what has really taken off, because it provides a complete transformation language that enables you to work with the contents of XML documents without writing programming code, transforming those documents into another XML document, HTML, or other text-based formats. The big success story here, surprising even the W3C, is XSLT.