When serving XHTML files, I was given the following suggestion on how it should be served:

  1. application/xhtml+xml: the file in it's full glory;
  2. text/xml: the file as XML with an XSLT Stylesheet transforming it to HTML;
  3. text/html: the file transformed server side using the above mentioned stylesheet;
  4. text/plain: the file transformed by a second XSLT stylesheet.

As one poster said,
Firefox gets version 1, MSIE version 2 and Lynx version 2. As for version 4, you can't very well call yourself a geek if you omit the theoretical possibilities just because they will never actually occur.
I have the following .htaccess file:

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml
RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml\s*;\s*q=0
RewriteCond %{REQUEST_URI} \.html$
RewriteCond %{THE_REQUEST} HTTP/1\.1
RewriteRule .* - [T=application/xhtml+xml]
This works for #1, but would someone help me with the rest, please?