Quoth Thorsten Glaser:
Nope: HTTP_ACCEPT='text/html, text/plain, text/sgml, text/css, */*;q=0.01'

Indeed. I was using an older version of lynx. It seems v2-9-0dev_0l regressed in dropping application/xhtml+xml from Accept. That’s a consequence of:

        --- a/src/HTInit.c
        +++ b/src/HTInit.c
        @@ -179,6 +179,7 @@ void HTFormatInit(void)
              * text/html
              */
             SET_INTERNL("application/xhtml+xml", "www/present", HTMLPresent, 
1.0);
        +    SET_INTERNL("application/xhtml+xml", "www/source", HTPlainPresent, 
1.0);
             SET_INTERNL("text/css", "www/present", HTPlainPresent, 1.0);
             SET_INTERNL(STR_HTML, "www/present", HTMLPresent, 1.0);
             SET_INTERNL(STR_PLAINTEXT, "www/present", HTPlainPresent, 1.0);

I can’t say I fully understand what happens; I haven’t looked too deep into it.

Also, I’m under the impression that content
negotiation à la Accept is entirely optional—the server is free to ignore

Yes, but then it MUST send HTML-compatible things or it’s not
an XHTML page. As simple as that. (I also serve my XHTML as
text/html always and just write it in compatible mode.)

I don’t buy this. What is and isn’t XHTML isn’t dependent on what the client declares it can handle. Please help me understand why you think that, with a citation perhaps.

Reply via email to