The only time when it might seem strongly desirable to put
an encoding on a non-innermost part (i.e. a message or a multipart) is
if a message has been floating around in a world of 8 bit transport and
is gatewayed back to 7-bit land. In the existing draft, you could do
this by encoding the whole message. WIth Mark's proposal, the gateway
would have to parse the parts and only encode the lowest-level parts.
I'm not a purist, but this does smack somewhat of bad layering.
The choice seems to be complexity in the UA (which is what Mark is up
against now) and complexity in gateways (which someone will be up
against some day). I just wanted to paint the choices clearly.
Personally, I have no problem with pushing the complexity to the
gateway, but it does mean that an 8-bit to 7-bit MTA gateway will have
to parse multipart messages.... -- Nathaniel
As the partial keeper of the "what happens when something floats around
in an 8 bit world and is 'fixed' to 7-bit land" materials, I think there
is a fairly strong case to be made for keeping the "encode the whole
message" option (which I have referred to elsewhere as "encapsulating"
it, following what I understand of the X.400 terminology) available.
The more diddling (e.g., part-parsing) with the message body gateways
have to do, the more likely a few of them are to get it wrong, which
makes finely-tuned delegation of UA responsibilities much more
important.
In other words, please don't change this.
--john