Overview of the relevant Internet Standards

Prescribed usage of MIME media types

MIME is Multipurpose Internet Mail Extensions. MIME is an Internet standard defined by RFCs 2045, 2046, 2047, 2048, and 2077. MIME types are used to permit files with information stored in a wide variety of formats to be interpreted correctly when sent via e-mail and web servers.

A few quotes from section 5 of RFC 2045 are relevant here:

The purpose of the Content-Type field is to describe the data contained in the body fully enough that the receiving user agent can pick an appropriate agent or mechanism to present the data to the user, or otherwise deal with the data in an appropriate manner. The value in this field is called a media type.
The Content-Type header field specifies the nature of the data in the body of an entity by giving media type and subtype identifiers, and by providing auxiliary information that may be required for certain media types. After the media type and subtype names, the remainder of the header field is simply a set of parameters, specified in an attribute=value notation. The ordering of parameters is not significant.
registered subtypes of text, image, audio, and video should not contain embedded information that is really of a different type. Such compound formats should be represented using the "multipart" or "application" types.

MIME media types are registered with the IANA in accordance with a procedure defined in RFC 2048. Of particular relevance for the FITS MIME effort is the stipulation in section 2.1.1 that "top-level" media types (e.g., image/gif, image/jpeg, application/postscript, and other media types which do not have a "." as a namespace separator in the mime subtype) are registered in the IETF tree.

Registration in the IETF tree requires approval by the IESG and publication of the media type registration as some form of RFC.

MIME media types and the WWW

HTTP is the principal protocol of the World Wide Web. HTTP is an Internet standard defined by RFC 2616. HTTP adopted the same MIME media type mechanisms used for e-mail so that web browsers can interpret files sent in a wide variety of formats.

Section 3.7 says

HTTP uses Internet Media Types in the Content-Type and Accept header fields in order to provide open and extensible data typing and type negotiation.
Use of non-registered media types is discouraged.
Section 7.2.1 says
Any HTTP/1.1 message containing an entity-body 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 field, the recipient MAY attempt to guess the media type via inspection of its content and/or the name extension(s) of the URI used to identify the resource.

Section 3.6 says that a web server and web client may engage in a negotiation that permits the file to be compressed (or otherwise modified) during transfer.

Transfer-coding values are used to indicate an encoding transformation that has been, can be, or may need to be applied to an entity-body in order to ensure "safe transport" through the network. This differs from a content coding in that the transfer-coding is a property of the message, not of the original entity.
The initial IANA registry of transfer-coding tokens is defined as chunked, identity, gzip, compress, and deflate. The IANA publishes the current state of the registry. Note carefully that HTTP transfer-coding is distinct from MIME transfer-encoding.

Section 14.11 gives the proper means of describing the HTTP transmission of a file which is already compressed

The Content-Encoding entity-header field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type header field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type.
Unfortunately it seems reasonably clear that Content-Encoding cannot be applied as if it were a MIME "Optional parameter" with the expectation that it could be used when transferring compressed files via e-mail. This observation is based upon section 19.4.4. It appears that a complete description of compressed files transmitted via e-mail requires a new RFC enhancing the MIME standard.

Section 3.5 says that the initial IANA registry of content-coding tokens consists of gzip, compress, deflate, and identity. The IANA publishes the current state of the registry. Note that a content-coding is a permissible value of HTTP Content-Encoding and Accept-Encoding. See section 19.4.5 and note that a MIME Content-transfer-encoding is distinct from a HTTP Content-Encoding.

Internet Drafts and registration of top level MIME media types

The Internet Standards process is described in RFC 2026. The format for an RFC is given by RFC 2223, and this is supplemented by further conformance requirements. The IETF also publishes guidelines to authors of Internet-Drafts.
Steve Allen <sla@ucolick.org>
$Id: inetstds.html,v 1.5 2003/05/18 01:32:15 sla Exp $