Extensible Stylesheet Language [XSL]


(n.) Originally called Extensible Style Language, this is a language for creating a style sheet that describes how data should be presented by a web browser reading Extensible Markup Language (XML). XSL extends the Document Style Semantics and Specification Language (DSSSL) and the Cascading Style Sheet, level 1 (CSS1) standards. Data in an XML page is contained in identified fields, unlike an HTML page. XSL provides tools to define which data fields in an XML file to display and how to display them. XSL may be used to create a style definition for one or for many XML documents. It is currently under development by the World Wide Web Consortium (W3C). This language for expressing style sheets consists of three parts: 1. XSL Transformations: (XSLT) a language for transforming XML documents; 2. Xpath: an expression language used by XSLT to access or reference parts of an XML document; 3. XSL Formatting Objects: an XML vocabulary that specifies formatting semantics. Like a Cascading Style Sheet, an XSL style sheet is a file that describes how to display an XML document of a given type. XSL uses different syntax, but it shares the functionality and is compatible with CSS2. Although XSLT was originally intended to perform complex styling operations, such as the generation of tables of contents and indexes, it has become useful as a general purpose XML processing language. XSLT is widely used for generating HTML web pages from XML data. Advanced styling features are expressed by an XML document type that defines a set of elements called Formatting Objects, along with their attributes. XSL is different from CSS in several ways. XSL uses XML notation, while CSS uses its own form of notation. In CSS, the formatting object tree is nearly identical to the source tree, and inheritance of formatting properties occurs on the source tree. In XSL, the formatting object tree may be completely different from the source tree, and inheritance of formatting properties occurs on the formatting object tree. Implementations of CSS1 and, to a lesser degree, CSS2 are widespread. XSL is gaining browser and content- authoring support.