Just prior to .NET I worked on a classic ASP project that did this - the view models were basically SQL queries with 'FOR XML AUTO' and the 'views' were XSLT stylesheets.
For getting simple data up on a web page it was fantastic. But for more complex stuff it got wickedly complicated to maintain at an exponential rate. XSLT just didn't scale (and/or we just weren't good enough at it to make it scale).