Something reads an XML document and forms a tree
The tree is passed to the XSLT Processor
The XSLT processor compares the nodes in the tree to the instructions in the style sheet
When the XSLT 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