rfc2048.txt - rohrpost - A commandline mail client to change the world as we see it.
 (HTM) git clone git://r-36.net/rohrpost
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       rfc2048.txt (45034B)
       ---
            1 
            2 
            3 
            4 
            5 
            6 
            7 Network Working Group                                           N. Freed
            8 Request for Comments: 2048                                      Innosoft
            9 BCP: 13                                                       J. Klensin
           10 Obsoletes: 1521, 1522, 1590                                          MCI
           11 Category: Best Current Practice                                J. Postel
           12                                                                      ISI
           13                                                            November 1996
           14 
           15 
           16                  Multipurpose Internet Mail Extensions
           17                            (MIME) Part Four:
           18                         Registration Procedures
           19 
           20 Status of this Memo
           21 
           22    This document specifies an Internet Best Current Practices for the
           23    Internet Community, and requests discussion and suggestions for
           24    improvements.  Distribution of this memo is unlimited.
           25 
           26 Abstract
           27 
           28    STD 11, RFC 822, defines a message representation protocol specifying
           29    considerable detail about US-ASCII message headers, and leaves the
           30    message content, or message body, as flat US-ASCII text.  This set of
           31    documents, collectively called the Multipurpose Internet Mail
           32    Extensions, or MIME, redefines the format of messages to allow for
           33 
           34     (1)   textual message bodies in character sets other than
           35           US-ASCII,
           36 
           37     (2)   an extensible set of different formats for non-textual
           38           message bodies,
           39 
           40     (3)   multi-part message bodies, and
           41 
           42     (4)   textual header information in character sets other than
           43           US-ASCII.
           44 
           45    These documents are based on earlier work documented in RFC 934, STD
           46    11, and RFC 1049, but extends and revises them.  Because RFC 822 said
           47    so little about message bodies, these documents are largely
           48    orthogonal to (rather than a revision of) RFC 822.
           49 
           50 
           51 
           52 
           53 
           54 
           55 
           56 
           57 
           58 Freed, et. al.           Best Current Practice                  [Page 1]
           59 
           60 RFC 2048              MIME Registration Procedures         November 1996
           61 
           62 
           63    This fourth document, RFC 2048, specifies various IANA registration
           64    procedures for the following MIME facilities:
           65 
           66     (1)   media types,
           67 
           68     (2)   external body access types,
           69 
           70     (3)   content-transfer-encodings.
           71 
           72    Registration of character sets for use in MIME is covered elsewhere
           73    and is no longer addressed by this document.
           74 
           75    These documents are revisions of RFCs 1521 and 1522, which themselves
           76    were revisions of RFCs 1341 and 1342.  An appendix in RFC 2049
           77    describes differences and changes from previous versions.
           78 
           79 Table of Contents
           80 
           81    1. Introduction .........................................    3
           82    2. Media Type Registration ..............................    4
           83    2.1 Registration Trees and Subtype Names ................    4
           84    2.1.1 IETF Tree .........................................    4
           85    2.1.2 Vendor Tree .......................................    4
           86    2.1.3 Personal or Vanity Tree ...........................    5
           87    2.1.4 Special `x.' Tree .................................    5
           88    2.1.5 Additional Registration Trees .....................    6
           89    2.2 Registration Requirements ...........................    6
           90    2.2.1 Functionality Requirement .........................    6
           91    2.2.2 Naming Requirements ...............................    6
           92    2.2.3 Parameter Requirements ............................    7
           93    2.2.4 Canonicalization and Format Requirements ..........    7
           94    2.2.5 Interchange Recommendations .......................    8
           95    2.2.6 Security Requirements .............................    8
           96    2.2.7 Usage and Implementation Non-requirements .........    9
           97    2.2.8 Publication Requirements ..........................   10
           98    2.2.9 Additional Information ............................   10
           99    2.3 Registration Procedure ..............................   11
          100    2.3.1 Present the Media Type to the Community for  Review   11
          101    2.3.2 IESG Approval .....................................   12
          102    2.3.3 IANA Registration .................................   12
          103    2.4 Comments on Media Type Registrations ................   12
          104    2.5 Location of Registered Media Type List ..............   12
          105    2.6 IANA Procedures for Registering Media Types .........   12
          106    2.7 Change Control ......................................   13
          107    2.8 Registration Template ...............................   14
          108    3. External Body Access Types ...........................   14
          109    3.1 Registration Requirements ...........................   15
          110    3.1.1 Naming Requirements ...............................   15
          111 
          112 
          113 
          114 Freed, et. al.           Best Current Practice                  [Page 2]
          115 
          116 RFC 2048              MIME Registration Procedures         November 1996
          117 
          118 
          119    3.1.2 Mechanism Specification Requirements ..............   15
          120    3.1.3 Publication Requirements ..........................   15
          121    3.1.4 Security Requirements .............................   15
          122    3.2 Registration Procedure ..............................   15
          123    3.2.1 Present the Access Type to the Community ..........   16
          124    3.2.2 Access Type Reviewer ..............................   16
          125    3.2.3 IANA Registration .................................   16
          126    3.3 Location of Registered Access Type List .............   16
          127    3.4 IANA Procedures for Registering Access Types ........   16
          128    4. Transfer Encodings ...................................   17
          129    4.1 Transfer Encoding Requirements ......................   17
          130    4.1.1 Naming Requirements ...............................   17
          131    4.1.2 Algorithm Specification Requirements ..............   18
          132    4.1.3 Input Domain Requirements .........................   18
          133    4.1.4 Output Range Requirements .........................   18
          134    4.1.5 Data Integrity and Generality Requirements ........   18
          135    4.1.6 New Functionality Requirements ....................   18
          136    4.2 Transfer Encoding Definition Procedure ..............   19
          137    4.3 IANA Procedures for Transfer Encoding Registration...   19
          138    4.4 Location of Registered Transfer Encodings List ......   19
          139    5. Authors' Addresses ...................................   20
          140    A. Grandfathered Media Types ............................   21
          141 
          142 1.  Introduction
          143 
          144    Recent Internet protocols have been carefully designed to be easily
          145    extensible in certain areas.  In particular, MIME [RFC 2045] is an
          146    open-ended framework and can accommodate additional object types,
          147    character sets, and access methods without any changes to the basic
          148    protocol.  A registration process is needed, however, to ensure that
          149    the set of such values is developed in an orderly, well-specified,
          150    and public manner.
          151 
          152    This document defines registration procedures which use the Internet
          153    Assigned Numbers Authority (IANA) as a central registry for such
          154    values.
          155 
          156    Historical Note: The registration process for media types was
          157    initially defined in the context of the asynchronous Internet mail
          158    environment.  In this mail environment there is a need to limit the
          159    number of possible media types to increase the likelihood of
          160    interoperability when the capabilities of the remote mail system are
          161    not known.  As media types are used in new environments, where the
          162    proliferation of media types is not a hindrance to interoperability,
          163    the original procedure was excessively restrictive and had to be
          164    generalized.
          165 
          166 
          167 
          168 
          169 
          170 Freed, et. al.           Best Current Practice                  [Page 3]
          171 
          172 RFC 2048              MIME Registration Procedures         November 1996
          173 
          174 
          175 2.  Media Type Registration
          176 
          177    Registration of a new media type or types starts with the
          178    construction of a registration proposal.  Registration may occur in
          179    several different registration trees, which have different
          180    requirements as discussed below.  In general, the new registration
          181    proposal is circulated and reviewed in a fashion appropriate to the
          182    tree involved.  The media type is then registered if the proposal is
          183    acceptable.  The following sections describe the requirements and
          184    procedures used for each of the different registration trees.
          185 
          186 2.1.  Registration Trees and Subtype Names
          187 
          188    In order to increase the efficiency and flexibility of the
          189    registration process, different structures of subtype names may be
          190    registered to accomodate the different natural requirements for,
          191    e.g., a subtype that will be recommended for wide support and
          192    implementation by the Internet Community or a subtype that is used to
          193    move files associated with proprietary software.  The following
          194    subsections define registration "trees", distinguished by the use of
          195    faceted names (e.g., names of the form "tree.subtree...type").  Note
          196    that some media types defined prior to this document do not conform
          197    to the naming conventions described below.  See Appendix A for a
          198    discussion of them.
          199 
          200 2.1.1.  IETF Tree
          201 
          202    The IETF tree is intended for types of general interest to the
          203    Internet Community. Registration in the IETF tree requires approval
          204    by the IESG and publication of the media type registration as some
          205    form of RFC.
          206 
          207    Media types in the IETF tree are normally denoted by names that are
          208    not explicitly faceted, i.e., do not contain period (".", full stop)
          209    characters.
          210 
          211    The "owner" of a media type registration in the IETF tree is assumed
          212    to be the IETF itself.  Modification or alteration of the
          213    specification requires the same level of processing (e.g.  standards
          214    track) required for the initial registration.
          215 
          216 2.1.2.  Vendor Tree
          217 
          218    The vendor tree is used for media types associated with commercially
          219    available products.  "Vendor" or "producer" are construed as
          220    equivalent and very broadly in this context.
          221 
          222 
          223 
          224 
          225 
          226 Freed, et. al.           Best Current Practice                  [Page 4]
          227 
          228 RFC 2048              MIME Registration Procedures         November 1996
          229 
          230 
          231    A registration may be placed in the vendor tree by anyone who has
          232    need to interchange files associated with the particular product.
          233    However, the registration formally belongs to the vendor or
          234    organization producing the software or file format.  Changes to the
          235    specification will be made at their request, as discussed in
          236    subsequent sections.
          237 
          238    Registrations in the vendor tree will be distinguished by the leading
          239    facet "vnd.".  That may be followed, at the discretion of the
          240    registration, by either a media type name from a well-known producer
          241    (e.g., "vnd.mudpie") or by an IANA-approved designation of the
          242    producer's name which is then followed by a media type or product
          243    designation (e.g., vnd.bigcompany.funnypictures).
          244 
          245    While public exposure and review of media types to be registered in
          246    the vendor tree is not required, using the ietf-types list for review
          247    is strongly encouraged to improve the quality of those
          248    specifications. Registrations in the vendor tree may be submitted
          249    directly to the IANA.
          250 
          251 2.1.3.  Personal or Vanity Tree
          252 
          253    Registrations for media types created experimentally or as part of
          254    products that are not distributed commercially may be registered in
          255    the personal or vanity tree.  The registrations are distinguished by
          256    the leading facet "prs.".
          257 
          258    The owner of "personal" registrations and associated specifications
          259    is the person or entity making the registration, or one to whom
          260    responsibility has been transferred as described below.
          261 
          262    While public exposure and review of media types to be registered in
          263    the personal tree is not required, using the ietf-types list for
          264    review is strongly encouraged to improve the quality of those
          265    specifications.  Registrations in the personl tree may be submitted
          266    directly to the IANA.
          267 
          268 2.1.4.  Special `x.' Tree
          269 
          270    For convenience and symmetry with this registration scheme, media
          271    type names with "x." as the first facet may be used for the same
          272    purposes for which names starting in "x-" are normally used.  These
          273    types are unregistered, experimental, and should be used only with
          274    the active agreement of the parties exchanging them.
          275 
          276 
          277 
          278 
          279 
          280 
          281 
          282 Freed, et. al.           Best Current Practice                  [Page 5]
          283 
          284 RFC 2048              MIME Registration Procedures         November 1996
          285 
          286 
          287    However, with the simplified registration procedures described above
          288    for vendor and personal trees, it should rarely, if ever, be
          289    necessary to use unregistered experimental types, and as such use of
          290    both "x-" and "x." forms is discouraged.
          291 
          292 2.1.5.  Additional Registration Trees
          293 
          294    From time to time and as required by the community, the IANA may,
          295    with the advice and consent of the IESG, create new top-level
          296    registration trees.  It is explicitly assumed that these trees may be
          297    created for external registration and management by well-known
          298    permanent bodies, such as scientific societies for media types
          299    specific to the sciences they cover.  In general, the quality of
          300    review of specifications for one of these additional registration
          301    trees is expected to be equivalent to that which IETF would give to
          302    registrations in its own tree. Establishment of these new trees will
          303    be announced through RFC publication approved by the IESG.
          304 
          305 2.2.  Registration Requirements
          306 
          307    Media type registration proposals are all expected to conform to
          308    various requirements laid out in the following sections.  Note that
          309    requirement specifics sometimes vary depending on the registration
          310    tree, again as detailed in the following sections.
          311 
          312 2.2.1.  Functionality Requirement
          313 
          314    Media types must function as an actual media format: Registration of
          315    things that are better thought of as a transfer encoding, as a
          316    character set, or as a collection of separate entities of another
          317    type, is not allowed.  For example, although applications exist to
          318    decode the base64 transfer encoding [RFC 2045], base64 cannot be
          319    registered as a media type.
          320 
          321    This requirement applies regardless of the registration tree
          322    involved.
          323 
          324 2.2.2.  Naming Requirements
          325 
          326    All registered media types must be assigned MIME type and subtype
          327    names. The combination of these names then serves to uniquely
          328    identify the media type and the format of the subtype name identifies
          329    the registration tree.
          330 
          331    The choice of top-level type name must take the nature of media type
          332    involved into account. For example, media normally used for
          333    representing still images should be a subtype of the image content
          334    type, whereas media capable of representing audio information belongs
          335 
          336 
          337 
          338 Freed, et. al.           Best Current Practice                  [Page 6]
          339 
          340 RFC 2048              MIME Registration Procedures         November 1996
          341 
          342 
          343    under the audio content type. See RFC 2046 for additional information
          344    on the basic set of top-level types and their characteristics.
          345 
          346    New subtypes of top-level types must conform to the restrictions of
          347    the top-level type, if any. For example, all subtypes of the
          348    multipart content type must use the same encapsulation syntax.
          349 
          350    In some cases a new media type may not "fit" under any currently
          351    defined top-level content type. Such cases are expected to be quite
          352    rare. However, if such a case arises a new top-level type can be
          353    defined to accommodate it. Such a definition must be done via
          354    standards-track RFC; no other mechanism can be used to define
          355    additional top-level content types.
          356 
          357    These requirements apply regardless of the registration tree
          358    involved.
          359 
          360 2.2.3.  Parameter Requirements
          361 
          362    Media types may elect to use one or more MIME content type
          363    parameters, or some parameters may be automatically made available to
          364    the media type by virtue of being a subtype of a content type that
          365    defines a set of parameters applicable to any of its subtypes.  In
          366    either case, the names, values, and meanings of any parameters must
          367    be fully specified when a media type is registered in the IETF tree,
          368    and should be specified as completely as possible when media types
          369    are registered in the vendor or personal trees.
          370 
          371    New parameters must not be defined as a way to introduce new
          372    functionality in types registered in the IETF tree, although new
          373    parameters may be added to convey additional information that does
          374    not otherwise change existing functionality.  An example of this
          375    would be a "revision" parameter to indicate a revision level of an
          376    external specification such as JPEG.  Similar behavior is encouraged
          377    for media types registered in the vendor or personal trees but is not
          378    required.
          379 
          380 2.2.4.  Canonicalization and Format Requirements
          381 
          382    All registered media types must employ a single, canonical data
          383    format, regardless of registration tree.
          384 
          385    A precise and openly available specification of the format of each
          386    media type is required for all types registered in the IETF tree and
          387    must at a minimum be referenced by, if it isn't actually included in,
          388    the media type registration proposal itself.
          389 
          390 
          391 
          392 
          393 
          394 Freed, et. al.           Best Current Practice                  [Page 7]
          395 
          396 RFC 2048              MIME Registration Procedures         November 1996
          397 
          398 
          399    The specifications of format and processing particulars may or may
          400    not be publically available for media types registered in the vendor
          401    tree, and such registration proposals are explicitly permitted to
          402    include only a specification of which software and version produce or
          403    process such media types.  References to or inclusion of format
          404    specifications in registration proposals is encouraged but not
          405    required.
          406 
          407    Format specifications are still required for registration in the
          408    personal tree, but may be either published as RFCs or otherwise
          409    deposited with IANA. The deposited specifications will meet the same
          410    criteria as those required to register a well-known TCP port and, in
          411    particular, need not be made public.
          412 
          413    Some media types involve the use of patented technology.  The
          414    registration of media types involving patented technology is
          415    specifically permitted.  However, the restrictions set forth in RFC
          416    1602 on the use of patented technology in standards-track protocols
          417    must be respected when the specification of a media type is part of a
          418    standards-track protocol.
          419 
          420 2.2.5.  Interchange Recommendations
          421 
          422    Media types should, whenever possible, interoperate across as many
          423    systems and applications as possible. However, some media types will
          424    inevitably have problems interoperating across different platforms.
          425    Problems with different versions, byte ordering, and specifics of
          426    gateway handling can and will arise.
          427 
          428    Universal interoperability of media types is not required, but known
          429    interoperability issues should be identified whenever possible.
          430    Publication of a media type does not require an exhaustive review of
          431    interoperability, and the interoperability considerations section is
          432    subject to continuing evaluation.
          433 
          434    These recommendations apply regardless of the registration tree
          435    involved.
          436 
          437 2.2.6.  Security Requirements
          438 
          439    An analysis of security issues is required for for all types
          440    registered in the IETF Tree.  (This is in accordance with the basic
          441    requirements for all IETF protocols.) A similar analysis for media
          442    types registered in the vendor or personal trees is encouraged but
          443    not required.  However, regardless of what security analysis has or
          444    has not been done, all descriptions of security issues must be as
          445    accurate as possible regardless of registration tree.  In particular,
          446    a statement that there are "no security issues associated with this
          447 
          448 
          449 
          450 Freed, et. al.           Best Current Practice                  [Page 8]
          451 
          452 RFC 2048              MIME Registration Procedures         November 1996
          453 
          454 
          455    type" must not be confused with "the security issues associates with
          456    this type have not been assessed".
          457 
          458    There is absolutely no requirement that media types registered in any
          459    tree be secure or completely free from risks.  Nevertheless, all
          460    known security risks must be identified in the registration of a
          461    media type, again regardless of registration tree.
          462 
          463    The security considerations section of all registrations is subject
          464    to continuing evaluation and modification, and in particular may be
          465    extended by use of the "comments on media types" mechanism described
          466    in subsequent sections.
          467 
          468    Some of the issues that should be looked at in a security analysis of
          469    a media type are:
          470 
          471     (1)   Complex media types may include provisions for
          472           directives that institute actions on a recipient's
          473           files or other resources.  In many cases provision is
          474           made for originators to specify arbitrary actions in an
          475           unrestricted fashion which may then have devastating
          476           effects.  See the registration of the
          477           application/postscript media type in RFC 2046 for
          478           an example of such directives and how to handle them.
          479 
          480     (2)   Complex media types may include provisions for
          481           directives that institute actions which, while not
          482           directly harmful to the recipient, may result in
          483           disclosure of information that either facilitates a
          484           subsequent attack or else violates a recipient's
          485           privacy in some way.  Again, the registration of the
          486           application/postscript media type illustrates how such
          487           directives can be handled.
          488 
          489     (3)   A media type might be targeted for applications that
          490           require some sort of security assurance but not provide
          491           the necessary security mechanisms themselves. For
          492           example, a media type could be defined for storage of
          493           confidential medical information which in turn requires
          494           an external confidentiality service.
          495 
          496 2.2.7.  Usage and Implementation Non-requirements
          497 
          498    In the asynchronous mail environment, where information on the
          499    capabilities of the remote mail agent is frequently not available to
          500    the sender, maximum interoperability is attained by restricting the
          501    number of media types used to those "common" formats expected to be
          502    widely implemented.  This was asserted in the past as a reason to
          503 
          504 
          505 
          506 Freed, et. al.           Best Current Practice                  [Page 9]
          507 
          508 RFC 2048              MIME Registration Procedures         November 1996
          509 
          510 
          511    limit the number of possible media types and resulted in a
          512    registration process with a significant hurdle and delay for those
          513    registering media types.
          514 
          515    However, the need for "common" media types does not require limiting
          516    the registration of new media types. If a limited set of media types
          517    is recommended for a particular application, that should be asserted
          518    by a separate applicability statement specific for the application
          519    and/or environment.
          520 
          521    As such, universal support and implementation of a media type is NOT
          522    a requirement for registration.  If, however, a media type is
          523    explicitly intended for limited use, this should be noted in its
          524    registration.
          525 
          526 2.2.8.  Publication Requirements
          527 
          528    Proposals for media types registered in the IETF tree must be
          529    published as RFCs. RFC publication of vendor and personal media type
          530    proposals is encouraged but not required. In all cases IANA will
          531    retain copies of all media type proposals and "publish" them as part
          532    of the media types registration tree itself.
          533 
          534    Other than in the IETF tree, the registration of a data type does not
          535    imply endorsement, approval, or recommendation by IANA or IETF or
          536    even certification that the specification is adequate.  To become
          537    Internet Standards, protocol, data objects, or whatever must go
          538    through the IETF standards process.  This is too difficult and too
          539    lengthy a process for the convenient registration of media types.
          540 
          541    The IETF tree exists for media types that do require require a
          542    substantive review and approval process with the vendor and personal
          543    trees exist for those that do not. It is expected that applicability
          544    statements for particular applications will be published from time to
          545    time that recommend implementation of, and support for, media types
          546    that have proven particularly useful in those contexts.
          547 
          548    As discussed above, registration of a top-level type requires
          549    standards-track processing and, hence, RFC publication.
          550 
          551 2.2.9.  Additional Information
          552 
          553    Various sorts of optional information may be included in the
          554    specification of a media type if it is available:
          555 
          556     (1)   Magic number(s) (length, octet values). Magic numbers
          557           are byte sequences that are always present and thus can
          558           be used to identify entities as being of a given media
          559 
          560 
          561 
          562 Freed, et. al.           Best Current Practice                 [Page 10]
          563 
          564 RFC 2048              MIME Registration Procedures         November 1996
          565 
          566 
          567           type.
          568 
          569     (2)   File extension(s) commonly used on one or more
          570           platforms to indicate that some file containing a given
          571           type of media.
          572 
          573     (3)   Macintosh File Type code(s) (4 octets) used to label
          574           files containing a given type of media.
          575 
          576    Such information is often quite useful to implementors and if
          577    available should be provided.
          578 
          579 2.3.  Registration Procedure
          580 
          581    The following procedure has been implemented by the IANA for review
          582    and approval of new media types.  This is not a formal standards
          583    process, but rather an administrative procedure intended to allow
          584    community comment and sanity checking without excessive time delay.
          585    For registration in the IETF tree, the normal IETF processes should
          586    be followed, treating posting of an internet-draft and announcement
          587    on the ietf-types list (as described in the next subsection) as a
          588    first step.  For registrations in the vendor or personal tree, the
          589    initial review step described below may be omitted and the type
          590    registered directly by submitting the template and an explanation
          591    directly to IANA (at iana@iana.org).  However, authors of vendor or
          592    personal media type specifications are encouraged to seek community
          593    review and comment whenever that is feasible.
          594 
          595 2.3.1.  Present the Media Type to the Community for Review
          596 
          597    Send a proposed media type registration to the "ietf-types@iana.org"
          598    mailing list for a two week review period.  This mailing list has
          599    been established for the purpose of reviewing proposed media and
          600    access types. Proposed media types are not formally registered and
          601    must not be used; the "x-" prefix specified in RFC 2045 can be used
          602    until registration is complete.
          603 
          604    The intent of the public posting is to solicit comments and feedback
          605    on the choice of type/subtype name, the unambiguity of the references
          606    with respect to versions and external profiling information, and a
          607    review of any interoperability or security considerations. The
          608    submitter may submit a revised registration, or withdraw the
          609    registration completely, at any time.
          610 
          611 
          612 
          613 
          614 
          615 
          616 
          617 
          618 Freed, et. al.           Best Current Practice                 [Page 11]
          619 
          620 RFC 2048              MIME Registration Procedures         November 1996
          621 
          622 
          623 2.3.2.  IESG Approval
          624 
          625    Media types registered in the IETF tree must be submitted to the IESG
          626    for approval.
          627 
          628 2.3.3.  IANA Registration
          629 
          630    Provided that the media type meets the requirements for media types
          631    and has obtained approval that is necessary, the author may submit
          632    the registration request to the IANA, which will register the media
          633    type and make the media type registration available to the community.
          634 
          635 2.4.  Comments on Media Type Registrations
          636 
          637    Comments on registered media types may be submitted by members of the
          638    community to IANA.  These comments will be passed on to the "owner"
          639    of the media type if possible.  Submitters of comments may request
          640    that their comment be attached to the media type registration itself,
          641    and if IANA approves of this the comment will be made accessible in
          642    conjunction with the type registration itself.
          643 
          644 2.5.  Location of Registered Media Type List
          645 
          646    Media type registrations will be posted in the anonymous FTP
          647    directory "ftp://ftp.isi.edu/in-notes/iana/assignments/media-types/"
          648    and all registered media types will be listed in the periodically
          649    issued "Assigned Numbers" RFC [currently STD 2, RFC 1700].  The media
          650    type description and other supporting material may also be published
          651    as an Informational RFC by sending it to "rfc-editor@isi.edu" (please
          652    follow the instructions to RFC authors [RFC-1543]).
          653 
          654 2.6.  IANA Procedures for Registering Media Types
          655 
          656    The IANA will only register media types in the IETF tree in response
          657    to a communication from the IESG stating that a given registration
          658    has been approved. Vendor and personal types will be registered by
          659    the IANA automatically and without any formal review as long as the
          660    following minimal conditions are met:
          661 
          662     (1)   Media types must function as an actual media format.
          663           In particular, character sets and transfer encodings
          664           may not be registered as media types.
          665 
          666     (2)   All media types must have properly formed type and
          667           subtype names. All type names must be defined by a
          668           standards-track RFC. All subtype names must be unique,
          669           must conform to the MIME grammar for such names, and
          670           must contain the proper tree prefix.
          671 
          672 
          673 
          674 Freed, et. al.           Best Current Practice                 [Page 12]
          675 
          676 RFC 2048              MIME Registration Procedures         November 1996
          677 
          678 
          679     (3)   Types registered in the personal tree must either
          680           provide a format specification or a pointer to one.
          681 
          682     (4)   Any security considerations given must not be obviously
          683           bogus. (It is neither possible nor necessary for the
          684           IANA to conduct a comprehensive security review of
          685           media type registrations.  Nevertheless, IANA has the
          686           authority to identify obviously incompetent material
          687           and exclude it.)
          688 
          689 2.7.  Change Control
          690 
          691    Once a media type has been published by IANA, the author may request
          692    a change to its definition. The descriptions of the different
          693    registration trees above designate the "owners" of each type of
          694    registration. The change request follows the same procedure as the
          695    registration request:
          696 
          697     (1)   Publish the revised template on the ietf-types list.
          698 
          699     (2)   Leave at least two weeks for comments.
          700 
          701     (3)   Publish using IANA after formal review if required.
          702 
          703    Changes should be requested only when there are serious omission or
          704    errors in the published specification. When review is required, a
          705    change request may be denied if it renders entities that were valid
          706    under the previous definition invalid under the new definition.
          707 
          708    The owner of a content type may pass responsibility for the content
          709    type to another person or agency by informing IANA and the ietf-types
          710    list; this can be done without discussion or review.
          711 
          712    The IESG may reassign responsibility for a media type. The most
          713    common case of this will be to enable changes to be made to types
          714    where the author of the registration has died, moved out of contact
          715    or is otherwise unable to make changes that are important to the
          716    community.
          717 
          718    Media type registrations may not be deleted; media types which are no
          719    longer believed appropriate for use can be declared OBSOLETE by a
          720    change to their "intended use" field; such media types will be
          721    clearly marked in the lists published by IANA.
          722 
          723 
          724 
          725 
          726 
          727 
          728 
          729 
          730 Freed, et. al.           Best Current Practice                 [Page 13]
          731 
          732 RFC 2048              MIME Registration Procedures         November 1996
          733 
          734 
          735 2.8.  Registration Template
          736 
          737      To: ietf-types@iana.org
          738      Subject: Registration of MIME media type XXX/YYY
          739 
          740      MIME media type name:
          741 
          742      MIME subtype name:
          743 
          744      Required parameters:
          745 
          746      Optional parameters:
          747 
          748      Encoding considerations:
          749 
          750      Security considerations:
          751 
          752      Interoperability considerations:
          753 
          754      Published specification:
          755 
          756      Applications which use this media type:
          757 
          758      Additional information:
          759 
          760        Magic number(s):
          761        File extension(s):
          762        Macintosh File Type Code(s):
          763 
          764      Person & email address to contact for further information:
          765 
          766      Intended usage:
          767 
          768      (One of COMMON, LIMITED USE or OBSOLETE)
          769 
          770      Author/Change controller:
          771 
          772      (Any other information that the author deems interesting may be
          773      added below this line.)
          774 
          775 3.  External Body Access Types
          776 
          777    RFC 2046 defines the message/external-body media type, whereby a MIME
          778    entity can act as pointer to the actual body data in lieu of
          779    including the data directly in the entity body. Each
          780    message/external-body reference specifies an access type, which
          781    determines the mechanism used to retrieve the actual body data. RFC
          782    2046 defines an initial set of access types, but allows for the
          783 
          784 
          785 
          786 Freed, et. al.           Best Current Practice                 [Page 14]
          787 
          788 RFC 2048              MIME Registration Procedures         November 1996
          789 
          790 
          791    registration of additional access types to accommodate new retrieval
          792    mechanisms.
          793 
          794 3.1.  Registration Requirements
          795 
          796    New access type specifications must conform to a number of
          797    requirements as described below.
          798 
          799 3.1.1.  Naming Requirements
          800 
          801    Each access type must have a unique name.  This name appears in the
          802    access-type parameter in the message/external-body content-type
          803    header field, and must conform to MIME content type parameter syntax.
          804 
          805 3.1.2.  Mechanism Specification Requirements
          806 
          807    All of the protocols, transports, and procedures used by a given
          808    access type must be described, either in the specification of the
          809    access type itself or in some other publicly available specification,
          810    in sufficient detail for the access type to be implemented by any
          811    competent implementor.  Use of secret and/or proprietary methods in
          812    access types are expressly prohibited. The restrictions imposed by
          813    RFC 1602 on the standardization of patented algorithms must be
          814    respected as well.
          815 
          816 3.1.3.  Publication Requirements
          817 
          818    All access types must be described by an RFC. The RFC may be
          819    informational rather than standards-track, although standard-track
          820    review and approval are encouraged for all access types.
          821 
          822 3.1.4.  Security Requirements
          823 
          824    Any known security issues that arise from the use of the access type
          825    must be completely and fully described. It is not required that the
          826    access type be secure or that it be free from risks, but that the
          827    known risks be identified.  Publication of a new access type does not
          828    require an exhaustive security review, and the security
          829    considerations section is subject to continuing evaluation.
          830    Additional security considerations should be addressed by publishing
          831    revised versions of the access type specification.
          832 
          833 3.2.  Registration Procedure
          834 
          835    Registration of a new access type starts with the construction of a
          836    draft of an RFC.
          837 
          838 
          839 
          840 
          841 
          842 Freed, et. al.           Best Current Practice                 [Page 15]
          843 
          844 RFC 2048              MIME Registration Procedures         November 1996
          845 
          846 
          847 3.2.1.  Present the Access Type to the Community
          848 
          849    Send a proposed access type specification to the "ietf-
          850    types@iana.org" mailing list for a two week review period.  This
          851    mailing list has been established for the purpose of reviewing
          852    proposed access and media types.  Proposed access types are not
          853    formally registered and must not be used.
          854 
          855    The intent of the public posting is to solicit comments and feedback
          856    on the access type specification and a review of any security
          857    considerations.
          858 
          859 3.2.2.  Access Type Reviewer
          860 
          861    When the two week period has passed, the access type reviewer, who is
          862    appointed by the IETF Applications Area Director, either forwards the
          863    request to iana@isi.edu, or rejects it because of significant
          864    objections raised on the list.
          865 
          866    Decisions made by the reviewer must be posted to the ietf-types
          867    mailing list within 14 days. Decisions made by the reviewer may be
          868    appealed to the IESG.
          869 
          870 3.2.3.  IANA Registration
          871 
          872    Provided that the access type has either passed review or has been
          873    successfully appealed to the IESG, the IANA will register the access
          874    type and make the registration available to the community. The
          875    specification of the access type must also be published as an RFC.
          876    Informational RFCs are published by sending them to "rfc-
          877    editor@isi.edu" (please follow the instructions to RFC authors [RFC-
          878    1543]).
          879 
          880 3.3.  Location of Registered Access Type List
          881 
          882    Access type registrations will be posted in the anonymous FTP
          883    directory "ftp://ftp.isi.edu/in-notes/iana/assignments/access-types/"
          884    and all registered access types will be listed in the periodically
          885    issued "Assigned Numbers" RFC [currently RFC-1700].
          886 
          887 3.4.  IANA Procedures for Registering Access Types
          888 
          889    The identity of the access type reviewer is communicated to the IANA
          890    by the IESG.  The IANA then only acts in response to access type
          891    definitions that either are approved by the access type reviewer and
          892    forwarded by the reviewer to the IANA for registration, or in
          893    response to a communication from the IESG that an access type
          894    definition appeal has overturned the access type reviewer's ruling.
          895 
          896 
          897 
          898 Freed, et. al.           Best Current Practice                 [Page 16]
          899 
          900 RFC 2048              MIME Registration Procedures         November 1996
          901 
          902 
          903 4.  Transfer Encodings
          904 
          905    Transfer encodings are tranformations applied to MIME media types
          906    after conversion to the media type's canonical form.  Transfer
          907    encodings are used for several purposes:
          908 
          909     (1)   Many transports, especially message transports, can
          910           only handle data consisting of relatively short lines
          911           of text. There can also be severe restrictions on what
          912           characters can be used in these lines of text -- some
          913           transports are restricted to a small subset of US-ASCII
          914           and others cannot handle certain character sequences.
          915           Transfer encodings are used to transform binary data
          916           into textual form that can survive such transports.
          917           Examples of this sort of transfer encoding include the
          918           base64 and quoted-printable transfer encodings defined
          919           in RFC 2045.
          920 
          921     (2)   Image, audio, video, and even application entities are
          922           sometimes quite large. Compression algorithms are often
          923           quite effective in reducing the size of large entities.
          924           Transfer encodings can be used to apply general-purpose
          925           non-lossy compression algorithms to MIME entities.
          926 
          927     (3)   Transport encodings can be defined as a means of
          928           representing existing encoding formats in a MIME
          929           context.
          930 
          931    IMPORTANT:  The standardization of a large numbers of different
          932    transfer encodings is seen as a significant barrier to widespread
          933    interoperability and is expressely discouraged.  Nevertheless, the
          934    following procedure has been defined to provide a means of defining
          935    additional transfer encodings, should standardization actually be
          936    justified.
          937 
          938 4.1.  Transfer Encoding Requirements
          939 
          940    Transfer encoding specifications must conform to a number of
          941    requirements as described below.
          942 
          943 4.1.1.  Naming Requirements
          944 
          945    Each transfer encoding must have a unique name.  This name appears in
          946    the Content-Transfer-Encoding header field and must conform to the
          947    syntax of that field.
          948 
          949 
          950 
          951 
          952 
          953 
          954 Freed, et. al.           Best Current Practice                 [Page 17]
          955 
          956 RFC 2048              MIME Registration Procedures         November 1996
          957 
          958 
          959 4.1.2.  Algorithm Specification Requirements
          960 
          961    All of the algorithms used in a transfer encoding (e.g.  conversion
          962    to printable form, compression) must be described in their entirety
          963    in the transfer encoding specification.  Use of secret and/or
          964    proprietary algorithms in standardized transfer encodings are
          965    expressly prohibited. The restrictions imposed by RFC 1602 on the
          966    standardization of patented algorithms must be respected as well.
          967 
          968 4.1.3.  Input Domain Requirements
          969 
          970    All transfer encodings must be applicable to an arbitrary sequence of
          971    octets of any length.  Dependence on particular input forms is not
          972    allowed.
          973 
          974    It should be noted that the 7bit and 8bit encodings do not conform to
          975    this requirement. Aside from the undesireability of having
          976    specialized encodings, the intent here is to forbid the addition of
          977    additional encodings along the lines of 7bit and 8bit.
          978 
          979 4.1.4.  Output Range Requirements
          980 
          981    There is no requirement that a particular tranfer encoding produce a
          982    particular form of encoded output.  However, the output format for
          983    each transfer encoding must be fully and completely documented.  In
          984    particular, each specification must clearly state whether the output
          985    format always lies within the confines of 7bit data, 8bit data, or is
          986    simply pure binary data.
          987 
          988 4.1.5.  Data Integrity and Generality Requirements
          989 
          990    All transfer encodings must be fully invertible on any platform; it
          991    must be possible for anyone to recover the original data by
          992    performing the corresponding decoding operation.  Note that this
          993    requirement effectively excludes all forms of lossy compression as
          994    well as all forms of encryption from use as a transfer encoding.
          995 
          996 4.1.6.  New Functionality Requirements
          997 
          998    All transfer encodings must provide some sort of new functionality.
          999    Some degree of functionality overlap with previously defined transfer
         1000    encodings is acceptable, but any new transfer encoding must also
         1001    offer something no other transfer encoding provides.
         1002 
         1003 
         1004 
         1005 
         1006 
         1007 
         1008 
         1009 
         1010 Freed, et. al.           Best Current Practice                 [Page 18]
         1011 
         1012 RFC 2048              MIME Registration Procedures         November 1996
         1013 
         1014 
         1015 4.2.  Transfer Encoding Definition Procedure
         1016 
         1017    Definition of a new transfer encoding starts with the construction of
         1018    a draft of a standards-track RFC.  The RFC must define the transfer
         1019    encoding precisely and completely, and must also provide substantial
         1020    justification for defining and standardizing a new transfer encoding.
         1021    This specification must then be presented to the IESG for
         1022    consideration.  The IESG can
         1023 
         1024     (1)   reject the specification outright as being
         1025           inappropriate for standardization,
         1026 
         1027     (2)   approve the formation of an IETF working group to work
         1028           on the specification in accordance with IETF
         1029           procedures, or,
         1030 
         1031     (3)   accept the specification as-is and put it directly on
         1032           the standards track.
         1033 
         1034    Transfer encoding specifications on the standards track follow normal
         1035    IETF rules for standards track documents.  A transfer encoding is
         1036    considered to be defined and available for use once it is on the
         1037    standards track.
         1038 
         1039 4.3.  IANA Procedures for Transfer Encoding Registration
         1040 
         1041    There is no need for a special procedure for registering Transfer
         1042    Encodings with the IANA. All legitimate transfer encoding
         1043    registrations must appear as a standards-track RFC, so it is the
         1044    IESG's responsibility to notify the IANA when a new transfer encoding
         1045    has been approved.
         1046 
         1047 4.4.  Location of Registered Transfer Encodings List
         1048 
         1049    Transfer encoding registrations will be posted in the anonymous FTP
         1050    directory "ftp://ftp.isi.edu/in-notes/iana/assignments/transfer-
         1051    encodings/" and all registered transfer encodings will be listed in
         1052    the periodically issued "Assigned Numbers" RFC [currently RFC-1700].
         1053 
         1054 
         1055 
         1056 
         1057 
         1058 
         1059 
         1060 
         1061 
         1062 
         1063 
         1064 
         1065 
         1066 Freed, et. al.           Best Current Practice                 [Page 19]
         1067 
         1068 RFC 2048              MIME Registration Procedures         November 1996
         1069 
         1070 
         1071 5.  Authors' Addresses
         1072 
         1073    For more information, the authors of this document are best
         1074    contacted via Internet mail:
         1075 
         1076    Ned Freed
         1077    Innosoft International, Inc.
         1078    1050 East Garvey Avenue South
         1079    West Covina, CA 91790
         1080    USA
         1081 
         1082    Phone: +1 818 919 3600
         1083    Fax:   +1 818 919 3614
         1084    EMail: ned@innosoft.com
         1085 
         1086 
         1087    John Klensin
         1088    MCI
         1089    2100 Reston Parkway
         1090    Reston, VA 22091
         1091 
         1092    Phone: +1 703 715-7361
         1093    Fax:   +1 703 715-7436
         1094    EMail: klensin@mci.net
         1095 
         1096 
         1097    Jon Postel
         1098    USC/Information Sciences Institute
         1099    4676 Admiralty Way
         1100    Marina del Rey, CA  90292
         1101    USA
         1102 
         1103 
         1104    Phone: +1 310 822 1511
         1105    Fax:   +1 310 823 6714
         1106    EMail: Postel@ISI.EDU
         1107 
         1108 
         1109 
         1110 
         1111 
         1112 
         1113 
         1114 
         1115 
         1116 
         1117 
         1118 
         1119 
         1120 
         1121 
         1122 Freed, et. al.           Best Current Practice                 [Page 20]
         1123 
         1124 RFC 2048              MIME Registration Procedures         November 1996
         1125 
         1126 
         1127 Appendix A -- Grandfathered Media Types
         1128 
         1129    A number of media types, registered prior to 1996, would, if
         1130    registered under the guidelines in this document, be placed into
         1131    either the vendor or personal trees.  Reregistration of those types
         1132    to reflect the appropriate trees is encouraged, but not required.
         1133    Ownership and change control principles outlined in this document
         1134    apply to those types as if they had been registered in the trees
         1135    described above.
         1136 
         1137 
         1138 
         1139 
         1140 
         1141 
         1142 
         1143 
         1144 
         1145 
         1146 
         1147 
         1148 
         1149 
         1150 
         1151 
         1152 
         1153 
         1154 
         1155 
         1156 
         1157 
         1158 
         1159 
         1160 
         1161 
         1162 
         1163 
         1164 
         1165 
         1166 
         1167 
         1168 
         1169 
         1170 
         1171 
         1172 
         1173 
         1174 
         1175 
         1176 
         1177 
         1178 
         1179 Freed, et. al.           Best Current Practice                 [Page 21]
         1180