JLK: This is the most succinct description I've seen in this conversation, although others have mentioned it in addition to other concepts. XSLT enables rearranging content for context-specific purposes without rearranging the source.
JLK - I've seen this described elsewhere as the difference between imperative and declarative. A long time ago, in an Arbortext far away, we talked about "Declarative vs. Procedural." Ian Williams boiled that down to a sentence: "an XSLT programmer does not define a sequence of actions, but specifies a number of rules that. the result should satisfy."
(I think a lot about this stuff these days. I have direct reports in India who are still learning. I need to find the easiest way to state stuff that often gets stated in any number of ways [see note about Arbortext above] over time.)