[Top] [All Lists]

Re: Character-set header (was Re: Minutes of the Atlanta 822ext meeting)

1991-08-29 10:37:46
I agree with Nathaniel that I don't like the idea of a separate character set
header.  To be honest, I don't like the idea of a separate encoding header
either, because it creates silly states.  I've gone along with it solely in
the interests of compromise (I'm still not sure I know what QUOTED-PRINTABLE
in IMAGE/FAX means, although I have a vague idea).

Suggestion: write down a matrix of all the variables and the states created.
You'll find that a two-dimensional matrix is bad enough; multi-dimensional
matrices get really ugly.  When you find that the n-dimensional matrix is
heavily populated with silly states with a few sparse useful ones, you'll
wonder whether it won't be a good idea to reduce the rank of the matrix and
coerce the useful states so they fit in the resulting simpler matrix.

We have enough silly states with a separate encoding header.  The whole issue
of banning nested encodings (and what to do when it happens in spite of the
ban) wouldn't have come up if the encoding was in the typing information;
MULTIPART and MESSAGE types just won't have a field for encoding in their

Let's not add a new rank to the matrix by introducing character set as a new
vector, with one useful element (Text), two marginal ones (Text-Plus and
Message), and 6 silly ones (Multipart, Application, Binary, Image, Audio, and

Here's the current type/encoding matrix.  Note that it could rather easily be
coerced into a vector:
                7bit    8bit    Binary  BASE64  Quoted-Printable
Text            OK      OK?     silly   OK      OK
Text-Plus       OK      OK?     silly   OK      OK
Message         OK      NO?     NO      NO      NO?
Multipart       OK      NO      NO      NO      NO
Application     NO      NO      NO      NO      NO
Binary          silly   silly   OK?     OK      silly
Image           silly   silly   OK?     OK      silly
Audio           silly   silly   OK?     OK      silly
Video           silly   silly   OK?     OK      silly

OK      = appropriate for use
OK?     = acceptability of usage questionable; definitely may NOT be used in
          some environments and must be converted to an acceptable form.
silly   = acceptable for use, but doesn't make any sense to do so.
NO?     = probably should NOT be used, but may become acceptable within the
          framework of certain guidelines.
NO      = may NOT be used