That's not true. The DOM that the javascript frameworks mangle around isn't data but UI elements, some of which happen to be data.
Except of course the developers who are using react & friends because it allows them to separate content(data) from presentation(view).
The idea behind the whole thing was that the "web devs" could be hired for their HTML/CSS skills and never have to touch code. The reality was, they had to become experts in a peculiar, clunky, XSLT-based programming language of their own.
Did you "push" or did you "pull"?
I think you're proving my point. :-)
More specifically, we defined parameterized components that could be composed to form the output. The definition of those components was incredibly verbose, as was the instantiation, and it was tightly coupled to parts of the domain model in surprising ways. IIRC WebDevs ended up having to work a step removed from the final XSLT, using some DSL for components that transformed down to XSLT.
Further, deponent sayeth not.
And how does my question prove your point?
I am asking, because I really would like to understand, what happened there.
I never had much luck using XSLT for anything non-trivial, and I imagine that experience isn't uncommon.
Actually, that was XSL:FO.
XSLT is transformation, not formatting; of course you could translate to (X)HTML with embedded styles, or XSL:FO or something else that includes formatting, but XSLT doesn't do formatting itself.
Typical workflow is: XML -> XSL-T -> XSL-FO
Web pages are a giant mess of content and presentation, and CSS doesn't really help much. XML is at least a way of describing data in a meaningful way. <book>, <author>, <chapter>, etc. XSLT provided a way of formatting XML in the browser. Sure the internet would still be full of inconsistent content structures, but it would still be way easier to machine read than the big mess of arbitrary <div>s and <p>s (most of which just display something blinky) that we have today.