I bought into xslt2... which I think was only ever implimented in the saxon parser, written by they guy that wrote large chunks of the spec. My chain was simple, MS Access DB -> XML (via hand written vba) -> parser -> 4 documents with information that was consistent. I then handed it over to a programmer to replace the Access DB / XML / Parser with the server versions, and he never did get it quite right. For my next project I chose JSON, on the idea that a beautiful solution doesn't mean much if it can't be productionized. Still sad about xslt though, lots of potential for making good looking pdfs and webpages that were consistent.