rohrpost

A commandline mail client to change the world as we see it.
git clone git://r-36.net/rohrpost
Log | Files | Refs | README | 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