Something reads an XML document and forms a tree
The tree is passed to the XSL Processor
The XSL processor compares the nodes in the tree to the instructions in the style sheet
When the XSL processor finds a match it outputs a tree fragment
(Optional) The complete output tree is serialized to some other format such as text, HTML, or an XML file