The real power of XML becomes apparent when XSLT is applied to XML data to create new data, to modify the document structure, and to provide output in several forms, including rearranged XML documents for business-to-business e-commerce.
XSLT and CSS are different. Although XSLT and CSS are both used to modify documents and both have the word "stylesheet" in their titles, that's about the only semblance of similarity in the languages. CSS can modify appearance, but XSLT also can modify data structure and relationships.
Navigation of an XML document is guided by the XPath specification. It utilizes an ancestry paradigm of self, parent, child, sibling, ancestor , and descendent .
XSLT is not a simple language to master. It is composed of many elements and functions.
XSLT has the capability not only to change the appearance of XML data but to output new attributes and elements for the source XML document. It also can modify existing elements and attributes.
Just as any other programming language contains elements that perform multipass processing (looping), conditional processing (if-then), and formatting of output, so does XSLT provide for these necessities.
XSLT provides for the output of data in three separate formats: XML, HTML, and plain text with all necessary attributes.
Coding XSLT stylesheets can be a lengthy process, but when finished, they are manageable, are easily modified to accommodate changes in data, and are easily customized for changes to output appearance. This equates to easier manageability over time.