#?SuikaWiki/0.9 [[#comment]] * 仕様書から **RFC 1945 (HTTP/1.0) 3.6; RFC 2068・2616 (HTTP/1.1) Media Types > HTTP uses Internet Media Types [DEL[[INS[{1945}]] [13] ]] [INS[[INS[{2616}]] [17] ]] in the Content-Type [DEL[[INS[{1945}]] header field]] ([DEL[[INS[{1945}]] Section 10.5]] [INS[section [DEL[[INS[{2068}]] 14.18]] [INS[[INS[{2616}]] 14.17]]]]) [INS[[INS[{2068,2616}]] and Accept (section 14.1) header fields]] in order to provide open and extensible data typing [INS[[INS[{2068,2616}]] and type negotiation]]. [5] [[HTTP]] は Internet [[媒体型]]を Content-Type 頭欄と Accept 頭欄において開放的で拡張可能なデータ型指定及びデータ型折衝のために使用します。 > -media-type = type "/" subtype *( ";" parameter ) -type = token -subtype = token > Parameters [DEL[may]] [INS[[INS[{2616}]] MAY]] follow the type/subtype in the form of attribute/value pairs [INS[[INS[{2616}]] (as defined in section 3.6)]]. [9] 引数が型/亜型の後に属性/値の組の形で続いても'''構いません'''。 [DEL[ >[INS[{1925,2068}]] -parameter = attribute "=" value -attribute = token -value = token | quoted-string ]DEL] > The type, subtype, and parameter attribute names are case-insensitive. Parameter values [DEL[may]] [INS[[INS[{2616}]] might]] or [DEL[may]] [INS[might]] not be case-sensitive, depending on the semantics of the parameter name. [DEL[[INS[{1945}]] LWS must not be generated]] [INS[Linear white space (LWS) MUST NOT be used]] between the type and subtype, nor between an attribute and its value. [DEL[[DEL[[INS[{1945}]] Upon receipt of a media type with an unrecognized parameter, a user agent should treat the media type as if the unrecognized parameter and its value were not present.]] [INS[[INS[{2068}]] User agents that recognize the media-type MUST process (or arrange to be processed by any external applications used to process that type/subtype by the user agent) the parameters for that MIME type as described by that type/subtype definition to the and inform the user of any problems discovered.]]]] [INS[[INS[{2616}]] The presence or absence of a parameter might be significant to the processing of a media-type, depending on its definition within the media type registry.]] [10] 型, 亜型, 引数属性名は大文字と小文字を区別しません。 引数値は、引数名の意味によって、区別するかもしれませんし区別しないかもしれません。 型及び亜型の間ならびに属性及びその値の間には線形空白 ([[LWS]]) を入れては'''なりません'''。[DEL[[DEL[認識できない引数のある媒体型を受信した際は、その認識できない引数と値は現れていないものとして取扱うべきです。]] [INS[ある [CODE(ABNF)[media-type]] を認識する[[利用者エージェント]]は、その MIME 型の引数を型・亜型定義で記述されているように処理 (あるいは利用者エージェントが型・亜型を処理するのに使う外部応用に処理させるように調整) し、問題が見つかれば利用者に知らせなければ'''なりません'''。]]]] [INS[引数の有無は、媒体型登録簿中の定義によっては、媒体型の処理に意味を持つかもしれません。]] > [INS[Note[DEL[:]] [INS[that]] some]] [DEL[[INS[{1945}]] Some]] older HTTP applications do not recognize media type parameters. [INS[When sending data to older HTTP applications, implementations]] [DEL[[INS[{1945}]] HTTP/1.0 applications]] [DEL[[INS[{1945,2068}]] should]] [INS[SHOULD]] only use media type parameters when they are [DEL[[INS[{1945}]] necessary to define the content of a message]] [INS[required by that type/subtype definition]]. [11] 古い HTTP 応用には媒体型引数を認識しないものがあることに注意してください。 古い HTTP 応用にデータを送るときには、型・亜型定義が必須としている媒体型引数だけを使う'''べきです'''。 > Media-type values are registered with the Internet Assigned Number Authority (IANA [DEL[[INS[{1945}]] [15] ]] [INS[[INS[{2616}]] [19] ]]). The media type registration process is outlined in RFC [DEL[[DEL[[DEL[1590 [13] [INS[{1945}]]]] [INS[2048 [17] [INS[{2068}]]]]]] [INS[1590 [17] [INS[{2616}]]]]]] [INS[2048 [17] [INS[{Errata}]]]]. Use of non-registered media types is discouraged. [12] 媒体型値は Internet 割当番号事務局 (IANA) で登録されます。媒体型登録過程は RFC 1590 にまとめられています。未登録の媒体型の使用は非推奨です。 *** 3.6.1; 3.6.7 Canonicalization and Text Defaults →[CODE(WikiPage)[[[text/*//正規化]]]] ***3.6.2; 3.7.2 Multipart Types →[CODE(WikiPage)[[[multipart/*]]]] **RFC 1945 (HTTP/1.0); RFC 2068・2616 (HTTP/1.1) 7.2.1 Type > When an [DEL[Entity-Body]] [INS[entity-body]] is included with a message, the data type of that body is determined via the header fields Content-Type and Content-Encoding. These define a two-layer, ordered encoding model: メッセージに [CODE(ABNF)[[[entity-body]]]] が含まれているときには、 その[[本体]]のデータ型は頭欄 [CODE(HTTP)[[[Content-Type]]]] および [CODE(HTTP)[[[Content-Encoding]]]] により決定します。 この2つの頭欄は2層順序付き符号化模型を定義します。 > -entity-body := Content-Encoding( Content-Type( data ) ) > [DEL[A]] Content-Type specifies the media type of the underlying data. [DEL[A]] Content-Encoding may be used to indicate any additional content coding[INS[s]] applied to the [DEL[type]] [INS[data]], usually for the purpose of data compression, that [DEL[is]] [INS[are]] a property of the [DEL[resource requested]] [INS[requested resource]]. [DEL[The default for the content encoding is none (i.e., the identity function).]] [INS[There is no default encoding.]] [CODE(HTTP)[Content-Type]] はそのデータの[[媒体型]]を規定します。 [CODE(HTTP)[Content-Encoding]] は、そのデータに適用されている、 要求された[[資源]]の特性である追加の[[内容符号化]] (通常はデータ圧縮目的。) を示すのに使うことができます。 既定の符号化はありません。 > Any [DEL[HTTP/1.0]] [INS[HTTP/1.1]] message containing an entity[INS[-]]body [DEL[should]] [INS[SHOULD]] include a Content-Type header field defining the media type of that body. If and only if the media type is not given by a Content-Type [DEL[header, as is the case for Simple-Response messages]] [INS[field]], the recipient [DEL[may]] [INS[MAY]] attempt to guess the media type via inspection of its content and/or the name extension(s) of the [DEL[[INS[{1945,2068}]] URL]] [INS[[INS[{2616}]] URI]] used to identify the resource. If the media type remains unknown, the recipient [DEL[should]] [INS[SHOULD]] treat it as type "application/octet-stream". [CODE(ABNF)[[[entity-body]]] を含んだ HTTP メッセージは、 その本体の媒体型を定義する [CODE(HTTP)[Content-Type]] 頭欄を含める'''べきです'''。 媒体型が [CODE(HTTP)[Content-Type]] 頭欄で与えられていない場合[DEL[と [CODE(ABNF)[Simple-Response]] メッセージの場合]]は、 この場合に限って、受信者は内容[[及び/又は]]資源を識別するのに使う [[URI]] の名前[[拡張子]]をを調べて媒体型を推測しても'''構いません'''。 媒体型がそれでも分からない時は、受信者はその媒体を型 [CODE(MIME)[[[application/octet-stream]]]] として扱う'''べきです'''。 [INS[ 注: 注記なき変更点は 1945→2068 のもの。 ]INS] ** RFC の部分の License [[RFCのライセンス]] * メモ