Internet DRAFT - draft-levinson-multipart-related

draft-levinson-multipart-related



HTTP/1.1 200 OK
Date: Tue, 09 Apr 2002 09:50:29 GMT
Server: Apache/1.3.20 (Unix)
Last-Modified: Tue, 31 Jan 1995 23:00:00 GMT
ETag: "3240ec-325a-2f2ec0f0"
Accept-Ranges: bytes
Content-Length: 12890
Connection: close
Content-Type: text/plain



       Network Working Group                Harald Tveit Alvestrand
       Internet Draft: Multipart/Related                    UNINETT
       <draft-levinson-multipart-related-00.txt>    Edward Levinson
                                                ACCURATE Info. Sys.
                                                   January 31, 1995

                 The MIME Multipart/Related Content-type

       This draft document is being circulated for comment.  Please
       send your comments to the authors or to the ietf-822 mail
       list <ietf-822@822@dimacs.rutgers.edu>.  If consensus is
       reached, this document may be submitted to the RFC editor as
       a Proposed Standard protocol specification for use with
       MIME.

       Status of this Memo

       This document is an Internet Draft; Internet Drafts are
       working documents of the Internet Engineering Task Force
       (IETF) its Areas, and Working Groups.  Note that other
       groups may also distribute working documents as Internet
       Drafts.

       Internet Drafts are draft documents valid for a maximum of
       six months.  They may be updated, replaced, or obsoleted by
       other documents at any time.  It is not appropriate to use
       Internet Drafts as reference material or to cite them other
       than as a "working draft" or  "work in progress".

       Please check the abstract listing in each Internet Draft
       directory for the current status of this or any other
       Internet Draft.

       Abstract

       The Multipart/Related content-type provides a common
       mechanism for representing objects that are aggregates of
       related MIME body parts.  This document defines the
       Multipart/Related content-type and provides examples of its
       use.

       1.  Introduction

       Several applications of MIME, including MIME-PEM, and MIME-
       Macintosh and proposals for MIME-SGML, require multiple body
       parts that make sense only in the aggregate.  The present
       approach to these compound object has been to define
       specific multipart subtypes for each new object.  In keeping
       with the MIME philosophy of having one mechanism to achieve
       the same goal for different purposes, one single mechanism
       should be defined for such aggregate or compound objects.

       The Multipart/Related content-type addresses the MIME
       representation of compound objects. Basically, two pieces of



       Levinson and Alvestrand  Expires July 31, 1995                  [Page 1]

       Internet Draft                                         Multipart/Related


       information are required, the "root" or starting body
       part(s), and an indication of the object type.


       2.  Definition

       The following form is copied from RFC 1590, Appendix A.


       To:  IANA@isi.edu
       Subject:  Registration of new Media Type content-type/subtype

       Media Type name:           Multipart

       Media subtype name:        Related

       Required parameters:       None.

       Optional parameters:       Start, an ordered list of content-IDs.
                                  Type, a media type/subtype

       Encoding considerations:   1. Multipart content-types cannot have
                                     encodings.
                                  2. All body parts contained within this
                                     media type must have Content-ID headers
                                     and values.

       Security considerations:   Depends solely on the referenced type

       Published specification:   This document

       Person & email address to contact for further information:
                                  Document authors

       3.  Intended usage

       The Multipart/Related Content-Type is intended for compound
       object consisting of several inter-related body parts.  For
       a Multipart/Related object, proper display cannot be
       achieved by individually displaying the constituent body
       parts.  The actual content-type of the Multipart/Related
       object is specified by the content-type of the "root" or
       starting body part.  The "start" parameter, if given,
       points, by content-id, to the body part containing the
       object root.  The default object root is the first body part
       within the Multipart/Related body.  The root header also
       specifies the additional object information required to
       display the object.

       The relationships between the body parts of a compound
       object distinguishes it from other object types.  Those
       relationships are often represented by links internal to the
       object's components that reference other components.  Within
       a single operating environment the links are often file



       Levinson and Alvestrand  Expires July 31, 1995                  [Page 2]

       Internet Draft                                         Multipart/Related


       names, within a MIME message content-ids can serve the same
       purpose.  MIME message composers are encouraged, as a
       recommended practice, to use the content-id header for each
       body part within the Multipart/Related body part.  A
       companion piece [CID] discusses the use of content-ids in
       such objects.

       3.1.  The Start Parameter

       The start parameter, if given, lists the content-ID of the
       compound object's "root".  If the content-ID of several body
       parts are listed, then the first body part referenced
       specifies the object type.

       3.2 The Type Parameter

       The type parameter can be specified to indicate the
       content-type of the Multipart/Related object.  Using this
       parameter permits a MIME agent to determine the content-type
       without reference to the enclosed body part.  The type
       parameter is expected to be useful in those agents
       processing the MIME message as a stream.

       Where the content-type of the object root and the one
       indicated by the type parameter disagree, the object root is
       authoritative.  The MIME agent, however, may take action,
       including suppressing the Multipart/Related body, based on
       the indicated content-type.

       3.3 Syntax

            multipart-subtype = existing-subtypes / "related"

            related-param     = ( ";" "start" "=" msg-id )
                              / ( ";" "type"  "=" type "/" subtype )

       Note that quotes are required if the type parameter value
       has embedded blanks.

       4.  Examples

       4.1 Application/X-FixedRecord

       The X-FixedRecord content-type consists of two parts: an
       octet-stream and a list of the lengths of each record.  The
       root, which lists the record lengths has one required
       parameter, data-blocks, whose value is the content-id of one
       or more octet-stream body parts.  The body of X-FixedRecord
       consists of a set of INTEGERs in ASCII format, one per line.
       Each INTEGER gives the number of octets from the octet-
       stream body part that constitute the next "record".

       The example below, uses a single data block.




       Levinson and Alvestrand  Expires July 31, 1995                  [Page 3]

       Internet Draft                                         Multipart/Related


            Content-Type: Multipart/Related; boundary=tiger-lily
                    start=<950120.1133@XIson.com>;
                    type=Application/X-FixedRecord

            --tiger-lily
            Content-Type: Application/X-FixedRecord;
                    data-blocks=<950120.1133@XIson.com>
            Content-ID: <950120.1132@XIson.com>

            25
            10
            34
            10
            25
            21
            26
            10
            --tiger-lily
            Content-Type: Application/octet-stream
            Content-Description: The fixed length records
            Content-Transfer-Encoding: base64
            Content-ID: <950120.1133@XIson.com>

            T2xkIE1hY0RvbmFsZCBoYWQgYSBmYXJtCkUgSS
            BFIEkgTwpBbmQgb24gaGlzIGZhcm0gaGUgaGFk
            IHNvbWUgZHVja3MKRSBJIEUgSSBPCldpdGggYS
            BxdWFjayBxdWFjayBoZXJlLAphIHF1YWNrIHF1
            YWNrIHRoZXJlLApldmVyeSB3aGVyZSBhIHF1YW
            NrIHF1YWNrCkUgSSBFIEkgTwo=

            --tiger-lily--

       4.2 Text/X-sgml

       The Text/X-sgml content-type has three parameters

            declaration     optional
            catalog         optional
            style-sheet     optional

       Note, a MIME encapsulation of SGML is currently under
       discussion.  In this example the Multipart/Related type
       parameter is omitted.  Another feature of this example is
       the inclusion of an additional body part, the picture. It is
       referred to internally by the encapsulated document via
       picture's body part content-id.  Usage of "cid:", as in this
       example, may be useful for a variety of compound objects.
       It is not, however, a part of the Multipart/Related
       specification.

            Content-Type: Multipart/Related; boundary=example;
                    start=950118.1528@XIson.com

            --example



       Levinson and Alvestrand  Expires July 31, 1995                  [Page 4]

       Internet Draft                                         Multipart/Related


            Content-Type: Text/x-sgml; charset=iso-8859-1;
                    declaration=<950118.1530@XIson.com>
            Content-ID: <950118.1528@XIson.com>
            Content-Description: Document

            <!DOCTYPE doc PUBLIC "-//IETF ..." [
            <!NOTATION jpeg SYSTEM "image/jpeg">
            <!ENTITY picture SYSTEM "cid:950118.1532@XIson.com" NDATA jpeg>
            ] >
            <doc>
            whatever
            </doc>
            --example
            Content-Type: Application/x-sgml; charset=iso-8859-1
            Content-ID: <950118.1530@XIson.com>
            Content-Description: An sgml declaration

            <!SGML "ISO 8879-1986" ... >
            --example
            Content-Type: image/jpeg
            Content-ID: <950118.1532@XIson.com>
            Content-Transfer-Encoding: BASE64
            Content-Description: Picture

            [encoded jpeg image]
            --example--

       5.  User Agent Requirements

       MIME-capable mail user agents (MUAs) may suppress display of
       Multipart/Related body parts whose underlying content-type
       cannot be displayed.  The underlying content-type is the
       content-type of the first body part pointed to by the start
       parameter.  If the type parameter value is given, the MUA
       may base its display decision on that value.

       The MUA must make available to the process that displays the
       underlying content-type the correspondence between the
       content-ids of the constituent body parts and their storage
       locations.  Similarly, the value of the start parameter must
       be available.

       6.  Security considerations

       Security considerations relevant to Multipart/Related are
       identical to those of the embedded content-type.


       7.  Acknowledgments

       Acknowledgements are, as always, due to more people than can
       be listed.  However, the authors take full responsibility
       for all errors contained in this document.




       Levinson and Alvestrand  Expires July 31, 1995                  [Page 5]

       Internet Draft                                         Multipart/Related


       8.  References


       [822]       Crocker, D., Standard for the Format of ARPA Internet Text
                   Messages, August 1982, University of Delaware, RFC 822.

       [MIME]      Borenstein, N. and Freed, N., MIME (Multipurpose Internet
                   Mail Extensions): Mechanisms for Specifying and Describing
                   the Format of Internet Message Bodies, June 1992, RFC 1341.

       [SGML]      ISO 8879:1988, Information processing -- Text and office
                   systems -- Standard Generalized Markup Language (SGML).

       [CID]       Levinson, E., CID: The Content-ID Uniform Resource Locator,
                   work in progress, ftp://ds.internic.net/internet-
                   drafts/draft-levinson-cid-00.txt.

       9.  Author's address

       Edward Levinson
       Accurate Information Systems, Inc.
       2 Industrial Way
       Eatontown, NJ  07724-2265
       USA
       +1 908 389 5550
       <ELevinson@Accurate.com>

       Harald T. Alvestrand
       UNINETT
       P.O.Box 6883 Elgeseter
       N-7002 Trondheim
       Norway
       <Harald.T.Alvestrand@uninett.no>
























       Levinson and Alvestrand  Expires July 31, 1995                  [Page 6]