# XSL Language
* * *
It started with XSL and ended with XSLT, XPath, and XSL-FO.
* * *
## Starting with XSL
XSL stands for EXtensible Stylesheet Language.
The World Wide Web Consortium (W3C) began developing XSL because there was a need for an XML-based stylesheet language.
* * *
## CSS = HTML Stylesheet
HTML uses predefined tags, and the meaning of each tag is **easy to understand**.
The
tag in HTML defines a table - and browsers **know how to display it**.
Adding styles to HTML elements is easy. With CSS, it's easy to tell a browser to display an element in a specific font or color.
* * *
## XSL = XML Stylesheet
XML doesn't use predefined tags (we can use any tag names we like), and the meaning of each tag is **not always so easy to understand**.
A tag could mean an HTML table, a piece of furniture, or something else - browsers **don't know how to display it**.
XSL can describe how to display XML documents!
* * *
## XSL - More Than Just a Stylesheet Language
XSL consists of three parts:
* XSLT - A language for transforming XML documents.
* XPath - A language for navigating in XML documents.
* XSL-FO - A language for formatting XML documents.
* * *
## The Main Content of This Tutorial is XSLT
The rest of this tutorial is about XSLT - the language used to transform XML documents.
To learn more about XPath and XSL-FO, please visit our (#) and (#).