X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=mime-ja.sgml;h=fe6794bd7d61c7c0975d71688cec8de53ffc0235;hb=b6acbb30ee966666cc07e18a023614003b828c6c;hp=8a42d705c48f43c296ac8ba4f0a05f2fe5ea2127;hpb=832fa9663196121adab1f7261bd682cbc626d719;p=elisp%2Fflim.git diff --git a/mime-ja.sgml b/mime-ja.sgml index 8a42d70..fe6794b 100644 --- a/mime-ja.sgml +++ b/mime-ja.sgml @@ -1,6 +1,6 @@ -FLIM 1.8 MIME $B5!G=@bL@=q(B +<title>FLIM 1.10 MIME $B5!G=@bL@=q(B <author>$B<i2,(B $BCNI'(B <mail>morioka@jaist.ac.jp</mail> <date>1998/07/01 @@ -47,15 +47,58 @@ field $B$HFbMF$r;X$9!W$H$J$C$F$$$^$9!#$3$3$G$O!"(BMIME $B$GDj5A$5$l$?(B head field $B0J30$NA4$F$N(B header $B$H(B body $B$r;X$98l$H$7$F(B <concept>entity</concept>$B$rMQ$$$k$3$H$K$7$^$9!#(B <p> -RFC 2045 $B$NDj5A$O!"(BMIME message $B$,(B entity $B$rC10L$H$9$kLZ9=B$$G$"$k$3$H$r(B -$B<($7$F$$$^$9!#(Bmessage $B$O2<?^$G<($9$h$&$JLZ$H$J$j!"(Bentity $B$O$3$NLZ$K$*$1(B -$B$k@a$H$J$j$^$9!#$D$^$j!"(BMIME $B$O(B message $B$rLZ9=B$$K3HD%$7$?Lu$G$9!#(B +RFC 2045 $B$NDj5A$O!"(BMIME message $B$,(B entity $B$r@a$H$9$kLZ9=B$$G$"$k$3$H$r(B +$B<($7$F$$$^$9!#$D$^$j!"(BMIME $B$O(B message $B$rLZ9=B$$K3HD%$7$?Lu$G$9!#(B <p> FLIM $B$O(B entity $B$N>pJs$rI=8=$9$k$?$a$K(B<concept>mime-entity</concept> $B9=(B $BB$BN$rMQ$$$^$9!#0J2<$G$OC1$K(B mime-entity $B$H8F$V$3$H$K$7$^$9!#(B + + +<h2> Entity $B$N@8@.(B +<node> Entity creation +<p> +<defun name="mime-open-entity"> + <opts> type location +<p> +Open an entity and return it. +<p> +<var>type</var> is representation-type. <cf node="mm-backend"> +<p> +<var>location</var> is location of entity. Specification of it is +depended on representation-type. +</defun> + +<defun name="mime-parse-buffer"> + <opts> buffer type +<p> +<var>buffer</var> $B$r(B message $B$H$7$F9=J82r@O$7!"$=$N7k2L$N(B mime-entity +$B$r(B <var>buffer</var> $B$N(B<code>mime-message-structure</code> $B$K3JG<$9$k!#(B +<p> +<var>buffer</var> $B$,>JN,$5$l$?>l9g!"8=:_$N(B buffer $B$r9=J82r@O$9$k!#(B +<p> +<var>type</var> $B$,;XDj$5$l$?>l9g!"$=$NCM$r@8@.$5$l$k(B mime-entity $B$NI=(B +$B>]7?$H$7$FMQ$$$k!#>JN,$5$l$?>l9g$O(B <var>buffer</var> $B$H$J$k!#(B<cf +node="mm-backend"> +</defun> + + +<h2> Entity $B3,AX(B +<node> Entity hierarchy +<p> +MIME message $B$O(B entity $B$rC10L$H$9$kLZ9=B$$K$J$C$F$$$^$9!#(B +<p> +$B$3$NLZ$K$*$$$F:,$H$J$k@a$O(B message $BA4BN$rI=$9(B entity $B$G$9!#$3$3$G$O!"(B +$B$3$l$r(B <concept>root-entity</concept> $B$b$7$/$O(B +<concept>message</concept> $B$H8F$S$^$9!#(B <p> -$BA0=R$N$h$&$K!"(Bmessage $BCf$N3F(B entity $B$OLZ$N@a$KEv$?$j$^$9$,!"$3$NLZ$K$O(B -$B?<$5$HF1$8?<$5$NCf$N=gHV$K=>$C$FHV9f$,IU$1$k$3$H$,$G$-$^$9!#B($A!"(B +root-entity $B0J30$N(B entity $B$O?F$r;}$A$^$9!#$^$?!"(Bentity $B$O;R6!$r;}$D$+(B +$B$bCN$l$^$;$s!#$3$N?F;R4X78$r9M$($k$3$H$G(B entity $B$NAjBP4X78$r07$&$3$H$,(B +$B$G$-$^$9!#(B +<p> +$B0lJ}!"(Bentity $B$N(B message $B$K$*$1$k0LCV$r9M$($k$3$H$b$G$-$^$9!#(B +<p> +entity $B$O$3$NLZ$K$*$1$k@a$H$J$j$^$9$,!"$3$NLZ$K$O?<$5$HF1$8?<$5$NCf$N(B +$B=gHV$K=>$C$FHV9f$,IU$1$k$3$H$,$G$-$^$9!#B($A!"(B <verb> $B(#(!(!(!($(B @@ -83,45 +126,10 @@ node-id $B$O$A$g$&$I(B entity-number $B$r5U$K$7$?%j%9%H$G!"(Bentity-number $BA0=R$N$h$&$K!"(BMIME message $B$O(B entity $B$rC10L$H$7$?LZ9=B$$K$J$C$F$$$k$N$G!"(B $B$3$N:,$G$"$k(B message $BA4BN$b(B mime-entity $B$GI=8=$9$k$3$H$,$G$-!"(Bbuffer local $BJQ?t(B <code>mime-message-structure</code> $B$K3JG<$9$k$3$H$K$7$^$9!#(B -$B$=$7$F!"(Bentity-number $B$d(B node-id $B$rMQ$$$k$3$H$G(B -<code>mime-message-structure</code> $B$K$*$1$k(B entity $B$NAjBPE*$J0LCV4X78$r(B -$B07$&$3$H$,$G$-$^$9!#(B - - -<h2> Entity $B$N@8@.(B -<node> Entity creation -<p> -<defun name="mime-open-entity"> - <opts> type location -<p> -Open an entity and return it. -<p> -<var>type</var> is representation-type. <cf node="mm-backend"> -<p> -<var>location</var> is location of entity. Specification of it is -depended on representation-type. -</defun> - -<defun name="mime-parse-message"> - <opts> default-ctl node-id <p> -$B8=:_$N(B buffer $B$r(B message $B$H$7$F9=J82r@O$7!"$=$N7k2L$N(B mime-entity $B$rJV(B -$B$9!#(B -</defun> - -<defun name="mime-parse-buffer"> - <opts> buffer -<p> -<var>buffer</var> $B$r(B message $B$H$7$F9=J82r@O$7!"$=$N7k2L$N(B mime-entity -$B$r(B <var>buffer</var> $B$N(B<code>mime-message-structure</code> $B$K3JG<$9$k!#(B -<p> -<var>buffer</var> $B$,>JN,$5$l$?>l9g!"8=:_$N(B buffer $B$r9=J82r@O$9$k!#(B -</defun> - +<code>mime-message-structure</code> $B$r5/E@$K(B entity-number $B$d(B node-id +$B$G<($5$l$k(B entity $B$r<h$j=P$9$3$H$,$G$-$^$9!#(B -<h2> Entity $B3,AX(B -<node> Entity hierarchy -<p> <defvar name="mime-message-structure"> <p> $B8=:_$N(B buffer $B$K$*$1$k(B message $BA4BN$N(B mime-entity $B9=B$BN$r3JG<$9$k(B @@ -200,14 +208,18 @@ node="mime-content-disposition"> <defun name="mime-entity-filename"> <args> entity <p> -Entity $B$N(B file $BL>$rJV$9!#(B +<var>entity</var> $B$N(B file $BL>$rJV$9!#(B </defun> <defun name="mime-entity-encoding"> - <args> entity + <args> entity <opts> default-encoding <p> <var>entity</var> $B$N(B content-transfer-encoding $B$rJV$9!#(B<cf node="Content-Transfer-Encoding"> +<p> +$B$b$7!"(B<var>entity</var> $B$K(B Content-Transfer-Encoding $BMs$,B8:_$7$J$$>l(B +$B9g$O!"(B<var>default-encoding</var> $B$rJV$9!#$3$l$,;XDj$5$l$J$$>l9g$O!"(B +<code>"7bit"</code> $B$rMQ$$$k!#(B </defun> <defun name="mime-entity-cooked-p"> @@ -231,7 +243,7 @@ code-converted. <var>entity</var> $B$,>JN,$5$l$?>l9g$O!"(B <code>mime-message-structure</code> $B$NCM$rMQ$$$k!#(B <p> -<var>field-name</var> $BMs$,B8:_$7$J$$>l9g$O(B nil $B$rJV$9!#(B +<var>field-name</var> $BMs$,B8:_$7$J$$>l9g$O(B <code>nil</code> $B$rJV$9!#(B </defun> <defun name="mime-read-field"> @@ -251,7 +263,11 @@ code-converted. <var>field-name</var> $BMs$,B8:_$7$J$$>l9g$O(B nil $B$rJV$9!#(B </defun> -<defun name="mime-insert-decoded-header"> + +<h2> Entity $B$NJ8;zI=8=(B +<node> entity formatting +<p> +<defun name="mime-insert-header"> <args> entity <opts> invisible-fields visible-fields <p> $B8=:_0LCV$K(B <var>entity</var> $B$NI|9f$7$?(B header $B$rA^F~$9$k!#(B @@ -261,9 +277,32 @@ list $B$G!"$=$l$>$l!"I=<($7$?$/$J$$(B field $BL>$HI=<($7$?$$MsL>$rI=8=$7$?$b$ $B$G$"$k!#(B <p> <var>invisible-fields</var> $B$NMWAG$N$I$l$+$K(B match $B$7!"$+$D!"(B -<var>visible-fields</var> $B$NMWAG$N$I$l$K$b(B match $B$7$J$$Ms$OI=<($5$l$J$$!#(B +<var>visible-fields</var> $B$NMWAG$N$I$l$K$b(B match $B$7$J$$Ms$OI=<($5$l$J(B +$B$$!#(B +<p> +<dref>encoded-word</dref> $B$OI|9f$5$l$k!#!X@8$NHs(B us-ascii $BJ8;z!Y$O(B +<code>default-mime-charset</code> $B$H$7$F2r<a$5$l$k!#(B +</defun> + +<defun name="mime-insert-text-content"> + <args> entity +<p> +Insert before point a contents of <var>entity</var> as text entity. +<p> +Contents of the <var>entity</var> are decoded as <dref>MIME +charset</dref>. If the <var>entity</var> does not have charset +parameter of Content-Type field, <code>default-mime-charset</code> is +used as default value. </defun> +<defvar name="default-mime-charset"> +<p> +$BE,@Z$J(B <dref>MIME charset</dref> $B$,8+$D$+$i$J$+$C$?>l9g$KMQ$$$i$l$k(B +MIME charset. +<p> +$BK\Mh$O(B APEL $B$NJQ?t$G$"$k!#(B +</defvar> + <h2> Entity $B$NFbMF(B <node> Entity-content @@ -384,9 +423,39 @@ representation-type $B$NL>A0$N@hF,$K(B <code>mm</code> $B$rIU$1$?$b$N$K$J$C$F <h3> mm-backend $B$N:n$jJ}(B <node> mm-backend module <p> -$B!J$9$_$^$;$s!#$=$N$&$A=q$-$^$9(B (^_^;$B!K(B +<defmacro name="mm-define-backend"> +<args> type +<opts> parents +<p> +Define <var>type</var> as a mm-backend. +<p> +If <var>PARENTS</var> is specified, <var>type</var> inherits parents. +Each parent must be representation-type. +<p> +Example: <p> -$B!J$H$j$"$($:!"(Bmm*.el $B$r;29M$K$7$F$/$@$5$$!K(B +<lisp> +(mm-define-backend chao (generic)) +</lisp> +</defmacro> + +<defmacro name="mm-define-method"> +<args> name args <rest> body +<p> +Define <var>name</var> as a method function of (nth 1 (car +<var>args</var>)) backend. +<p> +<var>args</var> is like an argument list of lambda, but (car +<var>args</var>) must be specialized parameter. (car (car +<var>args</var>)) is name of variable and (nth 1 (car +<var>args</var>)) is name of backend (representation-type). +<p> +Example: +<p> +<lisp> +(mm-define-method entity-cooked-p ((entity chao)) nil) +</lisp> +</defmacro> <h1> Content-Type $BMs$N>pJs(B @@ -620,8 +689,8 @@ Content-Transfer-Encoding $BMs$,B8:_$7$J$$>l9g$O(B </defun> -<h2> $BNN0h$NId9f2=!&I|9f2=(B -<node> Region encoder/decoder +<h2> $BId9f2=!&I|9f2=(B +<node> encoder/decoder <p> <defun name="mime-encode-region"> <args> start end encoding @@ -637,49 +706,14 @@ Decode region <var>start</var> to <var>end</var> of current buffer using <var>encoding</var>. </defun> -<defvar name="mime-encoding-method-alist"> -<p> -Alist of encoding vs. corresponding method to encode region. -<p> -Each element looks like <code>(STRING . FUNCTION)</code> or -<code>(STRING . nil)</code>. <var>string</var> is -content-transfer-encoding. <code>function</code> is region encoder -and <code>nil</code> means not to encode. -</defvar> -<defvar name="mime-decoding-method-alist"> -<p> -Alist of encoding vs. corresponding method to decode region. -<p> -Each element looks like <code>(STRING . FUNCTION)</code> or -<code>(STRING . nil)</code>. <var>string</var> is -content-transfer-encoding. <code>function</code> is region decoder -and <code>nil</code> means not to decode. -</defvar> - - -<h2> $BJ8;zNs$NId9f2=!&I|9f2=(B -<node> String encoder/decoder -<p> <defun name="mime-decode-string"> - <args> string encoding + <args> string encoding <p> -<var>string</var> $B$r(B <var>encoding</var> $B$H$7$FI|9f$7$?7k2L$rJV$7$^$9!#(B +<var>string</var> $B$r(B <var>encoding</var> $B$H$7$FI|9f$7$?7k2L$rJV$9!#(B </defun> -<defvar name="mime-string-decoding-method-alist"> -<p> -Alist of encoding vs. corresponding method to decode string. -<p> -Each element looks like <code>(STRING . FUNCTION)</code>. -STRING is content-transfer-encoding. -FUNCTION is string decoder. -</defvar> - -<h2> File $B$NId9f2=!&I|9f2=(B -<node> File encoder/decoder -<p> <defun name="mime-insert-encoded-file"> <args> filename encoding <p> @@ -695,24 +729,102 @@ Decode and write current region encoded by <var>encoding</var> into <var>start</var> and <var>end</var> are buffer positions. </defun> -<defvar name="mime-file-encoding-method-alist"> + +<h2> Other utilities +<node> Encoding information +<p> +<defun name="mime-encoding-list"> + <opts> SERVICE +<p> +Return list of Content-Transfer-Encoding. +<p> +If <var>service</var> is specified, it returns available list of +Content-Transfer-Encoding for it. +</defun> + +<defun name="mime-encoding-alist"> + <opts> SERVICE <p> -Alist of encoding vs. corresponding method to insert encoded file. +Return table of Content-Transfer-Encoding for completion. <p> -Each element looks like <code>(STRING . FUNCTION)</code>. STRING is -content-transfer-encoding. FUNCTION is function to insert encoded -file. -</defvar> +If <var>service</var> is specified, it returns available list of +Content-Transfer-Encoding for it. +</defun> + -<defvar name="mime-file-decoding-method-alist"> +<h2> How to write encoder/decoder module +<node> mel-backend <p> -Alist of encoding vs. corresponding method to write decoded region to -file. +<defmacro name="mel-define-method"> +<args> name args <rest> body <p> -Each element looks like <code>(STRING . FUNCTION)</code>. STRING is -content-transfer-encoding. FUNCTION is function to write decoded -region to file. -</defvar> +Define <var>name</var> as a method function of (nth 1 (car (last +<var>args</var>))) backend. +<p> +<var>args</var> is like an argument list of lambda, but (car (last +<var>args</var>)) must be specialized parameter. (car (car (last +<var>args</var>))) is name of variable and (nth 1 (car (last +<var>args</var>))) is name of backend (encoding). +<p> +Example: +<p> +<lisp> +(mel-define-method mime-write-decoded-region (start end filename + (nil "base64")) + "Decode and write current region encoded by base64 into FILENAME. +START and END are buffer positions." + (interactive + (list (region-beginning) (region-end) + (read-file-name "Write decoded region to file: "))) + (let ((str (buffer-substring start end))) + (with-temp-buffer + (insert (decode-base64-string str)) + (write-region-as-binary (point-min) (point-max) filename) + ))) +</lisp> +</defmacro> + +<defmacro name="mel-define-method-function"> +<args> spec function +<p> +Set <var>spec</var>'s function definition to <var>function</var>. +<p> +First element of <var>spec</var> is service. +<p> +Rest of <var>args</var> is like an argument list of lambda, but (car +(last <var>args</var>)) must be specialized parameter. (car (car +(last <var>args</var>))) is name of variable and (nth 1 (car (last +<var>args</var>))) is name of backend (encoding). +<p> +Example: +<p> +<lisp> +(mel-define-method-function (mime-encode-string string (nil "base64")) + 'encode-base64-string) +</lisp> +</defmacro> + + +<h2> How to add encoding/decoding service +<node> generic function for mel-backend +<p> +<defmacro name="mel-define-service"> +<args> name +<opts> args doc-string +<p> +Define <var>name</var> as a service for Content-Transfer-Encodings. +<p> +If <var>args</var> is specified, <var>name</var> is defined as a +generic function for the service. +<p> +Example: +<p> +<lisp> +(mel-define-service encoded-text-encode-string (string encoding) + "Encode STRING as encoded-text using ENCODING. +ENCODING must be string.") +</lisp> +</defmacro> <h1> Header $B$N(B network $BI=8=(B @@ -735,28 +847,49 @@ FLIM $B$O$3$l$i$rId9f2=!&I|9f2=$9$k5!G=$rDs6!$7$^$9!#(B <h2> Header $B$NId9f2=!&I|9f2=(B <node> Header encoder/decoder <p> -<defun name="eword-encode-header"> - <opts> code-conversion separator +<defun name="eword-decode-header"> + <opts> code-conversion separator <p> -Decode MIME encoded-words in header fields. +Header $BCf$N(B encoded-word $B$rI|9f$9$k!#(B <p> -If <var>code-conversion</var> is <code>nil</code>, it decodes only -encoded-words. If it is mime-charset, it decodes non-ASCII bit -patterns as the mime-charset. Otherwise it decodes non-ASCII bit -patterns as the default-mime-charset. +$B$b$7(B <var>code-conversion</var> $B$,(B <code>nil</code> $B$J$i!"(Bencoded-word +$B$@$1$,I|9f$5$l$k!#$b$7!"(B<var>code-conversion</var> $B$,(B <dref>MIME +charset</dref> $B$J$i!"Hs(B ASCII bit patterns $B$O$=$N(B MIME charset $B$H$7$F(B +$BI|9f$5$l$k!#$3$l0J30$N>l9g!"Hs(B ASCII bit patterns $B$O(B +<code>default-mime-charset</code>. $B$H$7$FI|9f$5$l$k!#(B<cf node="entity +formatting"> <p> -If <var>separator</var> is not nil, it is used as header separator. +$B$b$7(B <var>separator</var> $B$,(B <code>nil</code> $B$G$J$1$l$P!"$=$NCM$,(B +header separator $B$H$7$FMQ$$$i$l$k!#(B </defun> <defun name="eword-encode-header"> - <opts> code-conversion + <opts> code-conversion <p> -Encode header fields to network representation, such as MIME -encoded-word. +Header $B$r(B network $BI=8=$KId9f2=$9$k!#(B <p> -It refer variable <code>eword-field-encoding-method-alist</code>. +$B3F(B field $B$O(B <code>eword-field-encoding-method-alist</code> $B$G;XDj$5$l(B +$B$?J}<0$GId9f2=$5$l$k!#(B </defun> +<defvar name="eword-field-encoding-method-alist"> +<p> +Association list to specify field encoding method. Each element looks +like (FIELD . METHOD). +<p> +If METHOD is <code>mime</code>, the FIELD will be encoded into MIME +format (encoded-word). +<p> +If METHOD is <code>nil</code>, the FIELD will not be encoded. +<p> +If METHOD is a MIME charset, the FIELD will be encoded as the charset +when it must be convert into network-code. +<p> +Otherwise the FIELD will be encoded as variable +<code>default-mime-charset</code> when it must be convert into +network-code. +</defvar> + <h1> $B0lHL@_Dj(B <node> custom @@ -768,14 +901,6 @@ MIME $B4XO"5!G=$K4X$9$k(B group. <code>mail</code> $B$H(B <code>news</code> $B$KB0$9$k!#(B </define> -<defvar name="default-mime-charset"> -<p> -$BE,@Z$J(B <dref>MIME charset</dref> $B$,8+$D$+$i$J$+$C$?>l9g$KMQ$$$i$l$k(B -MIME charset. -<p> -$BK\Mh$O(B APEL $B$NJQ?t$G$"$k!#(B -</defvar> - <defvar name="mime-temp-directory"> <p> MIME $B5!G=$K4X$9$k<BAu$,0l;~E*$K;HMQ$9$k(B file $B$r:n@.$9$k(B directory. @@ -857,21 +982,6 @@ data $B$O(B <a node="binary"><concept>binary</concept></a> $B$H8F$V$3$H$K$9( $B$"$k!#(B -<h3> Base64 -<node> Base64 -<p> -<dref>RFC 2045</dref> $B$GDj5A$5$l$F$$$k(B <dref>MIME</dref> $B$K$*$1$k(B <a -node="binary">binary data</a> $B$N(B network $B$G$NJQ49K!$N#1$D!#(B -<p> -$B!X(B64 $B?J?t!Y$H$$$&0UL#$G!"(B3 byte $B$N(B data $B$r(B 0 $B$+$i(B 63 $B$N?t$rI=$9(B -<dref>ASCII</dref> 4 $BJ8;z$KJQ49$9$kJ}K!!#!J$b$7!"(B4 $BJ8;z$K$J$i$J$1$l$P(B -<concept>pad</concept> $B$H8F$P$l$k5M$aJ*$r$7$FD9$5$rD4@0$9$k!K(B -<p> -$B$3$N(B 65 $B<oN`$NJ8;z$O(B ASCII $B$H(B EBCDIC $B$N6&DLItJ,$+$iA*$P$l$F$*$j!"(B -Internet $B0J30$N(B network $B$r7PM3$9$k>l9g$G$b0BA4$KE>Aw$G$-$k$h$&$K@_7W$5(B -$B$l$F$$$k!#(B - - <h3> ASCII <node> ASCII <p> @@ -884,10 +994,19 @@ A-Z, a-z $B$N(B Latin $BJ8;z$H?t;z!"4v$D$+$N5-9f$+$i$J$k!#(BISO 646 $B$N0l$ number="ANSI X3.4" year="1986"> -<h3> Coded character set$B!JId9f2=J8;z=89g!K(B, Character code$B!JJ8;zId9f!K(B -<node> Coded character set +<h3> Base64 +<node> Base64 <p> -$BJ8;z$H(B byte $BNs$H#1BP#1$KBP1~IU$1$k[#Kf$G$J$$5,B'$N=89g!#(B +<dref>RFC 2045</dref> $B$GDj5A$5$l$F$$$k(B <dref>MIME</dref> $B$K$*$1$k(B <a +node="binary">binary data</a> $B$N(B network $B$G$NJQ49K!$N#1$D!#(B +<p> +$B!X(B64 $B?J?t!Y$H$$$&0UL#$G!"(B3 byte $B$N(B data $B$r(B 0 $B$+$i(B 63 $B$N?t$rI=$9(B +<dref>ASCII</dref> 4 $BJ8;z$KJQ49$9$kJ}K!!#!J$b$7!"(B4 $BJ8;z$K$J$i$J$1$l$P(B +<concept>pad</concept> $B$H8F$P$l$k5M$aJ*$r$7$FD9$5$rD4@0$9$k!K(B +<p> +$B$3$N(B 65 $B<oN`$NJ8;z$O(B ASCII $B$H(B EBCDIC $B$N6&DLItJ,$+$iA*$P$l$F$*$j!"(B +Internet $B0J30$N(B network $B$r7PM3$9$k>l9g$G$b0BA4$KE>Aw$G$-$k$h$&$K@_7W$5(B +$B$l$F$$$k!#(B <h3> binary @@ -905,6 +1024,12 @@ A-Z, a-z $B$N(B Latin $BJ8;z$H?t;z!"4v$D$+$N5-9f$+$i$J$k!#(BISO 646 $B$N0l$ data $B$r;X$9$3$H$,$"$k!#(B +<h3> Coded character set$B!JId9f2=J8;z=89g!K(B, Character code$B!JJ8;zId9f!K(B +<node> Coded character set +<p> +$BJ8;z$H(B byte $BNs$H#1BP#1$KBP1~IU$1$k[#Kf$G$J$$5,B'$N=89g!#(B + + <h3> media-type <node> media-type <p> @@ -912,7 +1037,7 @@ data $B$r;X$9$3$H$,$"$k!#(B <concept>primary-type</concept> $B$H(B <concept>subtype</concept> $B$+$i$J$k!#(B <dref>RFC 2046</dref> $B$GDj5A$5$l$F$$$k!#(B <p> -type $B$OI8=`$G$O(B +primary-type $B$OI8=`$G$O(B <ul> <li><concept>text</concept>