home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / rfc / 700s / rfc767.txt < prev    next >
Text File  |  1992-10-14  |  60KB  |  2,346 lines

  1.  
  2.  
  3.  
  4. RFC:767
  5.                                     
  6.                                     
  7.                                     
  8.                                     
  9.                                     
  10.                                     
  11.      A STRUCTURED FORMAT FOR TRANSMISSION OF MULTI-MEDIA DOCUMENTS
  12.                                     
  13.                                     
  14.                                     
  15.                            Jonathan B. Postel
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.                               August 1980
  35.                                     
  36.                                     
  37.                                     
  38.                                     
  39.                      Information Sciences Institute
  40.                    University of Southern California
  41.                            4676 Admiralty Way
  42.                    Marina del Rey, California  90291
  43.  
  44.                              (213) 822-1511
  45.  
  46.  
  47. < INC-PROJECT, MMMSFS.NLS.21, >, 5-Sep-80 20:19 JBP ;;;;
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.                                                                   Postel
  103.  
  104.  
  105. August 1980                                                             
  106.            A Structured Format for Transmission of Multi-Media Documents
  107.  
  108.  
  109.  
  110.                            TABLE OF CONTENTS
  111.  
  112.     PREFACE ........................................................ iii
  113.  
  114. 1.  INTRODUCTION ..................................................... 1
  115.  
  116.   1.1.  Motivation ................................................... 1
  117.   1.2.  Scope ........................................................ 1
  118.   1.3.  Terminology .................................................. 1
  119.   1.4.  Document Description ......................................... 2
  120.   1.5.  Other Work ................................................... 2
  121.  
  122. 2.  SPECIFICATION .................................................... 3
  123.  
  124.   2.1.  Document ..................................................... 3
  125.   2.2.  Message Objects  ............................................. 5
  126.   2.3.  Body Structures ............................................. 13
  127.   2.3.1.  Simple Elements ........................................... 13
  128.   2.3.2.  Structured Text ........................................... 13
  129.   2.3.3.  NLS File Example .......................................... 13
  130.   2.3.4.  Multimedia Structures ..................................... 15
  131.   2.3.5.  The Media ................................................. 21
  132.   2.3.6.  TEXT ...................................................... 22
  133.   2.3.7.  VOICE ..................................................... 22
  134.   2.3.8.  FACSIMILE ................................................. 23
  135.   2.3.9.  GRAPHICS .................................................. 24
  136.  
  137. 3.  EXAMPLES & SCENARIOS ............................................ 25
  138.  
  139.   Example 1:  Text Example .......................................... 25
  140.   Example 2:  Multimedia Example .................................... 28
  141.  
  142. REFERENCES .......................................................... 31
  143.  
  144.   
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161. Postel                                                          [Page i]
  162.  
  163.  
  164.                                                              August 1980
  165. A Structured Format for Transmission of Multi-Media Documents
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220. [Page ii]                                                         Postel
  221.  
  222.  
  223. August 1980                                                             
  224.            A Structured Format for Transmission of Multi-Media Documents
  225.  
  226.  
  227.  
  228.                                 PREFACE
  229.  
  230.  
  231.  
  232. This is the first edition of this format specification and should be
  233. treated as a request for comments, advice, and suggestions.  A great
  234. deal of prior work has been done on computer aided message systems and
  235. some of this is listed in the reference section.  This specification was
  236. shaped by many discussions with members of the ARPA research community,
  237. and others interested in the development of computer aided message
  238. systems.  This document was prepared as part of the ARPA sponsored
  239. Internetwork Concepts Research Project at ISI.
  240.  
  241.                                                               Jon Postel
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279. Postel                                                        [Page iii]
  280.  
  281.  
  282. August 1980                                                             
  283.            A Structured Format for Transmission of Multi-Media Documents
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338. Postel                                                         [Page iv]
  339.  
  340.  
  341.  
  342. RFC: 767                                                       J. Postel
  343.                                                                  USC-ISI
  344.                                                              August 1980
  345.  
  346.  
  347.  
  348.  
  349.      A STRUCTURED FORMAT FOR TRANSMISSION OF MULTI-MEDIA DOCUMENTS
  350.  
  351.  
  352.  
  353.                             1.  INTRODUCTION
  354.  
  355. This document describes a format for transmitting structured data
  356. representations of multimedia documents.  This format is intended to be
  357. used with the Internet Message Protocol in an internetwork message
  358. delivery system.  That system is designed to transmit messages between
  359. processes in host computers called Message Processing Modules (MPMs).
  360. MPMs are located in several networks and together constitute an
  361. internetwork message delivery system.  The Internet Message Protocol
  362. defines a message as being composed of an Identification, a Command, and
  363. a Document.  This report is intended to define the format of such
  364. Documents.  The reader is assumed to be familiar with the Internet
  365. Message Protocol [1].
  366.  
  367. 1.1.  Motivation
  368.  
  369.   Computer applications are being implemented which interact with users
  370.   in a variety of media (text, graphics, facsimile, speech).  As
  371.   computer devices become available to process multimedia information it
  372.   becomes desirable to use computers to exchange multimedia information
  373.   between programs and users via various mechanisms including computer
  374.   mail.
  375.  
  376. 1.2.  Scope
  377.  
  378.   This format is intended to be used for the transmission of multimedia
  379.   documents in the internetwork message delivery system, but it is
  380.   thought that it has a wider applicability.
  381.  
  382. 1.3.  Terminology
  383.  
  384.   The messages are routed by a process called the Message Processing
  385.   Module or MPM.  Messages are created and consumed by User Interface
  386.   Programs (UIPs) in conjunction with users.
  387.  
  388.   The basic unit transferred between MPMs is called a message.  A
  389.   message is made up of a transaction identifier (which uniquely
  390.   identifies the message), a command (which contains the necessary
  391.   information for delivery), and document.  The document is a data
  392.   structure.
  393.  
  394.   For a personal letter the document body corresponds to the contents of
  395.  
  396.  
  397. Postel                                                          [Page 1]
  398.  
  399.  
  400.                                                              August 1980
  401. A Structured Format for Transmission of Multi-Media Documents
  402. Introduction
  403.  
  404.  
  405.  
  406.   the letter; the document header corresponds to the date line,
  407.   greeting, and signature.
  408.  
  409.   For an inter-office memo the document body corresponds to the text;
  410.   the document header corresponds to the header of the memo.
  411.  
  412.   The commands correspond to the information used by the Post Office or
  413.   the mail room to route the letter or memo.  Some of the information in
  414.   the command is supplied by the UIP.
  415.  
  416. 1.4.  Document Description
  417.  
  418.   The document is composed of fields.  Each field will carry an
  419.   identifying name.  Typical fields are DATE, TO, SUBJECT, and BODY.
  420.   Most of the fields will be very simple, some will be complex.  The
  421.   body field may be quite complex.  For example, the DATE is a very
  422.   constrained character string specifying the date and time in ISO
  423.   format. A more complex example is the TO field which is a list of
  424.   mailboxes, where a mailbox is itself a property list of address
  425.   information items.  The BODY may be simply a character string, or a
  426.   very structured collection of data representing information in
  427.   different media.
  428.  
  429.   The BODY may be structured to indicate a controlled presentation of
  430.   multimedia information.  There is provision for the inclusion of text,
  431.   graphics, facsimile, and voice information in the body of documents.
  432.   The presentation of information units may sequential, independent, or
  433.   simultaneous.
  434.  
  435. 1.5.  Other Work
  436.  
  437.   This protocol the benefited from the earlier work on message protocols
  438.   in the ARPA Network [2,3,4,5,6], and the ideas of others about the
  439.   design of computer message systems [7,8,9,10,11,12,13,14,15,16,17,18].
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456. [Page 2]                                                          Postel
  457.  
  458.  
  459. August 1980                                                             
  460.            A Structured Format for Transmission of Multi-Media Documents
  461.  
  462.  
  463.  
  464.                            2.  SPECIFICATION
  465.  
  466. The structured format of a document is built on the basic data elements
  467. used in the Internet Message Protocol [1].
  468.  
  469. 2.1.  Document
  470.  
  471.   The document is a property list of <name,value> pairs called fields.
  472.   A few fields are specifically required and many are optional.  Some of
  473.   the field values are simple and a few are quite complicated.  In
  474.   particular the body value may be highly structured.
  475.  
  476.   Older message systems have considered the document to be divided into
  477.   a header and a body, and have used keywords to indicate specific
  478.   header fields (e.g., date, to, subject).  Roughly speaking, this
  479.   functionality is provided in this new structured format by considering
  480.   the name part of the <name,value> pair to be a keyword.  In addition,
  481.   this new structured format eliminates the separate treatment of the
  482.   body.
  483.  
  484.   It is impossible to foresee the many forms documents will take so the
  485.   standard for a document header must be flexible.  The approach here is
  486.   to define a set of basic fields and allow addition of whatever fields
  487.   are necessary.  Features added in this fashion may not be understood
  488.   by others.
  489.  
  490.   The minimum document is a property list of the following fields:
  491.  
  492.     Name     Value
  493.     ----     -----
  494.     DATE     date string (name)
  495.     SENDER   a mailbox
  496.     SUBJECT  subject string (text)
  497.     BODY     a data structure
  498.  
  499.   A typical document is a property list containing the following fields:
  500.  
  501.     Name     Value
  502.     ----     -----
  503.     DATE     date string (name)
  504.     SENDER   a mailbox
  505.     FROM     list of mailboxes
  506.     TO       list of mailboxes
  507.     CC       list of mailboxes
  508.     SUBJECT  subject string (text)
  509.     BODY     a data structure
  510.  
  511.  
  512.  
  513.  
  514.  
  515. Postel                                                          [Page 3]
  516.  
  517.  
  518.                                                              August 1980
  519. A Structured Format for Transmission of Multi-Media Documents
  520. Specification
  521.  
  522.  
  523.  
  524.   An elaborate document might contain the following fields:
  525.  
  526.     Name        Value
  527.     ----        -----
  528.     DATE        date string (name)
  529.     SENDER      a mailbox
  530.     FROM        list of mailboxes
  531.     TO          list of mailboxes
  532.     CC          list of mailboxes
  533.     BCC         list of mailboxes
  534.     REPLY-TO    list of mailboxes
  535.     SUBJECT     subject string (text)
  536.     COMMENTS    comment string (text)
  537.     MESSAGE-ID  message identifier of this message (text)
  538.     IN-REPLY-TO message identifier of previous message (text)
  539.     REFERENCES  message identifiers of other messages (text)
  540.     KEYWORDS    key terms used in this message (text)
  541.     BODY        a data structure
  542.  
  543.   One of the key objects is the mailbox.  It appears in the sender,
  544.   from, to, cc, bcc, and reply-to fields.  The mailbox is a property
  545.   list of objects that combine to specify a destination recipient for a
  546.   message.  Most of the <name,value> pairs that make up a mailbox are
  547.   identical to those used in the deliver command in the Internet Message
  548.   Protocol [1].  A few additional <name,value> pairs are defined for use
  549.   in a mailbox in the document context.  In particular, there is a field
  550.   for the real name of a person in contrast to the "user name" which
  551.   identifies a computer account.
  552.  
  553.   In addition there is a field to specify a distribution group name.
  554.   Such group names are used to indicate that a document is being sent to
  555.   a group of recipients.  This essentially presents an alternate form
  556.   for a mailbox which consists of the single <name,value> pair for the
  557.   group name.  There is no required relationship between a group name
  558.   mailbox and other mailboxes in the same list.
  559.  
  560.   For example, all of the following situations are allowed:
  561.  
  562.     .  a mailbox list consisting of a single mailbox specifying a
  563.        particular user,
  564.  
  565.     .  a mailbox list consisting of a single mailbox with a group name,
  566.  
  567.     .  a mailbox list consisting of a mailbox with a group name and a
  568.        mailbox specifying a particular user, with either the user in or
  569.        not in the group,
  570.  
  571.     .  a mailbox list consisting of a mailbox with a group name and a
  572.  
  573.  
  574. [Page 4]                                                          Postel
  575.  
  576.  
  577. August 1980                                                             
  578.            A Structured Format for Transmission of Multi-Media Documents
  579.                                                            Specification
  580.  
  581.  
  582.  
  583.        several mailboxes specifying a particular users, with some users
  584.        in the group and some not,
  585.  
  586.     .  a mailbox list consisting of several mailboxes specifying group
  587.        names and a several mailboxes specifying a particular users, with
  588.        some users in the groups and some not.
  589.  
  590.     
  591.  
  592. 2.2.  Message Objects
  593.  
  594.   In the documents of messages, we use a set of objects such as mailbox
  595.   or date.  These objects are encoded in basic data elements.  Some
  596.   objects are simple things like integers or character strings, other
  597.   objects are more complex things like lists or property lists.  The
  598.   following is a list of the objects used in messages.  The object
  599.   descriptions are in alphabetical order.
  600.  
  601.   Account
  602.  
  603.     The account information.  Represented by a name element.
  604.  
  605.   Address
  606.  
  607.     Address is intended to contain the minimum information necessary to
  608.     identify a user, and no more (compare with mailbox).
  609.  
  610.     An address is a property list which contains the following
  611.     <name,value> pairs:
  612.  
  613.       name    description
  614.       ----    -----------
  615.       NET     network name
  616.       HOST    host name
  617.       USER    user name
  618.  
  619.     or:
  620.  
  621.       name    description
  622.       ----    -----------
  623.       MPM     mpm-identifier
  624.       USER    user name
  625.  
  626.   Answer
  627.  
  628.     A yes (true) or no (false) answer to a question.  Represented by a
  629.     boolean element.
  630.  
  631.  
  632.  
  633. Postel                                                          [Page 5]
  634.  
  635.  
  636.                                                              August 1980
  637. A Structured Format for Transmission of Multi-Media Documents
  638. Specification
  639.  
  640.  
  641.  
  642.   BCC
  643.  
  644.     A list of mailboxes.  The addresses of those who receive "blind
  645.     carbon copies" of the message.
  646.  
  647.   Body
  648.  
  649.     A data structure.  This may be as simple as a character string
  650.     (represented by a name or text element), or complex structure of
  651.     lists.  It may be encrypted in part or in whole.  Section 3.3
  652.     describes some possible structured bodies.
  653.  
  654.   C
  655.  
  656.     A character.  Represented by a name element.
  657.  
  658.   CC
  659.  
  660.     A list of mailboxes.  When copies of a message are sent to others in
  661.     addition to the addresses in the To object, those to whom the copies
  662.     are sent will have their addresses recorded here.
  663.  
  664.   City
  665.  
  666.     A city.  Represented by a name element.
  667.  
  668.   Comments
  669.  
  670.     A comment string.  Represented by a text element.
  671.  
  672.   Count
  673.  
  674.     A count of items of some sort.  Represented by a integer element.
  675.  
  676.   Country
  677.  
  678.     A country.  Represented by a name element.
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692. [Page 6]                                                          Postel
  693.  
  694.  
  695. August 1980                                                             
  696.            A Structured Format for Transmission of Multi-Media Documents
  697.                                                            Specification
  698.  
  699.  
  700.  
  701.   Date
  702.  
  703.     The date and time are represented according to the International
  704.     Standards Organization (ISO) recommendations [19,20,21].  Taken
  705.     together the ISO recommendations 2014, 3307, and 4031 result in the
  706.     following representation of the date and time:
  707.  
  708.       yyyy-mm-dd-hh:mm:ss,fff+hh:mm
  709.  
  710.     Where yyyy is the four-digit year, mm is the two-digit month, dd is
  711.     the two-digit day, hh is the two-digit hour in 24 hour time, mm is
  712.     the two-digit minute, ss is the two-digit second, and fff is the
  713.     decimal fraction of the second.  To this basic date and time is
  714.     appended the offset from Greenwich as plus or minus hh hours and mm
  715.     minutes.
  716.  
  717.     The time is local time and the offset is the difference between
  718.     local time and Coordinated Universal Time (UTC).  To convert from
  719.     local time to UTC algebraically subtract the offset from the local
  720.     time.
  721.  
  722.     For example, when the time in
  723.               Los Angeles is  14:25:00-08:00
  724.               the UTC is      22:25:00
  725.  
  726.     or when the time in
  727.               Paris is        11:43:00+01:00
  728.               the UTC is      10:43:00
  729.  
  730.   Device
  731.  
  732.     A device name.  Represented by a name element.
  733.  
  734.   Document
  735.  
  736.     A property list of fields.
  737.  
  738.   Distribution Group
  739.  
  740.     An distribution group is a property list which contains the
  741.     following <name,value> pair:
  742.  
  743.       name    description
  744.       ----    -----------
  745.       GROUP   document distribution group name
  746.  
  747.     This construct is used so that a distribution group will be a
  748.     special case of a mailbox.
  749.  
  750.  
  751. Postel                                                          [Page 7]
  752.  
  753.  
  754.                                                              August 1980
  755. A Structured Format for Transmission of Multi-Media Documents
  756. Specification
  757.  
  758.  
  759.  
  760.   Facsimile Structure
  761.  
  762.     A facsimile data structure.  Represented by a property list.
  763.  
  764.   File
  765.  
  766.     A file name.  Represented by a name element.
  767.  
  768.   Format
  769.  
  770.     A format indicator.  Represented by a name element.
  771.  
  772.   From
  773.  
  774.     A list of mailboxes.  The From is the name of the author of a
  775.     document.
  776.  
  777.   Graphics Structure
  778.  
  779.     A graphics data structure.  Represented by a property list.
  780.  
  781.   Group
  782.  
  783.     A document distribution group name.  Represented by a name element.
  784.  
  785.   Host
  786.  
  787.     A host name.  Represented by a name element.
  788.  
  789.   Ident
  790.  
  791.     The identifier of a person, usually their initials.  Represented by
  792.     a name element.
  793.  
  794.   In-Reply-To
  795.  
  796.     The message identifier of previous message.  Represented by a text
  797.     element.
  798.  
  799.   Internet Address
  800.  
  801.     This identifies a host in the ARPA internetwork environment.  The
  802.     internet address is a 32 bit number, the higher order 8 bits
  803.     identify the network, and the lower order 24 bits identify the host
  804.     on that network [22].  For use in this format the internet address
  805.     is divided into eight bit fields and the value of each field is
  806.     represented in decimal digits.  For example, the ARPANET address of
  807.     ISIE is 167837748 and is represented as 10,1,0,52.  Further, this
  808.  
  809.  
  810. [Page 8]                                                          Postel
  811.  
  812.  
  813. August 1980                                                             
  814.            A Structured Format for Transmission of Multi-Media Documents
  815.                                                            Specification
  816.  
  817.  
  818.  
  819.     representation may be extended to include an address within a host,
  820.     such as the TCP port of an MPM, for example, 10,1,0,52,0,45.
  821.  
  822.   Keywords
  823.  
  824.     The key terms used in this message.  Represented by a text element.
  825.  
  826.   Mailbox
  827.  
  828.     This is the destination address of a user of the internetwork mail
  829.     system.  Mailbox contains information such as network, host,
  830.     location, and local user identifier of the recipient of the message.
  831.     The mailbox may contain information in addition to the minimum
  832.     required for delivery.
  833.  
  834.     As an example, when one sends a message to someone for the first
  835.     time, he may include many items to aid in identifying the correct
  836.     recipient.  However, once he gets a reply to this message, the reply
  837.     will contain an Address (as opposed to Mailbox) which may be used
  838.     from then on.
  839.  
  840.       A mailbox is a property list.  A mailbox might contain the
  841.       following <name,value> pairs:
  842.  
  843.         name    description
  844.         ----    -----------
  845.         MPM     mpm-identifier
  846.         NET     network name
  847.         HOST    host name
  848.         PORT    address of MPM within the host
  849.         USER    user name (computer account name)
  850.         PERSON  the real name of a person
  851.         GROUP   document distribution group
  852.         ORG     organization name
  853.         CITY    city
  854.         STATE   state
  855.         COUNTRY country
  856.         ZIP     zip code
  857.         PHONE   phone number
  858.  
  859.     The minimum mail box is an Address or a Distribution Group.
  860.  
  861.   Message-ID
  862.  
  863.     The message identifier of this message.  This is not related to the
  864.     MPM message identification, but is a UIP long term document
  865.     identifier.  Represented by a text element.
  866.  
  867.  
  868.  
  869. Postel                                                          [Page 9]
  870.  
  871.  
  872.                                                              August 1980
  873. A Structured Format for Transmission of Multi-Media Documents
  874. Specification
  875.  
  876.  
  877.  
  878.   MPM-Identifier
  879.  
  880.     The internetwork address of an MPM.  This may be the ARPA Internet
  881.     Address or an X.121 Public Data Network Address [23].  The
  882.     mpm-identifier is a property list which has one <name,value> pair.
  883.     This unusual structure is used so that it will be easy to determine
  884.     the type of address used.
  885.  
  886.   Net
  887.  
  888.     A network name.  Represented by a name element.
  889.  
  890.   NLS Block
  891.  
  892.     The information in an NLS node.  Represented by a property list.
  893.  
  894.   NLS Node
  895.  
  896.     An NLS block and substructure.  Represented by a property list.
  897.  
  898.   NLS Substructure
  899.  
  900.     A list of NLS nodes.  Represented by a list.
  901.  
  902.   Org
  903.  
  904.     An organization name.  Represented by a name element.
  905.  
  906.   Paragraph
  907.  
  908.     A paragraph of text.  Represented by a text element.
  909.  
  910.   Parcel
  911.  
  912.     The basic unit of voice data.  Represented by a bitstr element.
  913.  
  914.   Person
  915.  
  916.     The real name of a person.  Represented by a name element.
  917.  
  918.   Password
  919.  
  920.     A password.  Represented by a name element.
  921.  
  922.   Phone
  923.  
  924.     A phone number.  Represented by a name element.
  925.  
  926.  
  927.  
  928. [Page 10]                                                         Postel
  929.  
  930.  
  931. August 1980                                                             
  932.            A Structured Format for Transmission of Multi-Media Documents
  933.                                                            Specification
  934.  
  935.  
  936.  
  937.   Pointer
  938.  
  939.     A pointer to information stored outside this data structure.  A
  940.     property list containing the information necessary to locate the
  941.     external data, the information necessary to gain access to the
  942.     external data, and the information necessary to apply the correct
  943.     interpretation to the external data.  For example, this might
  944.     include:
  945.  
  946.       name       description
  947.       ----       -----------
  948.       NET        network name
  949.       HOST       host name
  950.       FILE       file name
  951.       USER       user name (computer account name)
  952.       PASSWORD   password
  953.       ACCOUNT    account
  954.       FORMAT     format
  955.  
  956.   Port
  957.  
  958.     The address of MPM within the host.  Represented by a name element.
  959.  
  960.   Presentation Descriptor
  961.  
  962.     A property list of <name,value> pairs, where the name is an order
  963.     indicator, and the value is a presentation element.  The order
  964.     indicators are SEQUENTIAL, SIMULTANEOUS, and INDEPENDENT.
  965.  
  966.   Presentation Element
  967.  
  968.     A property list of media structures.
  969.  
  970.   Protocol
  971.  
  972.     The name of the coding scheme used for a medium.  Represented by a
  973.     name element.
  974.  
  975.   References
  976.  
  977.     The message identifiers of other messages.  Represented by a list of
  978.     text elements.
  979.  
  980.   Reply-To
  981.  
  982.     A list of mailboxes.  Sometimes it will be desired to direct the
  983.     replies of a message to some address other than the from or the
  984.     sender.  In such a case the reply-to object can be used.
  985.  
  986.  
  987. Postel                                                         [Page 11]
  988.  
  989.  
  990.                                                              August 1980
  991. A Structured Format for Transmission of Multi-Media Documents
  992. Specification
  993.  
  994.  
  995.  
  996.   R 450 Block
  997.  
  998.     The unit of Rapicom 450 data (585 bits).  Represented by a bitstr
  999.     element.
  1000.  
  1001.   Sender
  1002.  
  1003.     A mailbox.  The sender will contain the address of the individual
  1004.     who sent the message.  In some cases this is NOT the same as the
  1005.     author of the message.  Under such a condition, the author should be
  1006.     specified in the from object.
  1007.  
  1008.   SID
  1009.  
  1010.     An NLS statement indetifier.  Represented by a integer element.
  1011.  
  1012.   State
  1013.  
  1014.     A state name.  Represented by a name element.
  1015.  
  1016.   Subject
  1017.  
  1018.     The subject of the message.  Represented by a text element.
  1019.  
  1020.   Text Structure
  1021.  
  1022.     A text data structure.  Represented by a property list.
  1023.  
  1024.   To
  1025.  
  1026.     A list of mailboxes.  To identifies the addressees of the message.
  1027.  
  1028.   User
  1029.  
  1030.     A user name (computer account name).  Represented by a name element.
  1031.  
  1032.   Version
  1033.  
  1034.     A version number.  Represented by a index element.
  1035.  
  1036.   Vocoder
  1037.  
  1038.     A vocoder name.  Represented by a name element.
  1039.  
  1040.   Voice Structure
  1041.  
  1042.     A voice data structure.  Represented by a property list.
  1043.  
  1044.  
  1045.  
  1046. [Page 12]                                                         Postel
  1047.  
  1048.  
  1049. August 1980                                                             
  1050.            A Structured Format for Transmission of Multi-Media Documents
  1051.                                                            Specification
  1052.  
  1053.  
  1054.  
  1055.   X121 Address
  1056.  
  1057.     This identifies a host in the Public Data Network environment.  When
  1058.     used as a part of identifier, it identifies the originating host of
  1059.     a message.  The X121 address is a sequence of up to 14 digits [23].
  1060.     For use in this format the X121 address is represented in decimal
  1061.     digits.
  1062.  
  1063.   ZIP
  1064.  
  1065.     A zip code.  Represented by a name element.
  1066.  
  1067. 2.3.  Body Structures
  1068.  
  1069.   2.3.1.  Simple Elements
  1070.  
  1071.     The body could simply be a single data element.  For example a
  1072.     single text element can represent a lengthy character string.
  1073.  
  1074.       <body> := TEXT
  1075.  
  1076.       or
  1077.  
  1078.       text:"this is the actual text of the body"
  1079.  
  1080.   2.3.2.  Structured Text
  1081.  
  1082.     The body could be thought of as paragraphs, where each paragraph is
  1083.     represented by a text element.  The paragraphs are then the elements
  1084.     of a list.
  1085.  
  1086.       <body> := LIST (<paragraph>, <paragraph>, ...)
  1087.  
  1088.         <paragraph> := TEXT
  1089.  
  1090.       or
  1091.  
  1092.       list:(text:"paragraph one", text:"paragraph two", ...)
  1093.  
  1094.   2.3.3.  NLS File Example
  1095.  
  1096.     It is possible to represent the data from NLS files in this format.
  1097.     NLS is a large multipurpose system which operates on structured data
  1098.     files.  The files are tree structured, and there is data associated
  1099.     with each node of the tree.  There are several fields associated
  1100.     with each node as well.
  1101.  
  1102.  
  1103.  
  1104.  
  1105. Postel                                                         [Page 13]
  1106.  
  1107.  
  1108.                                                              August 1980
  1109. A Structured Format for Transmission of Multi-Media Documents
  1110. Specification
  1111.  
  1112.  
  1113.  
  1114.     An NLS file is:
  1115.  
  1116.       proplist(                                                     file
  1117.         name:"FILENAME", name:<file>                        name of file
  1118.         name:"CREATION-DATE", name:<date>         creation date and time
  1119.         name:"VERSION", index:<version>              file version number
  1120.         name:"SID-COUNT", integer<count>               current SID count
  1121.         name:"LAST-WRITER", name:<ident>             last writer of file
  1122.         name:"OWNER", name:<ident>                         owner of file
  1123.         name:"LAST-WRITE-TIME", name:<date>     last write date and time
  1124.         name:"LEFT-NAME-DELIM-DEFAULT", name:<c>            default name
  1125.         name:"RIGHT-NAME-DELIM-DEFAULT", name:<c>             delimiters
  1126.         name:"SUBSTRUCTURE", <nls-substructure>             substructure
  1127.       )endlist
  1128.  
  1129.     An NLS substructure is:
  1130.  
  1131.       list:(                                                substructure
  1132.         <nls-node>                                 node is defined below
  1133.           .
  1134.           .
  1135.           .
  1136.       )endlist
  1137.  
  1138.     An NLS node is:
  1139.  
  1140.       proplist:(                                                    node
  1141.         name:"BLOCK", <nls-block>                    block defined below
  1142.         name:"SUBSTRUCTURE", <nls-substructure>             substructure
  1143.       )endlist
  1144.  
  1145.     An NLS block is:
  1146.  
  1147.       proplist:(                                                   block
  1148.         name:"LEFT-NAME-DELIM", name:<c>             left name delimiter
  1149.         name:"RIGHT-NAME-DELIM", name:<c>           right name delimiter
  1150.         name:"SID", integer:<sid>                             SID number
  1151.         name:"CREATOR", name:<ident>                   statement creator
  1152.         name:"CREATION-TIME", name:<date>         creation date and time
  1153.         name:"DATA", <data>                           data defined below
  1154.       )endlist
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164. [Page 14]                                                         Postel
  1165.  
  1166.  
  1167. August 1980                                                             
  1168.            A Structured Format for Transmission of Multi-Media Documents
  1169.                                                            Specification
  1170.  
  1171.  
  1172.  
  1173.     NLS data is:
  1174.  
  1175.       proplist:(                                                    data
  1176.         name:"<a data name>", <type depends on data name>
  1177.                     .           .
  1178.                     .           .
  1179.                     .           .
  1180.       )endlist
  1181.  
  1182.     For text, data is:
  1183.  
  1184.       proplist:(                                                    data
  1185.         name:"TEXT", text:"text of statement"                       text
  1186.       )endlist
  1187.  
  1188.   2.3.4.  Multimedia Structures
  1189.  
  1190.     One can conceive of graphical information being displayed along with
  1191.     a running commentary, much as seminars use slides.  A slide and its
  1192.     description are tied together.  The coordination of such a
  1193.     presentation is central to its understanding.  This synchronization
  1194.     should be captured within the document structure.
  1195.  
  1196.     There are three fundamentally different types of time ordered
  1197.     control which are needed within the document structure.  These are:
  1198.  
  1199.       Simultaneous
  1200.       Sequential
  1201.       Independent
  1202.  
  1203.     Simultaneous data is intended for synchronous presentation.  The
  1204.     implication is that this data is presented in parallel.
  1205.  
  1206.     Sequential data items will be presented one at a time, in the order
  1207.     listed.  The ordering is strictly left to right.
  1208.  
  1209.     Independent data can be presented in any time order.  It is not
  1210.     ordered in any manner.
  1211.  
  1212.     The data is broken into small information units called presentation
  1213.     elements or PEs.  The PEs can be combined in structures to control
  1214.     the presentation order.  A PE is a property list of elements
  1215.     representing information of various media.  For example:
  1216.  
  1217.       <pe> := proplist(
  1218.                 name:"VOICE", <voice-structure>,
  1219.                 name:"GRAPHICS", <graphics-structure>
  1220.               )endlist
  1221.  
  1222.  
  1223. Postel                                                         [Page 15]
  1224.  
  1225.  
  1226.                                                              August 1980
  1227. A Structured Format for Transmission of Multi-Media Documents
  1228. Specification
  1229.  
  1230.  
  1231.  
  1232.     PEs are combined into larger controled presentations by
  1233.     presentation-descriptors or PDs.  A PD is a property list which
  1234.     specifies the type of time ordering of the PEs in its list.
  1235.  
  1236.       <pd> := <<seq>> | <<sim>> | <<ind>>
  1237.  
  1238.       <<seq>> := name:"SEQUENTIAL", <pe>
  1239.  
  1240.       <<sim>> := name:"SIMULTANEOUS", <pe>
  1241.  
  1242.       <<ind>> := name:"INDEPENDENT", <pe>
  1243.  
  1244.     A PE is a property list of the media <name,value> pairs, or PDs.
  1245.  
  1246.       <pe> := <<text>> | <<voice>> | <<facsimile>>
  1247.             | <<graphics>> | <pd>
  1248.  
  1249.       <<text>> := name:"TEXT", <text structure>
  1250.  
  1251.       <<voice>> := name:"VOICE", <voice structure>
  1252.  
  1253.       <<facsimile>> := name:"FACSIMILE", <facsimile structure>
  1254.  
  1255.       <<graphics>> := name:"GRAPHICS", <graphics structure>
  1256.  
  1257.     If more than one <name,value> pair is present within a PE the media
  1258.     are presented on different output devices in the order specified by
  1259.     the PE's parent PD.  The order of appearance within the proplist is
  1260.     important only in the event that the parent PD specified sequential
  1261.     ordering.
  1262.  
  1263.     The structure of multimedia messages which use this scheme will be
  1264.     demonstrated by a few simple examples chosen to illustrate a basic
  1265.     text document and the different ordering options.  The last example
  1266.     will suggest some more exotic uses.
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282. [Page 16]                                                         Postel
  1283.  
  1284.  
  1285. August 1980                                                             
  1286.            A Structured Format for Transmission of Multi-Media Documents
  1287.                                                            Specification
  1288.  
  1289.  
  1290.  
  1291.     Plain Text Message
  1292.  
  1293.       A simple text body could be represented in a single text data
  1294.       structure.  To give the simplest example of a structured body we
  1295.       show a simple text body represented in the multimedia structure.
  1296.  
  1297.         <body> := <pd>
  1298.  
  1299.           <pd> := <<seq>>
  1300.  
  1301.             <<seq>> :=  name:"SEQUENTIAL", <pe>
  1302.  
  1303.               <pe> := name:"TEXT", <text structure>
  1304.  
  1305.         or
  1306.  
  1307.         proplist: (name:"SEQUENTIAL",
  1308.                   proplist:(
  1309.                     name:"TEXT", <text structure>
  1310.                   )endlist
  1311.         )endlist
  1312.  
  1313.     Simultaneous Ordering
  1314.  
  1315.       This ordering option is used to indicate when separate streams are
  1316.       to be presented in parallel.  For example, assume GRAPHICS and
  1317.       VOICE data were to be presented using simultaneously.
  1318.  
  1319.         <body> := <pd>
  1320.  
  1321.           <pd> := <<sim>>
  1322.  
  1323.             <<sim>> :=  name:"SIMULTANEOUS", <pe>
  1324.  
  1325.               <pe> := name:"VOICE", <voice structure>
  1326.                       name:"GRAPHICS", <graphics structure>
  1327.  
  1328.         or
  1329.  
  1330.         proplist:(
  1331.           name:"SIMULTANEOUS",
  1332.             proplist:(
  1333.               name:"VOICE", <voice structure>
  1334.               name:"GRAPHICS", <graphics structure>
  1335.             )endlist
  1336.         )endlist
  1337.  
  1338.  
  1339.  
  1340.  
  1341. Postel                                                         [Page 17]
  1342.  
  1343.  
  1344.                                                              August 1980
  1345. A Structured Format for Transmission of Multi-Media Documents
  1346. Specification
  1347.  
  1348.  
  1349.  
  1350.     Sequential Ordering
  1351.  
  1352.       This option is used to indicate sequential time ordering.  The
  1353.       media in the sub-tree below this PD are not separate streams.
  1354.       Using again the example above, assume GRAPHICS and VOICE data were
  1355.       to be presented using sequential ordering.
  1356.  
  1357.         <body> := <pd>
  1358.  
  1359.           <pd> := <<seq>>
  1360.  
  1361.             <<seq>> :=  name:"SEQUENTIAL", <pe>
  1362.  
  1363.               <pe> := name:"VOICE", <voice structure>
  1364.                       name:"GRAPHICS", <graphics structure>
  1365.  
  1366.         or
  1367.  
  1368.         proplist:(
  1369.           name:"SEQUENTIAL",
  1370.             proplist:(
  1371.               name:"VOICE", <voice structure>
  1372.               name:"GRAPHICS", <graphics structure>
  1373.             )endlist
  1374.         )endlist
  1375.  
  1376.     Independent Ordering
  1377.  
  1378.       It is apparent that some output devices are very slow in
  1379.       comparison to others.  An example which demonstrates this is
  1380.       facsimile.  The majority of facsimile devices are slow.  A
  1381.       detailed picture transmitted at 9600 baud takes minutes to print.
  1382.       It is inconvenient for the user to wait on such a device when the
  1383.       voice or text information which accompanies it is short.
  1384.  
  1385.       For example, if the document a facsimile image and the text
  1386.       "Hello Frank, here's a copy of that picture you requested."  The
  1387.       user need not wait for the picture.  The facsimile machine might
  1388.       be spooled, in which case he would pick up the picture later.  In
  1389.       a sense the picture was time independent of the text.
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400. [Page 18]                                                         Postel
  1401.  
  1402.  
  1403. August 1980                                                             
  1404.            A Structured Format for Transmission of Multi-Media Documents
  1405.                                                            Specification
  1406.  
  1407.  
  1408.  
  1409.         <body> := <pd>
  1410.  
  1411.           <pd> := <<ind>>
  1412.  
  1413.             <<ind>> :=  name:"INDEPENDENT", <pe>
  1414.  
  1415.               <pe> := name:"FACSIMILE", <facsimile structure>
  1416.                       name:"TEXT", <text structure>
  1417.  
  1418.         or
  1419.  
  1420.         proplist:(
  1421.           name:"INDEPENDENT",
  1422.             proplist:(
  1423.               name:"FACSIMILE", <facsimile structure>
  1424.               name:"TEXT", <text structure>
  1425.             )endlist
  1426.         )endlist
  1427.  
  1428.     A Stream Example
  1429.  
  1430.       By making use of the structure and the sequential ordering option
  1431.       it is possible to initiate a stream.  The stream will proceed at
  1432.       its own pace until concluded.
  1433.  
  1434.         <body> := <pd>
  1435.  
  1436.           <pd> := <<seq>>
  1437.  
  1438.             <<seq>> :=  name:"SEQUENTIAL", <pe>
  1439.  
  1440.               <pe> := <pd>
  1441.  
  1442.                 <pd> := <<sim>>
  1443.  
  1444.                   <<sim>> :=  name:"SIMULTANEOUS", <pe>
  1445.  
  1446.                     <pe> := name:"VOICE", <voice structure>
  1447.                             name:"GRAPHICS", <graphics structure>
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459. Postel                                                         [Page 19]
  1460.  
  1461.  
  1462.                                                              August 1980
  1463. A Structured Format for Transmission of Multi-Media Documents
  1464. Specification
  1465.  
  1466.  
  1467.  
  1468.         or
  1469.  
  1470.         proplist:(
  1471.           name:"SEQUENTIAL",
  1472.             proplist:(
  1473.               name:"SIMULTANEOUS",
  1474.                 proplist:(
  1475.                   name:"VOICE", <voice structure>
  1476.                   name:"GRAPHICS", <graphics structure>
  1477.                 )endlist,
  1478.               name:"SIMULTANEOUS",
  1479.                 proplist:(
  1480.                   name:"VOICE", <voice structure>
  1481.                   name:"GRAPHICS", <graphics structure>
  1482.                 )endlist,
  1483.               .
  1484.               .
  1485.               .
  1486.             )endlist
  1487.         )endlist
  1488.  
  1489.       Such a document structure suggests a slide presentation.
  1490.  
  1491.     Multiple Active Stream Example
  1492.  
  1493.       This example is exotic but illustrates what is possible. By making
  1494.       use of the structure and the simultaneous ordering it is possible
  1495.       to start in parallel two or more separate streams. Each stream
  1496.       will proceed at its own pace until all are concluded.
  1497.  
  1498.         <body> := <pd>
  1499.  
  1500.           <pd> := name:"SIMULTANEOUS", <pe>
  1501.  
  1502.             <pe> = <pd>
  1503.  
  1504.               <pd> := name:"SEQUENTIAL", <pe>
  1505.  
  1506.                 <pe> = <pd>
  1507.  
  1508.                   <pd> := name:"SIMULTANEOUS", <pe>
  1509.  
  1510.                     <pe> := name:"VOICE",
  1511.                                                        <voice structure>
  1512.                             name:"GRAPHICS",
  1513.                                                     <graphics structure>
  1514.  
  1515.  
  1516.  
  1517.  
  1518. [Page 20]                                                         Postel
  1519.  
  1520.  
  1521. August 1980                                                             
  1522.            A Structured Format for Transmission of Multi-Media Documents
  1523.                                                            Specification
  1524.  
  1525.  
  1526.  
  1527.         or
  1528.  
  1529.         proplist:(
  1530.          name:"SIMULTANEOUS",
  1531.            proplist:(
  1532.              name:"SEQUENTIAL",
  1533.                proplist:(
  1534.                  name:"SIMULTANEOUS",
  1535.                    proplist:(
  1536.                      name:"VOICE", <voice structure>
  1537.                      name:"GRAPHICS", <graphics structure>
  1538.                    )endlist,
  1539.                  name:"SIMULTANEOUS",
  1540.                     proplist:(
  1541.                       name:"VOICE", <voice structure>
  1542.                       name:"GRAPHICS", <graphics structure>
  1543.                     )endlist,
  1544.                  .
  1545.                  .
  1546.                  .
  1547.                )endlist
  1548.              name:"SEQUENTIAL",
  1549.                proplist:(
  1550.                  name:"SIMULTANEOUS",
  1551.                    proplist:(
  1552.                      name:"VOICE", <voice structure>
  1553.                      name:"GRAPHICS", <graphics structure>
  1554.                    )endlist,
  1555.                  .
  1556.                  .
  1557.                  .
  1558.                )endlist
  1559.            )endlist
  1560.         )endlist
  1561.  
  1562.   2.3.5.  The Media
  1563.  
  1564.     So far no explicit description has been given for the media classes
  1565.     which fit into a PE.  It is not known what types of media will be
  1566.     supported in the various document stations in the future. Those for
  1567.     which support is in part already available are:
  1568.  
  1569.       TEXT
  1570.       VOICE
  1571.       FACSIMILE
  1572.       GRAPHICS
  1573.  
  1574.     Standard formats for data in each of these media must be defined.
  1575.  
  1576.  
  1577. Postel                                                         [Page 21]
  1578.  
  1579.  
  1580.                                                              August 1980
  1581. A Structured Format for Transmission of Multi-Media Documents
  1582. Specification
  1583.  
  1584.  
  1585.  
  1586.   2.3.6.  TEXT
  1587.  
  1588.     The text data may be structured according to a variety of protocols
  1589.     (yet to be defined).  The top level of the data structure is a
  1590.     property list which identifies the protocol, and the version of that
  1591.     protocol.
  1592.  
  1593.       name:"TEXT", proplist:(
  1594.                       name:"PROTOCOL", <protocol>,
  1595.                       name:"VERSION", <version>,
  1596.                       name:"DATA", <data>
  1597.                     )endlist
  1598.  
  1599.     The first protocol is called PARAGRAPH, and the data is a list of
  1600.     paragraphs, where each paragraph is a text element.
  1601.  
  1602.       name:"DATA", list:(
  1603.                      text: <paragraph>
  1604.                      text: <paragraph>
  1605.                      .
  1606.                      .
  1607.                      .
  1608.                    )endlist
  1609.  
  1610.   2.3.7.  VOICE
  1611.  
  1612.     Since a good deal of research has been done towards implementing the
  1613.     transmission of voice data on the ARPANET, the Network Voice
  1614.     Protocol (NVP) provides the basis for the standard for voice data
  1615.     [24].
  1616.  
  1617.     Voice data a property list which specifies the vocoder being used,
  1618.     the transmission protocol and the parcel data.  The parcel data form
  1619.     is specific to the protocol used and is grouped in lists.
  1620.  
  1621.       name:"VOICE", proplist:(
  1622.                       name:"VOCODER", <vocoder>,
  1623.                       name:"PROTOCOL", <protocol>,
  1624.                       name:"VERSION", <version>,
  1625.                       name:"DATA", <data>
  1626.                     )endlist
  1627.  
  1628.     The NVP protocol has a number of parameters, the version number
  1629.     specifies a certain set of the parameters used by the vocoder
  1630.     hardware and software to set up timing and define the type of coding
  1631.     used.  It is not expected that within a document the version number
  1632.     will change.
  1633.  
  1634.  
  1635.  
  1636. [Page 22]                                                         Postel
  1637.  
  1638.  
  1639. August 1980                                                             
  1640.            A Structured Format for Transmission of Multi-Media Documents
  1641.                                                            Specification
  1642.  
  1643.  
  1644.  
  1645.     NVP itself supports negotiation of these parameters to insure both
  1646.     ends of a network speech connection 'understand' one another.  Since
  1647.     no such interactive negotiation is possible in a document system,
  1648.     negotiation capabilities have been excluded.  As differing hardware
  1649.     becomes available new versions may be defined.
  1650.  
  1651.     For the NVP protocol the data list will take the following form:
  1652.  
  1653.       name:"DATA", list:(
  1654.                      bitstr: <parcel>
  1655.                      bitstr: <parcel>
  1656.                      .
  1657.                      .
  1658.                      .
  1659.                    )endlist
  1660.  
  1661.     The items in the list are parcels.  The individual parcels  are bit
  1662.     string data elements whose contents and length are predefined by the
  1663.     version number.  The number of parcels in a parcel group is
  1664.     available from the item count in the enclosing list header.
  1665.  
  1666.   2.3.8.  FACSIMILE
  1667.  
  1668.     There are a number of facsimile devices in use.  While standards are
  1669.     being established by CCITT [25], of the devices available today many
  1670.     are incompatible due to proprietary compression algorithms.  The
  1671.     description of fax data will allow for the possibility of several
  1672.     protocols.
  1673.  
  1674.       name:"FACSIMILE", proplist:(
  1675.                           name:"DEVICE", <device>,
  1676.                           name:"PROTOCOL", <protocol>,
  1677.                           name:"DATA", <data>
  1678.                         )endlist
  1679.  
  1680.     There are few facsimile devices interfaced to computers though, and
  1681.     the existing experiments in the ARPANET all use the RAPICOM 450.  A
  1682.     first facsimile standard format will be based on the data structure
  1683.     used for this machine [26].  That is, for device RAPICOM450 and
  1684.     protocol BLOCK, the data will be:
  1685.  
  1686.       name:"DATA", list:(
  1687.                      bitstr:<r450-block>,
  1688.                      bitstr:<r450-block>,
  1689.                      .
  1690.                      .
  1691.                      .
  1692.                    )endlist
  1693.  
  1694.  
  1695. Postel                                                         [Page 23]
  1696.  
  1697.  
  1698.                                                              August 1980
  1699. A Structured Format for Transmission of Multi-Media Documents
  1700. Specification
  1701.  
  1702.  
  1703.  
  1704.     Where an r450-block is a 585 bit unit.
  1705.  
  1706.   2.3.9.  GRAPHICS
  1707.  
  1708.     The situation for graphics bears much similarity to facsimile.
  1709.     Devices on the market today have a variety of user interfaces and
  1710.     options. A similar structure is defined.
  1711.  
  1712.       name:"GRAPHICS", proplist:(
  1713.                           name:"DEVICE", <device>,
  1714.                           name:"PROTOCOL", <protocol>,
  1715.                           name:"DATA", <data>
  1716.                         )endlist
  1717.  
  1718.     There are several candidate protocols for use in describing graphics
  1719.     data in documents.  One is the Network Graphics Protocol [27],
  1720.     another is the Graphics Language [28,29], and a third is the
  1721.     SIGGRAPH Core System [30].
  1722.  
  1723.  
  1724.  
  1725.  
  1726.  
  1727.  
  1728.  
  1729.  
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754. [Page 24]                                                         Postel
  1755.  
  1756.  
  1757. August 1980                                                             
  1758.            A Structured Format for Transmission of Multi-Media Documents
  1759.  
  1760.  
  1761.  
  1762.                         3.  EXAMPLES & SCENARIOS
  1763.  
  1764. Example 1:  Text Example
  1765.  
  1766.   Suppose we want to send the following message:
  1767.  
  1768.     Date: 1979-03-29-11:46-08:00
  1769.     From: Jon Postel <Postel@ISIF>
  1770.     Subject: Meeting Thursday
  1771.     To: Danny Cohen <Cohen@ISIB>
  1772.     CC: Linda
  1773.      
  1774.     Danny:
  1775.      
  1776.     Please mark your calendar for our meeting Thursday at 3 pm.
  1777.      
  1778.     --jon.
  1779.  
  1780.   It will be encoded in the structured format.  The following will
  1781.   present successive steps in the top down generation of this message.
  1782.   The identification and command portions of the messages will not be
  1783.   expanded here (see [1]).
  1784.  
  1785.   1.  message
  1786.  
  1787.   2.  (identification, command, document)
  1788.  
  1789.   3.  (ID:<<identification>>,
  1790.        CMD:<<command>>,
  1791.        DOC:( date, from, subject, to, cc, body))
  1792.  
  1793.   4.  (ID:<<identification>>,
  1794.        CMD:<<command>>,
  1795.        DOC:(DATE:date,
  1796.             FROM:from
  1797.             SUBJECT:subject,
  1798.             TO:to,
  1799.             CC:cc,
  1800.             BODY:body))
  1801.  
  1802.   5.  (ID:<<identification>>,
  1803.        CMD:<<command>>,
  1804.        DOC:(DATE: 1979-03-29-11:46-08:00,
  1805.             FROM: (NET:ARPANET,HOST:ISIF,USER:Postel,PERSON:Jon Postel),
  1806.             SUBJECT: Meeting Thursday,
  1807.             TO: (NET:ARPANET,HOST:ISIB,USER:Cohen,PERSON:Danny Cohen),
  1808.             CC: (NET:ARPANET,HOST:ISIF,USER:Linda),
  1809.             BODY:
  1810.               Danny:
  1811.  
  1812.  
  1813. Postel                                                         [Page 25]
  1814.  
  1815.  
  1816.                                                              August 1980
  1817. A Structured Format for Transmission of Multi-Media Documents
  1818. Examples & Scenarios
  1819.  
  1820.  
  1821.  
  1822.                
  1823.               Please mark your calendar for our meeting
  1824.               Thursday at 3 pm.
  1825.                
  1826.               --jon.))
  1827.  
  1828.   6.  PROPLIST:
  1829.        (ID:<<identification>>,
  1830.         CMD:<<command>>,
  1831.         DOC:
  1832.           PROPLIST:(
  1833.             DATE: 1979-03-29-11:46-08:00,
  1834.             FROM:
  1835.               LIST:(
  1836.                 PROPLIST:(
  1837.                   NET:ARPANET,
  1838.                   HOST:ISIF,
  1839.                   USER:Postel,
  1840.                   PERSON:Jon Postel,
  1841.                 )ENDLIST,
  1842.               )ENDLIST,
  1843.             SUBJECT: Meeting Thursday,
  1844.             TO:
  1845.               LIST:(
  1846.                 PROPLIST:(
  1847.                   NET:ARPANET,
  1848.                   HOST:ISIB,
  1849.                   USER:Cohen,
  1850.                   PERSON:Danny Cohen,
  1851.                 )ENDLIST,
  1852.               )ENDLIST,
  1853.             CC:
  1854.               LIST:(
  1855.                 PROPLIST:(
  1856.                   NET:ARPANET,
  1857.                   HOST:ISIF,
  1858.                   USER:Linda,
  1859.                 )ENDLIST,
  1860.               )ENDLIST,
  1861.             BODY:
  1862.               Danny:
  1863.                
  1864.               Please mark your calendar for our meeting
  1865.               Thursday at 3 pm.
  1866.                
  1867.               --jon.
  1868.           )ENDLIST
  1869.         )ENDLIST
  1870.  
  1871.  
  1872. [Page 26]                                                         Postel
  1873.  
  1874.  
  1875. August 1980                                                             
  1876.            A Structured Format for Transmission of Multi-Media Documents
  1877.                                                     Examples & Scenarios
  1878.  
  1879.  
  1880.  
  1881.   7.  proplist:(
  1882.         name:"ID", <<identification>>,
  1883.         name:"CMD", <<command>>,
  1884.         name:"DOC",
  1885.           proplist:(
  1886.             name:"DATE", name:"1979-03-29-11:46-08:00",
  1887.             name:"FROM",
  1888.               list:(
  1889.                 proplist:(
  1890.                   name:"NET", name:"ARPANET",
  1891.                   name:"HOST", name:"ISIF",
  1892.                   name:"USER", name:"Postel",
  1893.                   name:"PERSON", name:"Jon Postel",
  1894.                 )endlist,
  1895.               )endlist,
  1896.             name:"SUBJECT", text:"Meeting Thursday",
  1897.             name:"TO",
  1898.               list:(
  1899.                 proplist:(
  1900.                   name:"NET", name:"ARPANET",
  1901.                   name:"HOST", name:"ISIB",
  1902.                   name:"USER", name:"Cohen",
  1903.                   name:"PERSON", name:"Danny Cohen",
  1904.                 )endlist,
  1905.               )endlist,
  1906.             name:"CC",
  1907.               list:(
  1908.                 proplist:(
  1909.                   name:"NET", name:"ARPANET",
  1910.                   name:"HOST", name:"ISIF",
  1911.                   name:"USER", name:"Linda",
  1912.                 )endlist,
  1913.               )endlist,
  1914.             name:"BODY",
  1915.               text:"Danny:
  1916.                      
  1917.                     Please mark your calendar for our
  1918.                     meeting Thursday at 3 pm.
  1919.                      
  1920.                     --jon."
  1921.           )endlist
  1922.         )endlist
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928.  
  1929.  
  1930.  
  1931. Postel                                                         [Page 27]
  1932.  
  1933.  
  1934.                                                              August 1980
  1935. A Structured Format for Transmission of Multi-Media Documents
  1936. Examples & Scenarios
  1937.  
  1938.  
  1939.  
  1940. Example 2:  Multimedia Example
  1941.  
  1942.   
  1943.  
  1944.       proplist:(
  1945.         name:"ID", <<identification>>,
  1946.         name:"CMD", <<command>>,
  1947.         name:"DOC",
  1948.           proplist:(
  1949.             name:"DATE", name:"1980-08-06-11:46-08:00",
  1950.             name:"FROM",
  1951.               list:(
  1952.                 proplist:(
  1953.                   name:"NET", name:"ARPANET",
  1954.                   name:"HOST", name:"ISIF",
  1955.                   name:"USER", name:"Postel",
  1956.                   name:"PERSON", name:"Jon Postel",
  1957.                 )endlist,
  1958.               )endlist,
  1959.             name:"SUBJECT", text:"Multimedia Test Message",
  1960.             name:"TO",
  1961.               list:(
  1962.                 proplist:(
  1963.                   name:"GROUP", name:"Multimedia Experiment List",
  1964.                 )endlist,
  1965.               )endlist,
  1966.             name:"CC",
  1967.               list:(
  1968.                 proplist:(
  1969.                   name:"NET", name:"ARPANET",
  1970.                   name:"HOST", name:"ISIF",
  1971.                   name:"USER", name:"Linda",
  1972.                 )endlist,
  1973.               )endlist,
  1974.             name:"BODY",
  1975.               proplist:(
  1976.                 name:"SEQUENTIAL",
  1977.                   proplist:(
  1978.                     name:"TEXT",
  1979.                       proplist:(
  1980.                         name:"PROTOCOL", name:"PARAGRAPH",
  1981.                         name:"VERSION", index:"1",
  1982.                         name:"DATA",
  1983.                           list:(
  1984.                             text:"This is a test of multimedia mail."
  1985.                             text:"I hope you like it."
  1986.                           )endlist
  1987.                       )endlist
  1988.  
  1989.  
  1990. [Page 28]                                                         Postel
  1991.  
  1992.  
  1993. August 1980                                                             
  1994.            A Structured Format for Transmission of Multi-Media Documents
  1995.                                                     Examples & Scenarios
  1996.  
  1997.  
  1998.  
  1999.                     name:"SIMULTANEOUS",
  2000.                       proplist:(
  2001.                         name:"VOICE",
  2002.                           proplist:(
  2003.                             name:"VOCODER", name:<vocoder>,
  2004.                             name:"PROTOCOL", name:"NVP",
  2005.                             name:"VERSION", index:"1",
  2006.                             name:"DATA",
  2007.                               list:(
  2008.                                 bitstr:<parcel>
  2009.                                 bitstr:<parcel>
  2010.                               )endlist
  2011.                           )endlist
  2012.                         name:"GRAPHICS",
  2013.                           proplist:(
  2014.                             name:"DEVICE", name:<device>,
  2015.                             name:"PROTOCOL", name:<protocol>,
  2016.                             name:"VERSION", index:<version>,
  2017.                             name:"DATA",<data>
  2018.                               )endlist
  2019.                           )endlist
  2020.                       )endlist
  2021.                 name:"SEQUENTIAL",
  2022.                   proplist:(
  2023.                     name:"TEXT,
  2024.                       proplist:(
  2025.                         name:"PROTOCOL", name:"PARAGRAPH",
  2026.                         name:"VERSION", index:"1",
  2027.                         name:"DATA",
  2028.                           list:(
  2029.                             text:"That was supposed to be some voice
  2030.                                   and graphics in parallel."
  2031.                             text:"--jon."
  2032.                           )endlist
  2033.                       )endlist
  2034.                   )endlist
  2035.                 )endlist
  2036.               )endlist
  2037.          )endlist
  2038.   
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049. Postel                                                         [Page 29]
  2050.  
  2051.  
  2052.                                                              August 1980
  2053. A Structured Format for Transmission of Multi-Media Documents
  2054.  
  2055.  
  2056.  
  2057.  
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063.  
  2064.  
  2065.  
  2066.  
  2067.  
  2068.  
  2069.  
  2070.  
  2071.  
  2072.  
  2073.  
  2074.  
  2075.  
  2076.  
  2077.  
  2078.  
  2079.  
  2080.  
  2081.  
  2082.  
  2083.  
  2084.  
  2085.  
  2086.  
  2087.  
  2088.  
  2089.  
  2090.  
  2091.  
  2092.  
  2093.  
  2094.  
  2095.  
  2096.  
  2097.  
  2098.  
  2099.  
  2100.  
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108. [Page 30]                                                         Postel
  2109.  
  2110.  
  2111. August 1980                                                             
  2112.            A Structured Format for Transmission of Multi-Media Documents
  2113.  
  2114.  
  2115.  
  2116.                                REFERENCES
  2117.  
  2118.  
  2119. [1]   Postel, J., "Internet Message Protocol," RFC 759, 113,
  2120.       USC/Information Sciences Institute, August 1980.
  2121.  
  2122. [2]   Bhushan, A., K. Pogran, R. Tomlinson, and J. White, "Standardizing
  2123.       Network Mail Headers," RFC 561, NIC 18516, September 1973.
  2124.  
  2125. [3]   Myer, T., and D. Henderson, "Message Transmission Protocol,"
  2126.       RFC 680, NIC 32116, 30 April 1975.
  2127.  
  2128. [4]   Crocker, D., J. Vittal, K. Pogran, and D. Henderson, "Standard for
  2129.       the Format of ARPA Network Text Messages," RFC 733, NIC 41952,
  2130.       21 November 1977.
  2131.  
  2132. [5]   Barber, D., and J. Laws, "A Basic Mail Scheme for EIN," INWG 192,
  2133.       February 1979.
  2134.  
  2135. [6]   Braaten, O., "Introduction to a Mail Protocol," Norwegian
  2136.       Computing Center, INWG 180, August 1978.
  2137.  
  2138. [7]   Crocker, D., E. Szurkowski, and D. Farber, "An Internetwork Memo
  2139.       Distribution Capability - MMDF," Sixth Data Communications
  2140.       Symposium, ACM/IEEE, November 1979.
  2141.  
  2142. [8]   Haverty, J., D. Henderson, and D. Oestreicher, "Proposed
  2143.       Specification of an Inter-site Message Protocol," 8 July 1975.
  2144.  
  2145. [9]   Thomas, R., "Providing Mail Services for NSW Users," BBN NSW
  2146.       Working Note 24, Bolt Beranek and Newman, October 1978.
  2147.  
  2148. [10]  White, J., "A Proposed Mail Protocol," RFC 524, NIC 17140, SRI
  2149.       International, 13 June 1973.
  2150.  
  2151. [11]  White, J., "Description of a Multi-Host Journal," NIC 23144, SRI
  2152.       International, 30 May 1974.
  2153.  
  2154. [12]  White, J., "Journal Subscription Service," NIC 23143, SRI
  2155.       International, 28 May 1974.
  2156.  
  2157. [13]  Levin, R., and M. Schroeder, "Transport of Electronic Messages
  2158.       Through a Network," Teleinformatics 79, Boutmy & Danthine (eds.)
  2159.       North Holland Publishing Co., 1979.
  2160.  
  2161. [14]  Earnest, L., and J. McCarthy, "DIALNET: A Computer Communications
  2162.       Study," Computer Science Department, Stanford University, August
  2163.       1978.
  2164.  
  2165.  
  2166.  
  2167. Postel                                                         [Page 31]
  2168.  
  2169.  
  2170.                                                              August 1980
  2171. A Structured Format for Transmission of Multi-Media Documents
  2172. References
  2173.  
  2174.  
  2175.  
  2176. [15]  Crispin M., "DIALNET: A Telephone Network Data Communications
  2177.       Protocol," DECUS Proceedings, Fall 1979.
  2178.  
  2179. [16]  Caulkins, D., "The Personal Computer Network (PCNET) Project: A
  2180.       Status Report," Dr. Dobbs Journal of Computer Calisthenics and
  2181.       Orthodontia,  v.5, n.6, June 1980.
  2182.  
  2183. [17]  Postel, J., "NSW Transaction Protocol (NSWTP)," USC/Information
  2184.       Sciences Institute, IEN 38, May 1978.
  2185.  
  2186. [18]  Haverty, J., "MSDTP -- Message Services Data Transmission
  2187.       Protocol," RFC 713, NIC 34739, April 1976.
  2188.  
  2189. [19]  ISO-2014, "Writing of calendar dates in all-numeric form,"
  2190.       Recommendation 2014, International Organization for
  2191.       Standardization, 1975.
  2192.  
  2193. [20]  ISO-3307, "Information Interchange -- Representations of time of
  2194.       the day," Recommendation 3307, International Organization for
  2195.       Standardization, 1975.
  2196.  
  2197. [21]  ISO-4031, "Information Interchange -- Representation of local time
  2198.       differentials," Recommendation 4031, International Organization
  2199.       for Standardization, 1978.
  2200.  
  2201. [22]  Postel, J.,  "DOD Standard Internet Protocol," USC/Information
  2202.       Sciences Institute, IEN 128, NTIS number AD A079730, January 1980.
  2203.  
  2204. [23]  CCITT-X.121, "International Numbering Plan for Public Data
  2205.       Networks," Recommendation X.121, CCITT, Geneva, 1978.
  2206.  
  2207. [24]  Cohen, D., "Specifications for the Network Voice Protocol (NVP),"
  2208.       NIC 42444, RFC 741, NSC 68, RR-75-39, USC/Information Sciences
  2209.       Institute, January 1976.
  2210.  
  2211. [25]  CCITT-T.30, "Procedures for Document Facsimile Transmission in the
  2212.       General Switched Telephone Network," Recommendation T.30, Orange
  2213.       Book, V. 7, The International Telephone and Telegraph Consulative
  2214.       Committee,  International Telecommunication Union, Geneva, 1977.
  2215.  
  2216. [26]  Treadwell, S., "FAX File Format," ARPANET Message, 14 November
  2217.       1979.
  2218.  
  2219. [27]  Sproull, R., and E. Thomas, "A Network Graphics Protocol,"
  2220.       NIC 24308, Xerox Palo Alto Research Center, August 1974.
  2221.  
  2222.  
  2223.  
  2224.  
  2225.  
  2226. [Page 32]                                                         Postel
  2227.  
  2228.  
  2229. August 1980                                                             
  2230.            A Structured Format for Transmission of Multi-Media Documents
  2231.                                                               References
  2232.  
  2233.  
  2234.  
  2235. [28]  Bisbey, R., and D. Hollingworth, "A Distributable,
  2236.       Display-Device-Independent Vector Graphics System for Command and
  2237.       Control," RR-80-87, USC/Information Sciences Institute, July 1980.
  2238.  
  2239. [29]  Bisbey, R., D. Hollingworth, and B. Britt, "Graphics Language,"
  2240.       TM-80-18, USC/Information Sciences Institute, July 1980.
  2241.  
  2242. [30]  Graphics Standard Planning Committee, "Core System," Computer
  2243.       Graphics, V. 13, N. 3, SIGGRAPH, ACM, August 1979.
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.  
  2250.  
  2251.  
  2252.  
  2253.  
  2254.  
  2255.  
  2256.  
  2257.  
  2258.  
  2259.  
  2260.  
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.  
  2268.  
  2269.  
  2270.  
  2271.  
  2272.  
  2273.  
  2274.  
  2275.  
  2276.  
  2277.  
  2278.  
  2279.  
  2280.  
  2281.  
  2282.  
  2283.  
  2284.  
  2285. Postel                                                         [Page 33]
  2286.  
  2287.  
  2288.                                                              August 1980
  2289. A Structured Format for Transmission of Multi-Media Documents
  2290.  
  2291.  
  2292.  
  2293.  
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.  
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.  
  2318.  
  2319.  
  2320.  
  2321.  
  2322.  
  2323.  
  2324.  
  2325.  
  2326.  
  2327.  
  2328.  
  2329.  
  2330.  
  2331.  
  2332.  
  2333.  
  2334.  
  2335.  
  2336.  
  2337.  
  2338.  
  2339.  
  2340.  
  2341.  
  2342.  
  2343.  
  2344. [Page 34]                                                         Postel
  2345.  
  2346.