ietf-822
[Top] [All Lists]

Re: Newline problem: Another stab

1992-03-04 08:18:26
THANKS Keith for your very fine explanation !!!  And also for showing the
value of what I called 'orthogonality' and 'modularity'.

Since the matter is so obtuse, maybe it would help to put a drawing somewhere
in the spec. From my old one, enriched by the latest ideas :

  Binary objects (local encoding)       Text (local newline representation)
           |                                        ....|.................
           |                                        .   |------------    .
           |                                        ....|..........  |   .
    ----------------------                 --------------------   .  |   .
   | Local to canonical   |               |  Local newline to  |  .  |   .
   | conversion (actual   |               |  CRLF conversion   |  .  |   .
   | treatment depends    |                --------------------   .  |   .
   | on object type)      |                             |         .  |   .
    ----------------------     Text with CRLF newlines  |         .  |   .
           |                       is also a            |         .  |   .
           | Stream of bytes          Stream of bytes   |         .  |   .
           |                                            |         .  |   .
           |      --------------------------------------|         .  |(*).
           |     |                                      |         .  |   .
           |--------------------------------------      |         .  |   .
           |     |                                |     |         .  |   .
           v     v                                v     v         .  |   .
     ----------------                --------------------------   .  |   .
    | Base64 encoder |              | Quoted-printable encoder |  .  |   .
     ----------------                --------------------------   .  |   .
           |                                      |               .  |   .
           |--------------------------------------                .  |   .
...........|...............................................       .  |   .
.          | Encoding (text), using local newline         .       .  |   .
.          | convention as the MTA expects                .       .  |   .
.          |                                              .........  |   .
.          |---------------------------------------------------------    .
.          v                                              ................
.     ----------                                          .
.    |   MTA    |----------------------------------------------(Network)
.     ----------                                          . Text with CRLF
.                                                         .   newlines
. What actually happens in this box is not specified.     .
. Any method giving the same result 'on the wire' has     .
. always been and remains conformant.                     .
...........................................................

(*) This is the current 822/821 path. This path is not affected by the
    new specification. Of course, it may only be used if the text conforms
    to the old specifications ('short' lines, 7-bit ASCII).

IMPORTANT : the q-p encoder in the above figure is not the one described
by the current draft, but the one fixed to remove any special treatment
for the bytes locally used for representing newlines.
                                                          /AF

<Prev in Thread] Current Thread [Next in Thread>