Welcome to WebmasterWorld Guest from 126.96.36.199
We do XSLT on the server, producing straight HTML for the client.
There are two ways to do this. One is to write software that generates and XML document, and applies it to your XSLT stylesheet on the fly (for each request), the result of the transform being an HTML document. We write Java servlets which only focus on returning the XML needed for the page, then at the last moment execute the transformation. There are many, many good things about this approach. But it's not simple.
Or if you have static XML documents that contain the content data, you can generate the HTML as static files which you copy to your web server ane serve in the conventional way. This can be a lot simpler if you don't want to, or cannot control complicated server-side software and stuff. Of course it's a lot less flexible than the dynamic model.
Many tools are available to do either way. And in either case, you need not rely on any special capabilities of the browser to render your result.
So if a normal user visits the feed from his or her everyday browser, he gets the HTML formatted version of the feed on the same URL, but when a robot or a crawler goes to it, it gets the original ATOM content.
Not sure if this works with RSS too though.