Can we revise RFC3023?

On the TAG telecon today, we were discussing our draft finding "Client 
Handling of MIME Headers" 
(, which grumbles about 
the contents of RFC3023 with respect to charset handling.

I took an action item to ask 3023's authors if there was any chance to 
revise what it says about the charset parameter; I think we have fairly 
widespread agreement as to what needs to be done:

1. Deprecate text/* for anything that's in XML.  That's because it 
forces the provider to provide a charset header, because in its absence 
the receiver is required to assume either ASCII or 8859 depending on the 
context, which has a very high probability of being wrong, which is 
irritating because if there were no charset header the client would have 
an excellent chance of getting it right.  And forcing the server to 
provide a charset= is wrong; see the next point.,

2. Deprecate the charset parameter for application/xml and 
application/*+xml.  I think that Roy would like to go far as to simply 
outlaw it; I'd be fine with that too.  The reason is that the client is 
almost certain to get it right, and will fail deterministically if it 
doesn't.  For the server, on the other hand, this is really hard to get 
right, particularly with the introduction of various kinds of filters in 
modern web servers.  And since the Web architecture and the XML spec 
says that the server's claim has to be taken as authoritative, this is 
really highly dysfunctional.  At the very least, it should be made clear 
that nobody sending a media-type should send a charset for an XML 
media-type unless it REALLY REALLY KNOWS what it's sending, and in that 
case should consider not sending it anyhow.

Makoto, Simon, Dan, any chance?  It's going to be kind of embarrassing 
for TAG findings and the Webarch doc to be saying "don't do what this 
RFC says".
Cheers, Tim Bray
         (ongoing fragmented essay:

Received on Monday, 15 September 2003 20:16:12 UTC