Showing content from https://www.rfc-editor.org/rfc/rfc1642.ps below:
%!PS-Adobe-3.0 %%Title: (UTF-7) %%Creator: (MacWrite Pro: LaserWriter 8 8.1.1) %%CreationDate: (5:04 PM Friday, July 15, 1994) %%For: (David Goldsmith) %%Pages: 14 %%DocumentFonts: Times-Roman Times-Bold Times-Italic Courier %%DocumentNeededFonts: Times-Roman Times-Bold Times-Italic Courier %%DocumentSuppliedFonts: %%DocumentData: Clean7Bit %%PageOrder: Ascend %%Orientation: Portrait %ADO_PaperArea: -31 -31 761 581 %ADO_ImageableArea: 0 0 730 552 %%EndComments /md 145 dict def md begin /currentpacking where {pop /sc_oldpacking currentpacking def true setpacking}if %%BeginFile: adobe_psp_basic %%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved. /bd{bind def}bind def /xdf{exch def}bd /xs{exch store}bd /ld{load def}bd /Z{0 def}bd /T/true /F/false /:L/lineto /lw/setlinewidth /:M/moveto /rl/rlineto /rm/rmoveto /:C/curveto /:T/translate /:K/closepath /:mf/makefont /gS/gsave /gR/grestore /np/newpath 14{ld}repeat /$m matrix def /av 81 def /por true def /normland false def /psb-nosave{}bd /pse-nosave{}bd /us Z /psb{/us save store}bd /pse{us restore}bd /level2 /languagelevel where { pop languagelevel 2 ge }{ false }ifelse def /featurecleanup { stopped cleartomark countdictstack exch sub dup 0 gt { {end}repeat }{ pop }ifelse }bd /noload Z /startnoload { {/noload save store}if }bd /endnoload { {noload restore}if }bd level2 startnoload /setjob { statusdict/jobname 3 -1 roll put }bd /setcopies { userdict/#copies 3 -1 roll put }bd level2 endnoload level2 not startnoload /setjob { 1 dict begin/JobName xdf currentdict end setuserparams }bd /setcopies { 1 dict begin/NumCopies xdf currentdict end setpagedevice }bd level2 not endnoload /pm Z /mT Z /sD Z /realshowpage Z /initializepage { /pm save store mT concat }bd /endp { pm restore showpage }def /$c/DeviceRGB def /rectclip where { pop/rC/rectclip ld }{ /rC { np 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl :K clip np }bd }ifelse /rectfill where { pop/rF/rectfill ld }{ /rF { gS np 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl fill gR }bd }ifelse /rectstroke where { pop/rS/rectstroke ld }{ /rS { gS np 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl :K stroke gR }bd }ifelse %%EndFile %%BeginFile: adobe_psp_colorspace_level1 %%Copyright: Copyright 1991-1993 Adobe Systems Incorporated. All Rights Reserved. /G/setgray ld /:F/setrgbcolor ld %%EndFile %%BeginFile: adobe_psp_uniform_graphics %%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved. /@a { np :M 0 rl :L 0 exch rl 0 rl :L fill }bd /@b { np :M 0 rl 0 exch rl :L 0 rl 0 exch rl fill }bd /arct where { pop }{ /arct { arcto pop pop pop pop }bd }ifelse /x1 Z /x2 Z /y1 Z /y2 Z /rad Z /@q { /rad xs /y2 xs /x2 xs /y1 xs /x1 xs np x2 x1 add 2 div y1 :M x2 y1 x2 y2 rad arct x2 y2 x1 y2 rad arct x1 y2 x1 y1 rad arct x1 y1 x2 y1 rad arct fill }bd /@s { /rad xs /y2 xs /x2 xs /y1 xs /x1 xs np x2 x1 add 2 div y1 :M x2 y1 x2 y2 rad arct x2 y2 x1 y2 rad arct x1 y2 x1 y1 rad arct x1 y1 x2 y1 rad arct :K stroke }bd /@i { np 0 360 arc fill }bd /@j { gS np :T scale 0 0 .5 0 360 arc fill gR }bd /@e { np 0 360 arc :K stroke }bd /@f { np $m currentmatrix pop :T scale 0 0 .5 0 360 arc :K $m setmatrix stroke }bd /@k { gS np :T 0 0 :M 0 0 5 2 roll arc fill gR }bd /@l { gS np :T 0 0 :M scale 0 0 .5 5 -2 roll arc fill gR }bd /@m { np arc stroke }bd /@n { np $m currentmatrix pop :T scale 0 0 .5 5 -2 roll arc $m setmatrix stroke }bd %%EndFile %%BeginFile: adobe_psp_basic_text %%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved. /S/show ld /A{ 0.0 exch ashow }bd /R{ 0.0 exch 32 exch widthshow }bd /W{ 0.0 3 1 roll widthshow }bd /J{ 0.0 32 4 2 roll 0.0 exch awidthshow }bd /V{ 0.0 4 1 roll 0.0 exch awidthshow }bd /fcflg true def /fc{ fcflg{ vmstatus exch sub 50000 lt{ (%%[ Warning: Running out of memory ]%%\r)print flush/fcflg false store }if pop }if }bd /$f[1 0 0 -1 0 0]def /:ff{$f :mf}bd /MacEncoding StandardEncoding 256 array copy def MacEncoding 39/quotesingle put MacEncoding 96/grave put /Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis/Udieresis/aacute /agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute/egrave /ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde/oacute /ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex/udieresis /dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/notequal/AE/Oslash /infinity/plusminus/lessequal/greaterequal/yen/mu/partialdiff/summation /product/pi/integral/ordfeminine/ordmasculine/Omega/ae/oslash /questiondown/exclamdown/logicalnot/radical/florin/approxequal/Delta/guillemotleft /guillemotright/ellipsis/space/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide/lozenge /ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright/fi/fl /daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex/Idieresis/Igrave /Oacute/Ocircumflex/apple/Ograve/Uacute/Ucircumflex/Ugrave/dotlessi/circumflex/tilde /macron/breve/dotaccent/ring/cedilla/hungarumlaut/ogonek/caron MacEncoding 128 128 getinterval astore pop level2 startnoload /copyfontdict { findfont dup length dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall }bd level2 endnoload level2 not startnoload /copyfontdict { findfont dup length dict copy begin }bd level2 not endnoload md/fontname known not{ /fontname/customfont def }if /Encoding Z /:mre { copyfontdict /Encoding MacEncoding def fontname currentdict end definefont :ff def }bd /:bsr { copyfontdict /Encoding Encoding 256 array copy def Encoding dup }bd /pd{put dup}bd /:esr { pop pop fontname currentdict end definefont :ff def }bd /scf { scalefont def }bd /scf-non { $m scale :mf setfont }bd /ps Z /fz{/ps xs}bd /sf/setfont ld /cF/currentfont ld /mbf { /makeblendedfont where { pop makeblendedfont /ABlend exch definefont }{ pop }ifelse def }def %%EndFile /currentpacking where {pop sc_oldpacking setpacking}if end % md %%EndProlog %%BeginSetup md begin countdictstack [ {%stopped %%BeginFeature: *ManualFeed False 1 dict dup /ManualFeed false put setpagedevice %%EndFeature }featurecleanup countdictstack [ {%stopped %%BeginFeature: *PageSize LetterSmall 2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice %%EndFeature }featurecleanup (David Goldsmith)setjob /pT[1 0 0 -1 31 761]def/mT[1 0 0 -1 31 761]def /sD 16 dict def 300 level2{1 dict dup/WaitTimeout 4 -1 roll put setuserparams}{statusdict/waittimeout 3 -1 roll put}ifelse %%IncludeFont: Times-Roman %%IncludeFont: Times-Bold %%IncludeFont: Times-Italic %%IncludeFont: Courier /f0_1/Times-Roman :mre /f0_12 f0_1 12 scf /f1_1/Times-Bold :mre /f1_18 f1_1 18 scf /f1_14 f1_1 14 scf /f1_12 f1_1 12 scf /f2_1/Times-Italic :mre /f2_12 f2_1 12 scf /f3_1/Courier :mre /f3_12 f3_1 12 scf /f3_10 f3_1 10 scf /Courier findfont[10 0 0 -10 0 0]:mf setfont %%EndSetup %%Page: 1 1 %%BeginPageSetup initializepage (David Goldsmith; page: 1 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 41 50 :M f0_12 sf -.014(Network Working Group)A 442 50 :M -.03(D. Goldsmith)A 41 62 :M -.039(Request for Comments: 1642)A 462 62 :M -.094(M. Davis)A 41 74 :M -.045(Category: Experimental)A 443 74 :M -.023(Taligent, Inc.)A 460 86 :M (July 1994)S 249 115 :M f1_18 sf -.246(UTF-7)A 130 147 :M f1_14 sf -.007(A Mail-Safe Transformation Format of Unicode)A 41 176 :M -.019(Status of this Memo)A 58 204 :M f0_12 sf -.006(This memo defines an Experimental Protocol for the Internet community. This memo does)A 58 216 :M -.003(not specify an Internet standard of any kind. Distribution of this memo is unlimited.)A 41 247 :M f1_14 sf -.011(Abstract)A 58 275 :M f0_12 sf -.006(The Unicode Standard, version 1.1, and ISO/IEC 10646-1:1993\(E\) jointly define a 16 bit)A 58 287 :M -.005(character set \(hereafter referred to as Unicode\) which encompasses most of the world\325s)A 58 299 :M -.006(writing systems. However, Internet mail \(STD 11, RFC 822\) currently supports only 7-bit)A 58 311 :M -.003(US ASCII as a character set. MIME\312\(RFC 1521 and RFC 1522\) extends Internet mail to)A 58 323 :M -.006(support different media types and character sets, and thus could support Unicode in mail)A 58 335 :M -.005(messages. MIME neither defines Unicode as a permitted character set nor specifies how it)A 58 347 :M -.009(would be encoded, although it does provide for the registration of additional character sets)A 58 359 :M -.072(over time.)A 58 387 :M -.01(This document describes a new transformation format of Unicode that contains only 7-bit)A 58 399 :M -.006(ASCII characters and is intended to be readable by humans in the limiting case that the)A 58 411 :M -.009(document consists of characters from the US-ASCII repertoire. It also specifies how this)A 58 423 :M -.007(transformation format is used in the context of RFC 1521, RFC 1522, and the document)A 58 435 :M -.038(\322Using Unicode with MIME\323.)A 41 466 :M f1_14 sf -.01(Motivation)A 58 494 :M f0_12 sf -.002(Although other transformation formats of Unicode exist and could conceivably be used in)A 58 506 :M -.007(this context \(most notably UTF-1 and UTF-8, also known as UTF-2 or UTF-FSS\), they)A 58 518 :M -.002(suffer the disadvantage that they use octets in the range decimal 128 through 255 to encode)A 58 530 :M -.009(Unicode characters outside the US-ASCII range. Thus, in the context of mail, those octets)A 58 542 :M -.01(must themselves be encoded. This requires putting text through two successive encoding)A 58 554 :M -.002(processes, and leads to a significant expansion of characters outside the US-ASCII range,)A 58 566 :M -.002(putting non-English speakers at a disadvantage. For example, using UTF-FSS together with)A 58 578 :M -.001(the Quoted-Printable content transfer encoding of MIME represents US-ASCII characters in)A 58 590 :M -.014(one octet, but other characters may require up to nine octets.)A 40 662 468 26 rC 41 684 :M -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (1)S 503 684 :M (])S endp %%Page: 2 2 %%BeginPageSetup initializepage (David Goldsmith; page: 2 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 41 79 :M f1_14 sf -.075(Overview)A 58 107 :M f0_12 sf -.002(UTF-7 encodes Unicode characters as US-ASCII, together with shift sequences to encode)A 58 119 :M -.002(characters outside that range. For this purpose, one of the characters in the US-ASCII)A 58 131 :M -.016(repertoire is reserved for use as a shift character.)A 58 159 :M -.006(Many mail gateways and systems cannot handle the entire US-ASCII character set \(those)A 58 171 :M -.002(based on EBCDIC, for example\), and so UTF-7 contains provisions for encoding characters)A 58 183 :M -.004(within US-ASCII in a way that all mail systems can accomodate.)A 58 211 :M -.007(UTF-7 should normally be used only in the context of 7 bit transports, such as mail and)A 58 223 :M -.008(news. In other contexts, straight Unicode or UTF-8 is preferred.)A 58 251 :M -.01(See the document \322Using Unicode with MIME\323\312for the overall specification on usage of)A 58 263 :M -.023(Unicode transformation formats with MIME.)A 41 294 :M f1_14 sf -.032(Definitions)A 58 322 :M f0_12 sf -.009(First, the definition of Unicode:)A 76 350 :M -.01(The 16 bit character set Unicode is defined by \322The Unicode Standard, Version 1.1\323.)A 76 362 :M -.008(This character set is identical with the character repertoire and coding of the international)A 76 374 :M -.006(standard ISO/IEC 10646-1:1993\(E\); Coded Representation Form=UCS-2; Subset=300;)A 76 386 :M -.003(Implementation Level=3.)A 76 414 :M f1_12 sf -.328(Note)A 100 414 :M f0_12 sf -.006(. Unicode 1.1 further specifies the use and interaction of these character codes)A 76 426 :M -.011(beyond the ISO standard. However, any valid 10646 BMP \(Basic Multilingual Plane\))A 76 438 :M -.006(sequence is a valid Unicode sequence, and )A 283 438 :M f2_12 sf -.033(vice versa)A 332 438 :M f0_12 sf -.017(; Unicode supplies interpretations of)A 76 450 :M -.008(sequences on which the ISO standard is silent as to interpretation.)A 58 478 :M -.015(Next, some handy definitions of US-ASCII character subsets:)A 76 506 :M -.005(Set D \(directly encoded characters\) consists of the following characters \(derived from)A 76 518 :M -.007(RFC 1521, Appendix B\): the upper and lower case letters A through Z and a through z,)A 76 530 :M (the 10 digits 0-9, and the following nine special characters \(note that \322+\323 and \322=\323 are)S 76 542 :M -.124(omitted\):)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (2)S 503 684 :M (])S endp %%Page: 3 3 %%BeginPageSetup initializepage (David Goldsmith; page: 3 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 1 G 148 67 252 146 rC 148 67 68 14 rF 159 77 :M 0 G f0_12 sf -.079(Character)A 1 G 216 67 184 14 rF 224 77 :M 0 G -.031(ASCII & Unicode Value \(decimal\))A 1 G 148 81 68 15 rF 179 93 :M 0 G f3_12 sf (')S 1 G 216 81 184 15 rF 302 92 :M 0 G f0_12 sf (39)S 1 G 148 96 68 14 rF 179 107 :M 0 G f3_12 sf (\()S 1 G 216 96 184 14 rF 302 106 :M 0 G f0_12 sf (40)S 1 G 148 110 68 14 rF 179 121 :M 0 G f3_12 sf (\))S 1 G 216 110 184 14 rF 302 120 :M 0 G f0_12 sf (41)S 1 G 148 124 68 14 rF 179 135 :M 0 G f3_12 sf (,)S 1 G 216 124 184 14 rF 302 134 :M 0 G f0_12 sf (44)S 1 G 148 138 68 15 rF 179 150 :M 0 G f3_12 sf (-)S 1 G 216 138 184 15 rF 302 149 :M 0 G f0_12 sf (45)S 1 G 148 153 68 14 rF 179 164 :M 0 G f3_12 sf (.)S 1 G 216 153 184 14 rF 302 163 :M 0 G f0_12 sf (46)S 1 G 148 167 68 14 rF 179 178 :M 0 G f3_12 sf (/)S 1 G 216 167 184 14 rF 302 177 :M 0 G f0_12 sf (47)S 1 G 148 181 68 14 rF 179 192 :M 0 G f3_12 sf (:)S 1 G 216 181 184 14 rF 302 191 :M 0 G f0_12 sf (58)S 1 G 148 195 68 15 rF 179 207 :M 0 G f3_12 sf (?)S 1 G 216 195 184 15 rF 302 206 :M 0 G f0_12 sf (63)S 148 81.25 -.25 .25 216.25 81 .25 148 81 @a 216 81.25 -.25 .25 399.25 81 .25 216 81 @a -.25 -.25 216.25 81.25 .25 .25 216 67 @b -.25 -.25 216.25 95.25 .25 .25 216 81 @b -.25 -.25 216.25 110.25 .25 .25 216 96 @b -.25 -.25 216.25 124.25 .25 .25 216 110 @b -.25 -.25 216.25 138.25 .25 .25 216 124 @b -.25 -.25 216.25 152.25 .25 .25 216 138 @b -.25 -.25 216.25 167.25 .25 .25 216 153 @b -.25 -.25 216.25 181.25 .25 .25 216 167 @b -.25 -.25 216.25 195.25 .25 .25 216 181 @b -.25 -.25 216.25 209.25 .25 .25 216 195 @b -.25 -.25 148.25 81.25 .25 .25 148 67 @b -.25 -.25 399.25 81.25 .25 .25 399 67 @b -.25 -.25 148.25 95.25 .25 .25 148 81 @b -.25 -.25 399.25 95.25 .25 .25 399 81 @b -.25 -.25 148.25 110.25 .25 .25 148 96 @b -.25 -.25 399.25 110.25 .25 .25 399 96 @b -.25 -.25 148.25 124.25 .25 .25 148 110 @b -.25 -.25 399.25 124.25 .25 .25 399 110 @b -.25 -.25 148.25 138.25 .25 .25 148 124 @b -.25 -.25 399.25 138.25 .25 .25 399 124 @b -.25 -.25 148.25 152.25 .25 .25 148 138 @b -.25 -.25 399.25 152.25 .25 .25 399 138 @b -.25 -.25 148.25 167.25 .25 .25 148 153 @b -.25 -.25 399.25 167.25 .25 .25 399 153 @b -.25 -.25 148.25 181.25 .25 .25 148 167 @b -.25 -.25 399.25 181.25 .25 .25 399 167 @b -.25 -.25 148.25 195.25 .25 .25 148 181 @b -.25 -.25 399.25 195.25 .25 .25 399 181 @b -.25 -.25 148.25 209.25 .25 .25 148 195 @b -.25 -.25 399.25 209.25 .25 .25 399 195 @b 148 67.25 -.25 .25 216.25 67 .25 148 67 @a 148 209.25 -.25 .25 216.25 209 .25 148 209 @a 216 67.25 -.25 .25 399.25 67 .25 216 67 @a 216 209.25 -.25 .25 399.25 209 .25 216 209 @a gR gS 40 40 468 648 rC 76 234 :M f0_12 sf -.001(Set O \(optional direct characters\) consists of the following characters \(note that \322\\\323 and)A 76 246 :M -.048(\322~\323 are omitted\):)A 1 G 148 265 252 302 rC 148 265 68 14 rF 159 275 :M 0 G -.079(Character)A 1 G 216 265 184 14 rF 224 275 :M 0 G -.031(ASCII & Unicode Value \(decimal\))A 1 G 148 279 68 14 rF 179 290 :M 0 G f3_12 sf (!)S 1 G 216 279 184 14 rF 302 289 :M 0 G f0_12 sf (33)S 1 G 148 293 68 15 rF 179 305 :M 0 G f3_12 sf (")S 1 G 216 293 184 15 rF 302 304 :M 0 G f0_12 sf (34)S 1 G 148 308 68 14 rF 179 319 :M 0 G f3_12 sf (#)S 1 G 216 308 184 14 rF 302 318 :M 0 G f0_12 sf (35)S 1 G 148 322 68 14 rF 179 333 :M 0 G f3_12 sf ($)S 1 G 216 322 184 14 rF 302 332 :M 0 G f0_12 sf (36)S 1 G 148 336 68 14 rF 179 347 :M 0 G f3_12 sf (%)S 1 G 216 336 184 14 rF 302 346 :M 0 G f0_12 sf (37)S 1 G 148 350 68 15 rF 179 362 :M 0 G f3_12 sf (&)S 1 G 216 350 184 15 rF 302 361 :M 0 G f0_12 sf (38)S 1 G 148 365 68 14 rF 179 376 :M 0 G f3_12 sf (*)S 1 G 216 365 184 14 rF 302 375 :M 0 G f0_12 sf (42)S 1 G 148 379 68 14 rF 179 390 :M 0 G f3_12 sf (;)S 1 G 216 379 184 14 rF 302 389 :M 0 G f0_12 sf (59)S 1 G 148 393 68 14 rF 179 404 :M 0 G f3_12 sf (<)S 1 G 216 393 184 14 rF 302 403 :M 0 G f0_12 sf (60)S 1 G 148 407 68 15 rF 179 419 :M 0 G f3_12 sf (=)S 1 G 216 407 184 15 rF 302 418 :M 0 G f0_12 sf (61)S 1 G 148 422 68 14 rF 179 433 :M 0 G f3_12 sf (>)S 1 G 216 422 184 14 rF 302 432 :M 0 G f0_12 sf (62)S 1 G 148 436 68 14 rF 179 447 :M 0 G f3_12 sf (@)S 1 G 216 436 184 14 rF 302 446 :M 0 G f0_12 sf (64)S 1 G 148 450 68 14 rF 179 461 :M 0 G f3_12 sf ([)S 1 G 216 450 184 14 rF 302 460 :M 0 G f0_12 sf (91)S 1 G 148 464 68 15 rF 179 476 :M 0 G f3_12 sf (])S 1 G 216 464 184 15 rF 302 475 :M 0 G f0_12 sf (93)S 1 G 148 479 68 14 rF 179 490 :M 0 G f3_12 sf (^)S 1 G 216 479 184 14 rF 302 489 :M 0 G f0_12 sf (94)S 1 G 148 493 68 14 rF 179 504 :M 0 G f3_12 sf (_)S 1 G 216 493 184 14 rF 302 503 :M 0 G f0_12 sf (95)S 1 G 148 507 68 14 rF 179 518 :M 0 G f3_12 sf (`)S 1 G 216 507 184 14 rF 302 517 :M 0 G f0_12 sf (96)S 1 G 148 521 68 15 rF 179 533 :M 0 G f3_12 sf ({)S 1 G 216 521 184 15 rF 299 532 :M 0 G f0_12 sf (123)S 1 G 148 536 68 14 rF 179 547 :M 0 G f3_12 sf (|)S 1 G 216 536 184 14 rF 299 546 :M 0 G f0_12 sf (124)S 1 G 148 550 68 14 rF 179 561 :M 0 G f3_12 sf (})S 1 G 216 550 184 14 rF 299 560 :M 0 G f0_12 sf (125)S 148 279.25 -.25 .25 216.25 279 .25 148 279 @a 216 279.25 -.25 .25 399.25 279 .25 216 279 @a -.25 -.25 216.25 279.25 .25 .25 216 265 @b -.25 -.25 216.25 293.25 .25 .25 216 279 @b -.25 -.25 216.25 307.25 .25 .25 216 293 @b -.25 -.25 216.25 322.25 .25 .25 216 308 @b -.25 -.25 216.25 336.25 .25 .25 216 322 @b -.25 -.25 216.25 350.25 .25 .25 216 336 @b -.25 -.25 216.25 364.25 .25 .25 216 350 @b -.25 -.25 216.25 379.25 .25 .25 216 365 @b -.25 -.25 216.25 393.25 .25 .25 216 379 @b -.25 -.25 216.25 407.25 .25 .25 216 393 @b -.25 -.25 216.25 421.25 .25 .25 216 407 @b -.25 -.25 216.25 436.25 .25 .25 216 422 @b -.25 -.25 216.25 450.25 .25 .25 216 436 @b -.25 -.25 216.25 464.25 .25 .25 216 450 @b -.25 -.25 216.25 478.25 .25 .25 216 464 @b -.25 -.25 216.25 493.25 .25 .25 216 479 @b -.25 -.25 216.25 507.25 .25 .25 216 493 @b -.25 -.25 216.25 521.25 .25 .25 216 507 @b -.25 -.25 216.25 535.25 .25 .25 216 521 @b -.25 -.25 216.25 550.25 .25 .25 216 536 @b -.25 -.25 216.25 563.25 .25 .25 216 550 @b -.25 -.25 148.25 279.25 .25 .25 148 265 @b -.25 -.25 399.25 279.25 .25 .25 399 265 @b -.25 -.25 148.25 293.25 .25 .25 148 279 @b -.25 -.25 399.25 293.25 .25 .25 399 279 @b -.25 -.25 148.25 307.25 .25 .25 148 293 @b -.25 -.25 399.25 307.25 .25 .25 399 293 @b -.25 -.25 148.25 322.25 .25 .25 148 308 @b -.25 -.25 399.25 322.25 .25 .25 399 308 @b -.25 -.25 148.25 336.25 .25 .25 148 322 @b -.25 -.25 399.25 336.25 .25 .25 399 322 @b -.25 -.25 148.25 350.25 .25 .25 148 336 @b -.25 -.25 399.25 350.25 .25 .25 399 336 @b -.25 -.25 148.25 364.25 .25 .25 148 350 @b -.25 -.25 399.25 364.25 .25 .25 399 350 @b -.25 -.25 148.25 379.25 .25 .25 148 365 @b -.25 -.25 399.25 379.25 .25 .25 399 365 @b -.25 -.25 148.25 393.25 .25 .25 148 379 @b -.25 -.25 399.25 393.25 .25 .25 399 379 @b -.25 -.25 148.25 407.25 .25 .25 148 393 @b -.25 -.25 399.25 407.25 .25 .25 399 393 @b -.25 -.25 148.25 421.25 .25 .25 148 407 @b -.25 -.25 399.25 421.25 .25 .25 399 407 @b -.25 -.25 148.25 436.25 .25 .25 148 422 @b -.25 -.25 399.25 436.25 .25 .25 399 422 @b -.25 -.25 148.25 450.25 .25 .25 148 436 @b -.25 -.25 399.25 450.25 .25 .25 399 436 @b -.25 -.25 148.25 464.25 .25 .25 148 450 @b -.25 -.25 399.25 464.25 .25 .25 399 450 @b -.25 -.25 148.25 478.25 .25 .25 148 464 @b -.25 -.25 399.25 478.25 .25 .25 399 464 @b -.25 -.25 148.25 493.25 .25 .25 148 479 @b -.25 -.25 399.25 493.25 .25 .25 399 479 @b -.25 -.25 148.25 507.25 .25 .25 148 493 @b -.25 -.25 399.25 507.25 .25 .25 399 493 @b -.25 -.25 148.25 521.25 .25 .25 148 507 @b -.25 -.25 399.25 521.25 .25 .25 399 507 @b -.25 -.25 148.25 535.25 .25 .25 148 521 @b -.25 -.25 399.25 535.25 .25 .25 399 521 @b -.25 -.25 148.25 550.25 .25 .25 148 536 @b -.25 -.25 399.25 550.25 .25 .25 399 536 @b -.25 -.25 148.25 563.25 .25 .25 148 550 @b -.25 -.25 399.25 563.25 .25 .25 399 550 @b 148 265.25 -.25 .25 216.25 265 .25 148 265 @a 148 563.25 -.25 .25 216.25 563 .25 148 563 @a 216 265.25 -.25 .25 399.25 265 .25 216 265 @a 216 563.25 -.25 .25 399.25 563 .25 216 563 @a gR gS 40 40 468 648 rC 76 588 :M f1_12 sf -.04(Rationale)A 125 588 :M f0_12 sf -.008(. The characters \322\\\323 and \322~\323 are omitted because they are often redefined in)A 76 600 :M -.017(variants of ASCII.)A 76 628 :M -.01(Set B \(Modified Base 64\) is the set of characters in the Base64 alphabet defined in RFC)A 76 640 :M -.011(1521, excluding the pad character \322=\323 \(decimal value 61\).)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (3)S 503 684 :M (])S endp %%Page: 4 4 %%BeginPageSetup initializepage (David Goldsmith; page: 4 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 76 76 :M f1_12 sf -.04(Rationale)A 125 76 :M f0_12 sf -.008(. The pad character \322=\323 is excluded because UTF-7 is designed for use within)A 76 88 :M -.007(header fields as set forth in RFC 1522. Since the only readable encoding in RFC 1522 is)A 76 100 :M -.003(\322Q\323 \(based on RFC 1521\325s Quoted-Printable\), the \322=\323 character is not available for use)A 76 112 :M -.011(\(without a lot of escape sequences\). This was very unfortunate but unavoidable.The \322=\323)A 76 124 :M -.005(character could otherwise have been used as the UTF-7 escape character as well \(rather)A 76 136 :M -.005(than using \322+\323\).)A 58 164 :M -.001(Note that all characters in US-ASCII have the same value in Unicode when zero-extended to)A 58 176 :M -.048(16 bits.)A 41 207 :M f1_14 sf (UTF-7 Definition)S 58 235 :M f0_12 sf -.01(A UTF-7 stream represents 16-bit Unicode characters in 7-bit US-ASCII as follows:)A 76 263 :M -.002(Rule 1: \(direct encoding\) Unicode characters in set D above may be encoded directly as)A 76 275 :M -.01(their ASCII equivalents. Unicode characters in Set O may optionally be encoded directly)A 76 287 :M -.009(as their ASCII equivalents, bearing in mind that many of these characters are illegal in)A 76 299 :M -.008(header fields, or may not pass correctly through some mail gateways.)A 76 327 :M -.006(Rule 2: \(Unicode shifted encoding\) Any Unicode character sequence may be encoded)A 76 340 :M -.002(using a sequence of characters in set B, when preceded by the shift character \322)A 452 340 :M f3_12 sf (+)S 459 340 :M f0_12 sf -.129(\323 \(US-)A 76 353 :M -.006(ASCII character value decimal 43\). The \322)A 276 353 :M f3_12 sf (+)S 283 353 :M f0_12 sf -.006(\323\312signals that subsequent octets are to be)A 76 365 :M -.01(interpreted as elements of the Modified Base64 alphabet until a character not in that)A 76 377 :M -.005(alphabet is encountered. Such characters include control characters such as carriage)A 76 389 :M -.002(returns and line feeds; thus, a Unicode shifted sequence always terminates at the end of a)A 76 402 :M -.011(line. As a special case, if the sequence terminates with the character \322)A 410 402 :M f3_12 sf (-)S 417 402 :M f0_12 sf -.097(\323 \(US-ASCII)A 76 414 :M -.001(decimal 45\) then that character is absorbed; other terminating characters are not absorbed)A 76 426 :M -.023(and are processed normally.)A 76 454 :M f1_12 sf -.04(Rationale)A 125 454 :M f0_12 sf -.005(. A terminating character is necessary for cases where the next character after)A 76 466 :M -.005(the Modified Base64 sequence is part of character set B. It can also enhance readability)A 76 478 :M -.031(by delimiting encoded sequences.)A 76 507 :M -.024(Also as a special case, the sequence \322)A 256 507 :M f3_12 sf -.397(+-)A 270 507 :M f0_12 sf -.015(\323 may be used to encode the character \322)A 460 507 :M f3_12 sf (+)S 467 507 :M f0_12 sf -.33(\323. A)A 76 520 :M (\322)S 81 520 :M f3_12 sf (+)S 88 520 :M f0_12 sf -.001(\323 character followed immediately by any character other than members of set B or \322)A 491 520 :M f3_12 sf (-)S 498 520 :M f0_12 sf (\323)S 76 532 :M -.038(is an ill-formed sequence.)A 76 560 :M -.002(Unicode is encoded using Modified Base64 by first converting Unicode 16-bit quantities)A 76 572 :M -.01(to an octet stream \(with the most significant octet first\). Text with an odd number of)A 76 584 :M -.031(octets is ill-formed.)A 76 612 :M f1_12 sf -.04(Rationale)A 125 612 :M f0_12 sf -.012(. ISO/IEC 10646-1:1993\(E\) specifies that when characters in the UCS-2 form)A 76 624 :M -.009(are serialized as octets, that the most significant octet appear first. This is also in keeping)A 76 636 :M -.011(with common network practice of choosing a canonical format for transmission.)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (4)S 503 684 :M (])S endp %%Page: 5 5 %%BeginPageSetup initializepage (David Goldsmith; page: 5 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 76 76 :M f0_12 sf -.002(Next, the octet stream is encoded by applying the Base64 content transfer encoding)A 76 88 :M -.003(algorithm as defined in RFC 1521, modified to omit the \322=\323 pad character. Instead, when)A 76 100 :M -.01(encoding, zero bits are added to pad to a Base64 character boundary. When decoding,)A 76 112 :M -.002(any bits at the end of the Modified Base64 sequence that do not constitute a complete 16-)A 76 124 :M -.001(bit Unicode character are discarded. If such discarded bits are non-zero the sequence is)A 76 136 :M -.064(ill-formed.)A 76 164 :M f1_12 sf -.04(Rationale)A 125 164 :M f0_12 sf -.008(. The pad character \322=\323 is not used when encoding Modified Base64 because)A 76 176 :M -.009(of the conflict with its use as an escape character for the Q content transfer encoding in)A 76 188 :M -.014(RFC 1522 header fields, as mentioned above.)A 76 216 :M -.005(Rule 3: The space \(decimal 32\), tab \(decimal 9\), carriage return \(decimal 13\), and line)A 76 228 :M -.001(feed \(decimal 10\) characters may be directly represented by their ASCII\312equivalents.)A 76 240 :M -.01(However, note that MIME\312content transfer encodings have rules concerning the use of)A 76 252 :M -.002(such characters. Usage that does not conform to the restrictions of RFC 822, for example,)A 76 264 :M -.002(would have to be encoded using MIME content transfer encodings other than 7bit or 8bit,)A 76 276 :M -.006(such as quoted-printable, binary, or base64.)A 58 304 :M -.002(Given this set of rules, Unicode characters which may be encoded via rules 1 or 3 take one)A 58 316 :M -.005(octet per character, and other Unicode characters are encoded on average with 2 2/3 octets)A 58 328 :M -.002(per character plus one octet to switch into Modified Base64 and an optional octet to switch)A 58 340 :M -.111(out.)A 76 368 :M f1_12 sf -.055(Example)A 121 368 :M f0_12 sf -.005(. The Unicode sequence \322A .\323)A 76 380 :M -.004(\(hexadecimal 0041,2262,0391,002E\) may be encoded as follows:)A 148 409 :M f3_12 sf -.223(A+ImIDkQ.)A 76 436 :M f1_12 sf -.055(Example)A 121 436 :M f0_12 sf -.006(. The Unicode sequence \322Hi Mom !\323 \(hexadecimal)A 76 448 :M -.013(0048,0069,0020,004D,006F,004D,0020,263A,0021\) may be encoded as follows:)A 148 477 :M f3_12 sf -.215(Hi Mom +Jjo-!)A 76 504 :M f1_12 sf -.055(Example)A 121 504 :M f0_12 sf -.01(. The Unicode sequence representing the Han characters for the Japanese word)A 76 516 :M -.003(\322nihongo\323 \(hexadecimal 65E5,672C,8A9E\) may be encoded as follows:)A 148 545 :M f3_12 sf -.22(+ZeVnLIqe-)A 41 575 :M f1_14 sf -.01(Use of Character Set UTF-7 Within MIME)A 58 603 :M f0_12 sf -.002(Character set UTF-7 is safe for mail transmission and therefore may be used with any)A 58 615 :M -.005(content transfer encoding in MIME \(except where line length and line break restrictions are)A 58 627 :M -.009(violated\). Specifically, the 7 bit encoding for bodies and the Q encoding for headers are both)A 58 639 :M -.012(acceptable. The MIME character set identifier is UNICODE-1-1-UTF-7.)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (5)S 503 684 :M (])S endp %%Page: 6 6 %%BeginPageSetup initializepage (David Goldsmith; page: 6 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 76 76 :M f1_12 sf -.055(Example)A 121 76 :M f0_12 sf -.012(. Here is a text portion of a MIME message containing the Unicode sequence)A 76 88 :M -.006(\322Hi Mom !\323 \(hexadecimal 0048, 0069, 0020, 004D, 006F,)A 76 100 :M -.014(004D, 0020, 263A, 0021\).)A 94 129 :M f3_12 sf -.202(Content-Type: text/plain; charset=UNICODE-1-1-UTF-7)A 94 153 :M -.215(Hi Mom +Jjo-!)A 76 176 :M f1_12 sf -.055(Example)A 121 176 :M f0_12 sf -.012(. Here is a text portion of a MIME message containing the Unicode sequence)A 76 188 :M -.002(representing the Han characters for the Japanese word \322nihongo\323 \(hexadecimal)A 76 200 :M -.021(65E5,672C,8A9E\).)A 94 229 :M f3_12 sf -.202(Content-Type: text/plain; charset=UNICODE-1-1-UTF-7)A 94 253 :M -.22(+ZeVnLIqe-)A 76 276 :M f1_12 sf -.055(Example)A 121 276 :M f0_12 sf -.012(. Here is a text portion of a MIME message containing the Unicode sequence)A 76 288 :M -.015(\322A .\323 \(hexadecimal 0041,2262,0391,002E\).)A 94 317 :M f3_12 sf -.202(Content-Type: text/plain; charset=UNICODE-1-1-UTF-7)A 94 341 :M -.223(A+ImIDkQ.)A 76 364 :M f1_12 sf -.055(Example)A 121 364 :M f0_12 sf -.012(. Here is a text portion of a MIME message containing the Unicode sequence)A 76 376 :M -.01(\322Item 3 is 1.\323 \(hexadecimal 0049, 0074, 0065, 006D, 0020, 0033,)A 76 388 :M -.024(0020, 0069, 0073, 0020, 00A3, 0031, 002E\).)A 94 417 :M f3_12 sf -.202(Content-Type: text/plain; charset=UNICODE-1-1-UTF-7)A 94 441 :M -.211(Item 3 is +AKM-1.)A 58 464 :M f0_12 sf -.002(Note that to achieve the best interoperability with systems that may not support Unicode or)A 58 476 :M -.006(MIME, when preparing text for mail transmission line breaks should follow Internet)A 58 488 :M -.003(conventions. This means that lines should be short and terminated with the proper SMTP)A 58 500 :M -.008(CRLF sequence. Unicode LINE SEPARATOR \(hexadecimal 2028\) and PARAGRAPH)A 58 512 :M -.011(SEPARATOR \(hexadecimal 2029\) should be converted to SMTP line breaks. Ideally, this)A 58 524 :M -.009(would be handled transparently by a Unicode-aware user agent.)A 58 552 :M -.01(This preparation is not absolutely necessary, since UTF-7 and the appropriate MIME)A 58 564 :M -.01(content transfer encoding can handle text that does not follow Internet conventions, but)A 58 576 :M -.006(readability by systems without Unicode or MIME will be impaired. See RFC 1521 for an in-)A 58 588 :M -.013(depth discussion of mail interoperability issues.)A 58 616 :M -.006(Lines should never be broken in the middle of a UTF-7 shifted sequence, since such)A 58 628 :M -.009(sequences may not cross line breaks. Therefore, UTF-7 encoding should take place after line)A 58 640 :M -.009(breaking. If a line containing a shifted sequence is too long after encoding, a MIME content)A 58 652 :M -.006(transfer encoding such as Quoted Printable can be used to encode the text. Another)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (6)S 503 684 :M (])S endp %%Page: 7 7 %%BeginPageSetup initializepage (David Goldsmith; page: 7 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 58 76 :M f0_12 sf -.006(possibility is to perform line breaking and UTF-7 encoding at the same time, so that lines)A 58 88 :M -.008(containing shifted sequences already conform to length restrictions.)A 41 119 :M f1_14 sf (Discussion)S 58 147 :M f0_12 sf -.006(In this section we will motivate the introduction of UTF-7 as opposed to the alternative of)A 58 159 :M -.006(using the existing transformation formats of Unicode \(e.g., UTF-8\) with MIME\325s content)A 58 171 :M -.006(transfer encodings. Before discussing this, it will be useful to list some assumptions about)A 58 183 :M -.002(character frequency within typical natural language text strings that we use to estimate)A 58 195 :M -.01(typical storage requirements:)A 76 223 :M -.01(1. Most Western European languages use roughly 7/8 of their letters from US-ASCII and)A 76 235 :M -.01(1/8 from Latin 1 \(ISO-8859-1\).)A 76 263 :M -.002(2. Most non-European alphabet-based languages \(e.g., Greek\) use about 1/6 of their)A 76 275 :M -.002(letters from ASCII \(since white space is in the 7-bit area\) and the rest from their)A 76 287 :M -.035(alphabets.)A 76 315 :M -.002(3. East Asian ideographic-based languages \(including Japanese\) use essentially all of)A 76 327 :M -.017(their characters from the Han or CJK syllabary area.)A 76 355 :M -.009(4. Non-directly encoded punctuation characters do not occur frequently enough to affect)A 76 367 :M -.089(the results.)A 58 395 :M -.005(Notice that current 8 bit standards, such as ISO-8859-x, require use of a content transfer)A 58 407 :M -.01(encoding. For comparison with the subsequent discussion, the costs break down as follows)A 58 419 :M -.002(\(note that many of these figures are approximate since they depend on the exact composition)A 58 431 :M -.081(of the text\):)A 76 459 :M -.043(8859-x in Base64)A 148 487 :M -.081(Text type)A 148 488.5 -.5 .5 194.5 488 .5 148 488 @a 256 487 :M -.039(Average octets/character)A 256 488.5 -.5 .5 375.5 488 .5 256 488 @a 148 499 :M -.165(All)A 256 499 :M (1.33)S 76 523 :M -.039(8859-x in Quoted Printable)A 148 551 :M -.081(Text type)A 148 552.5 -.5 .5 194.5 552 .5 148 552 @a 256 551 :M -.039(Average octets/character)A 256 552.5 -.5 .5 375.5 552 .5 256 552 @a 148 563 :M -.093(US-ASCII)A 256 563 :M (1)S 148 575 :M -.063(Western European)A 256 575 :M (1.25)S 148 587 :M -.079(Other)A 256 587 :M (2.67)S 58 611 :M -.009(Note also that Unicode encoded in Base64 takes a constant 2.67 octets per character. For)A 58 623 :M -.006(purposes of comparison, we will look at UTF-8\312in Base64 and Quoted Printable, and UTF-7.)A 58 635 :M -.006(UTF-1 gives results substantially similar to UTF-8. Also note that fixed overhead for long)A 58 647 :M -.003(strings is relative to 1/n, where n is the encoded string length in octets.)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (7)S 503 684 :M (])S endp %%Page: 8 8 %%BeginPageSetup initializepage (David Goldsmith; page: 8 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 76 76 :M f0_12 sf -.021(UTF-8 in Base64 )A 148 104 :M -.081(Text type)A 148 105.5 -.5 .5 194.5 105 .5 148 105 @a 256 104 :M -.039(Average octets/character)A 256 105.5 -.5 .5 375.5 105 .5 256 105 @a 148 116 :M -.093(US-ASCII)A 256 116 :M (1.33)S 148 128 :M -.063(Western European)A 256 128 :M (1.5)S 148 140 :M -.043(Some Alphabetics)A 256 140 :M (2.44)S 148 152 :M -.072(All others)A 256 152 :M (4)S 76 176 :M -.026(UTF-8 in Quoted Printable)A 148 204 :M -.081(Text type)A 148 205.5 -.5 .5 194.5 205 .5 148 205 @a 256 204 :M -.039(Average octets/character)A 256 205.5 -.5 .5 375.5 205 .5 256 205 @a 148 216 :M -.093(US-ASCII)A 256 216 :M (1)S 148 228 :M -.063(Western European)A 256 228 :M (1.63)S 148 240 :M -.043(Some Alphabetics)A 256 240 :M (5.17)S 148 252 :M -.072(All others)A 256 252 :M -.497(7-9)A 76 276 :M -.164(UTF-7)A 148 304 :M -.081(Text type)A 148 305.5 -.5 .5 194.5 305 .5 148 305 @a 256 304 :M -.039(Average octets/character)A 256 305.5 -.5 .5 375.5 305 .5 256 305 @a 148 316 :M -.027(Most US-ASCII)A 256 316 :M (1)S 148 328 :M -.063(Western European)A 256 328 :M (1.5)S 148 340 :M -.072(All others)A 256 340 :M -.014(2.67+2/n)A 58 364 :M -.01(We feel that the UTF-8 in Quoted Printable option is not viable due to the very large)A 58 376 :M -.009(expansion of all text except Western European. This would only be viable in texts consisting)A 58 388 :M -.001(of large expanses of US-ASCII\312or Latin characters with occasional other characters)A 58 400 :M -.001(interspersed. We would prefer to introduce one encoding that works reasonably well for all)A 58 412 :M -.131(users.)A 58 440 :M -.002(We also feel that UTF-8 in Base64 has high expansion for non-Western-European users, and)A 58 452 :M -.009(is less desirable because it cannot be read directly, even when the content is largely US-)A 58 464 :M -.006(ASCII. The base encoding of UTF-7 gives competitive results and is readable for ASCII text.)A 58 492 :M -.002(UTF-7 gives results competitive with ISO-8859-x, with access to all of the Unicode)A 58 504 :M -.001(character set. We believe this justifies the introduction of a new transformation format of)A 58 516 :M -.093(Unicode.)A 58 544 :M -.006(As an alternative to use of UTF-7, it is possible to intermix Unicode characters with other)A 58 556 :M -.01(character sets using an existing MIME mechanism, the multipart/mixed content type \(thanks)A 58 568 :M -.002(to Nathaniel Borenstein for pointing this out\). For instance \(repeating an earlier example\):)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (8)S 503 684 :M (])S endp %%Page: 9 9 %%BeginPageSetup initializepage (David Goldsmith; page: 9 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 94 77 :M f3_12 sf -.203(Content-type: multipart/mixed; boundary=foo )A 94 101 :M -.238(--foo )A 94 113 :M -.203(Content-type: text/plain; charset=us-ascii )A 94 137 :M -.231(Hi Mom )A 94 149 :M -.238(--foo )A 94 161 :M -.203(Content-type: text/plain; charset=UNICODE-1-1 )A 94 173 :M -.204(Content-transfer-encoding: base64 )A 94 197 :M -.264(Jjo=)A 94 209 :M -.238(--foo )A 94 221 :M -.203(Content-type: text/plain; charset=us-ascii )A 94 245 :M (!)S 94 257 :M -.227(--foo-- )A 58 280 :M f0_12 sf -.006(Theoretically, this removes the need for UTF-7 in message bodies \(multipart may not be)A 58 292 :M -.005(used in header fields\). However, we feel that as use of the Unicode character set becomes)A 58 304 :M -.009(more widespread, intermittent use of specialized Unicode characters \(such as dingbats and)A 58 316 :M -.01(mathematical symbols\) will occur, and that text will also typically include small snippets)A 58 328 :M -.006(from other scripts, such as Cyrillic, Greek, or East Asian languages \(anything in the Roman)A 58 340 :M -.006(script is already handled adequately by existing MIME character sets\). Although the)A 58 352 :M -.001(multipart technique works well for large chunks of text in alternating character sets, we feel)A 58 364 :M -.01(it does not adequately support the kinds of uses just discussed, and so we still believe the)A 58 376 :M -.018(introduction of UTF-7 is justified.)A 41 407 :M f1_14 sf -.016(Summary)A 58 435 :M f0_12 sf -.002(The UTF-7 encoding allows Unicode characters to be encoded within the US-ASCII 7 bit)A 58 447 :M -.005(character set. It is most effective for Unicode sequences which contain relatively long strings)A 58 459 :M -.009(of US-ASCII characters interspersed with either single Unicode characters or strings of)A 58 471 :M -.002(Unicode characters, as it allows the US-ASCII portions to be read on systems without direct)A 58 483 :M -.043(Unicode support.)A 58 511 :M -.006(UTF-7 should only be used with 7 bit transports such as mail and news. In other contexts,)A 58 523 :M -.005(use of straight Unicode or UTF-8 is preferred.)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 467 684 :M -.063([Page )A 497 684 :M (9)S 503 684 :M (])S endp %%Page: 10 10 %%BeginPageSetup initializepage (David Goldsmith; page: 10 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 41 79 :M f1_14 sf -.057(Acknowledgements)A 58 107 :M f0_12 sf -.01(Many thanks to the following people for their contributions, comments, and suggestions. If)A 58 119 :M -.008(we have omitted anyone it was through oversight and not intentionally.)A 94 147 :M -.031(Glenn Adams)A 94 159 :M -.032(Harald T. Alvestrand)A 94 171 :M -.033(Nathaniel Borenstein)A 94 183 :M -.066(Lee Collins)A 94 195 :M (Jim Conklin)S 94 207 :M -.087(Dave Crocker)A 94 219 :M -.058(Steve Dorner)A 94 231 :M -.081(Dana S. Emery)A 94 243 :M -.038(Ned Freed)A 94 255 :M -.023(Kari E. Hurtta)A 94 267 :M -.023(John H. Jenkins)A 94 279 :M -.071(John C. Klensin)A 94 291 :M -.021(Valdis Kletnieks)A 94 303 :M -.064(Keith Moore)A 94 315 :M -.025(Masataka Ohta)A 94 327 :M -.044(Einar Stefferud)A 94 339 :M -.016(Erik M. van der Poel)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 461 684 :M -.063([Page )A 491 684 :M (10)S 503 684 :M (])S endp %%Page: 11 11 %%BeginPageSetup initializepage (David Goldsmith; page: 11 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 41 79 :M f1_14 sf -.028(Appendix A -- Examples)A 58 107 :M f0_12 sf -.01(Here is a longer example, taken from a document originally in Big5 code. It has been)A 58 119 :M -.005(condensed for brevity. There are two versions: the first uses optional characters from set O)A 58 131 :M -.011(\(and thus may not pass through some mail gateways\), and the second uses no optional)A 58 143 :M -.062(characters.)A 58 171 :M f3_10 sf (Content-type: text/plain; charset=unicode-1-1-utf-7 )S 58 195 :M (Below is the full Chinese text of the Analects \(+itaKng-\).)S 58 219 :M (The sources for the text are:)S 58 243 :M ("The sayings of Confucius," James R. Ware, trans. +U/BTFw-: )S 58 255 :M (+ZYeB9FH6ckh5Pg-, 1980. \(Chinese text with English translation\))S 58 279 :M (+Vttm+E6UfZM-, +W4tRQ066bOg-, +UxdOrA-: +Ti1XC2b4Xpc-, 1990.)S 58 303 :M ("The Chinese Classics with a Translation, Critical and )S 58 315 :M (Exegetical Notes, Prolegomena, and Copius Indexes," James )S 58 327 :M (Legge, trans., Taipei: Southern Materials Center Publishing, )S 58 339 :M (Inc., 1991. \(Chinese text with English translation\))S 58 363 :M (Big Five and GB versions of the text are being made available )S 58 375 :M (separately. )S 58 399 :M (Neither the Big Five nor GB contain all the characters used in )S 58 411 :M (this text. Missing characters have been indicated using their )S 58 423 :M (Unicode/ISO 10646 code points. "U+-" followed by four )S 58 435 :M (hexadecimal digits indicates a Unicode/10646 code \(e.g., )S 58 447 :M (U+-9F08\). There is no good solution to the problem of the small )S 58 459 :M (size of the Big Five/GB character sets; this represents the )S 58 471 :M (solution I find personally most satisfactory.)S 58 495 :M (\(omitted...\))S 58 519 :M (I have tried to minimize this problem by using variant )S 58 531 :M (characters where they were available and the character )S 58 543 :M (actually in the text was not. Only variants listed as such in )S 58 555 :M (the +XrdxmVtXUXg- were used.)S 58 579 :M (\(omitted...\))S 58 603 :M (John H. Jenkins)S 58 615 :M (+TpVPXGBG-)S 58 627 :M (John_Jenkins@taligent.com )S 58 639 :M (5 January 1993)S 58 651 :M (\(omitted...\))S 40 40 468 26 rC 41 50 :M f0_12 sf -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 461 684 :M -.063([Page )A 491 684 :M (11)S 503 684 :M (])S endp %%Page: 12 12 %%BeginPageSetup initializepage (David Goldsmith; page: 12 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 58 76 :M f3_10 sf (Content-type: text/plain; charset=unicode-1-1-utf-7 )S 58 100 :M (Below is the full Chinese text of the Analects \(+itaKng-\).)S 58 124 :M (The sources for the text are:)S 58 148 :M (+ACI-The sayings of Confucius,+ACI- James R. Ware, trans. +U/BTFw-: )S 58 160 :M (+ZYeB9FH6ckh5Pg-, 1980. \(Chinese text with English translation\))S 58 184 :M (+Vttm+E6UfZM-, +W4tRQ066bOg-, +UxdOrA-: +Ti1XC2b4Xpc-, 1990.)S 58 208 :M (+ACI-The Chinese Classics with a Translation, Critical and )S 58 220 :M (Exegetical Notes, Prolegomena, and Copius Indexes,+ACI- James )S 58 232 :M (Legge, trans., Taipei: Southern Materials Center Publishing, )S 58 244 :M (Inc., 1991. \(Chinese text with English translation\))S 58 268 :M (Big Five and GB versions of the text are being made available )S 58 280 :M (separately. )S 58 304 :M (Neither the Big Five nor GB contain all the characters used in )S 58 316 :M (this text. Missing characters have been indicated using their )S 58 328 :M (Unicode/ISO 10646 code points. +ACI-U+-+ACI- followed by four )S 58 340 :M (hexadecimal digits indicates a Unicode/10646 code \(e.g., )S 58 352 :M (U+-9F08\). There is no good solution to the problem of the small )S 58 364 :M (size of the Big Five/GB character sets+ADs- this represents the )S 58 376 :M (solution I find personally most satisfactory.)S 58 400 :M (\(omitted...\))S 58 424 :M (I have tried to minimize this problem by using variant )S 58 436 :M (characters where they were available and the character )S 58 448 :M (actually in the text was not. Only variants listed as such in )S 58 460 :M (the +XrdxmVtXUXg- were used.)S 58 484 :M (\(omitted...\))S 58 508 :M (John H. Jenkins)S 58 520 :M (+TpVPXGBG-)S 58 532 :M (John+AF8-Jenkins+AEA-taligent.com )S 58 544 :M (5 January 1993)S 58 556 :M (\(omitted...\))S 40 40 468 26 rC 41 50 :M f0_12 sf -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 461 684 :M -.063([Page )A 491 684 :M (12)S 503 684 :M (])S endp %%Page: 13 13 %%BeginPageSetup initializepage (David Goldsmith; page: 13 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 41 79 :M f1_14 sf -.021(Security Considerations)A 58 110 :M f0_12 sf -.006(Security issues are not discussed in this memo.)A 41 141 :M f1_14 sf -.031(References)A 41 169 :M f0_12 sf -.081([UNICODE 1.1])A 144 169 :M -.013(\322The Unicode Standard, Version 1.1\323: Version 1.0, Volume 1 \(ISBN 0-)A 144 181 :M -.004(201-56788-1\), Version 1.0, Volume 2 \(ISBN 0-201-60845-6\), and)A 144 193 :M -.003(\322Unicode Technical Report #4, The Unicode Standard, Version 1.1\323)A 144 205 :M -.014(\(available from The Unicode Consortium, and soon to be published by)A 144 217 :M -.042(Addison-Wesley\).)A 41 245 :M -.031([ISO 10646])A 144 245 :M -.003(ISO/IEC 10646-1:1993\(E\) Information Technology--Universal Multiple-)A 144 257 :M -.03(octet Coded Character Set \(UCS\).)A 41 285 :M -.074([MIME/UNICODE])A 144 285 :M -.015(Goldsmith, D., and M. Davis, \322Using Unicode with MIME\323, RFC 1641,)A 144 297 :M -.012(Taligent, Inc., July 1994.)A 41 325 :M -.071([US-ASCII])A 144 325 :M -.008(Coded Character Set--7-bit American Standard Code for Information)A 144 337 :M -.01(Interchange, ANSI X3.4-1986.)A 41 365 :M -.034([ISO-8859])A 144 365 :M -.012(Information Processing -- 8-bit Single-Byte Coded Graphic Character Sets)A 144 377 :M -.012(-- Part 1: Latin Alphabet No. 1, ISO 8859-1:1987. Part 2: Latin alphabet)A 144 389 :M -.008(No. 2, ISO 8859-2, 1987. Part 3: Latin alphabet No. 3, ISO 8859-3, 1988.)A 144 401 :M -.008(Part 4: Latin alphabet No. 4, ISO 8859-4, 1988. Part 5: Latin/Cyrillic)A 144 413 :M -.013(alphabet, ISO 8859-5, 1988. Part 6: Latin/Arabic alphabet, ISO 8859-6,)A 144 425 :M -.004(1987. Part 7: Latin/Greek alphabet, ISO 8859-7, 1987. Part 8:)A 144 437 :M -.013(Latin/Hebrew alphabet, ISO 8859-8, 1988. Part 9: Latin alphabet No. 5,)A 144 449 :M -.02(ISO 8859-9, 1990.)A 41 477 :M -.095([RFC822])A 144 477 :M -.012(Crocker, D., \322Standard for the Format of ARPA Internet Text Messages\323,)A 144 489 :M -.029(STD 11, RFC 822, UDEL, August 1982.)A 41 517 :M -.073([RFC-1521])A 144 517 :M -.009(Borenstein N., and N. Freed, \322MIME \(Multipurpose Internet Mail)A 144 529 :M -.008(Extensions\) Part One: Mechanisms for Specifying and Describing the)A 144 541 :M -.014(Format of Internet Message Bodies\323, RFC 1521, Bellcore, Innosoft,)A 144 553 :M -.022(September 1993.)A 41 581 :M -.073([RFC-1522])A 144 581 :M -.008(Moore, K., \322Representation of Non-Ascii Text in Internet Message)A 144 593 :M -.004(Headers\323 RFC 1522, University of Tennessee, September 1993.)A 41 621 :M -.107([UTF-8])A 144 621 :M -.009(X/Open Company Ltd., \322File System Safe UCS Transformation Format)A 144 633 :M -.009(\(FSS_UTF\)\323, X/Open Preliminary Specification, Document Number:)A 144 645 :M -.013(P316. This information also appears in Unicode Technical Report #4, and)A 144 657 :M -.024(in a forthcoming annex to ISO/IEC 10646.)A 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 461 684 :M -.063([Page )A 491 684 :M (13)S 503 684 :M (])S endp %%Page: 14 14 %%BeginPageSetup initializepage (David Goldsmith; page: 14 of 14)setjob %%EndPageSetup gS 0 0 552 730 rC 40 40 468 648 rC 41 79 :M f1_14 sf -.047(Authors\325 Addresses)A 58 107 :M f0_12 sf -.071(David Goldsmith)A 58 119 :M -.023(Taligent, Inc.)A 58 131 :M -.015(10201 N. DeAnza Blvd.)A 58 143 :M -.028(Cupertino, CA 95014-2233)A 58 167 :M -.018(Phone: 408-777-5225)A 58 179 :M -.02(Fax: 408-777-5081)A 58 191 :M -.02(EMail: david_goldsmith@taligent.com)A 58 227 :M -.108(Mark Davis)A 58 239 :M -.023(Taligent, Inc.)A 58 251 :M -.015(10201 N. DeAnza Blvd.)A 58 263 :M -.028(Cupertino, CA 95014-2233)A 58 287 :M -.018(Phone: 408-777-5116)A 58 299 :M -.02(Fax: 408-777-5081)A 58 311 :M (EMail: mark_davis@taligent.com)S 40 40 468 26 rC 41 50 :M -.097(RFC 1642)A 258 50 :M -.164(UTF-7)A 460 50 :M (July 1994)S gR gS 40 662 468 26 rC 41 684 :M f0_12 sf -.062(Goldsmith & Davis)A 461 684 :M -.063([Page )A 491 684 :M (14)S 503 684 :M (])S endp %%Trailer end % md %%EOF
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4