Network Working Group                                R. Lutz
Internet-Draft: draft-lutz-print-types-00.txt           MFPA
                                             January 6, 1997

          MIME media-types for Print Formats

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 its 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 and may be updated, replaced, or obsoleted
   by other documents at any time. It is inappropriate to
   use Internet- Drafts as reference material or to cite
   them other than as "work in progress."

   To learn the current status of any Internet-Draft, please
   check the "1id-abstracts.txt" listing contained in the
   Internet- Drafts Shadow Directories on ftp.is.co.za
   (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific
   Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US
   West Coast).

Abstract

   This memo defines media-type designators for various
   printer control file formats which are popularly used in
   the industry, and proposes a means to correlate the
   printer interpreter types as specified in the Printer MIB
   (RFC-1759).

1. Overview

   MIME media-types describe the format of MIME objects,
   which are used in internet email (SMTP), web applications
   (HTTP), and others. MIME media types such as
   application/postscript and text/plain are examples of
   print formats which are interpreted by many printers.
   However, there are many other file formats whice are
   frequently used with printers which are not supported by
   MIME media-type designations. This document proposes a
   set of MIME media-type designations for these popular
   print file formats. The result of this work should
   support transport of these printer formats to enable
   internet printing scenarios.

2. Definition Method

   The printer MIB (RFC-1759) is used as a source of much of
   the information in this document. Each section of this
   document is formatted according to the MIME media-type

Lutz                                                [Page 1]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   registration procedure (RFC-1590).

   RFC 1759 (_Printer MIB_) contains a group,
   PrtInterpreterLang, with objects that identify various
   file formats and protocols which are used to submit jobs
   and interact with print equipment. The purpose for this
   list is to allow a network administrator to garner
   information regarding the capabilities or view and set
   current settings of a printer peripheral.

   MIME (Multimedia Internet Mail Extensions) contain a
   registration method and registry for defining various
   media-types (or _data formats_). The purpose of this
   registration  method and registry is to allow transfer of
   file data via email MIME body parts and allow the
   receiver to handle each part in a graceful manner.

   The ability to reference file formats is important in the
   Multifunction product area as we are submitting jobs to
   dial-up or email-remote printers. The lack of a single
   registry has been a key problem in this area.

2.1 OBSERVATIONS

   The MIME registry is targeted at _data formats_ and does
   not specify protocols which would not be transportable
   using internet store-and-forward mail technology.
   Therefore, some of the objects contained in
   prtInterpreterLang group would probably not be
   appropriate for the MIME registry. For example, TIPSI
   (IEEE-1284.1) is a good candidate for this characteristic
   since TIPSI requires bidirectional communication to
   operate. Such formats may be compatible with certain
   limitations. This is they way that Postscript is treated.
   This document will not attempt to sanatize any formats
   that require a special protocol.

   RFC-1759 does not specify exact versions as a part of the
   prtInterpreterLang group, especially when the language
   can self-identify or gracefully handle various
   generations of the same format. In some cases, a given
   interpreter will not gracefully handle the various
   generations, and yet the version is not specified.

   There may be some need to refine RFC-1759 or other
   documents as a result of completing this work.

3. Method to handle Vendor-specific formats

   It is generally the case that the Interpreter Languages
   as defined by RFC-1759 are vendor-specific and are not
   ietf or public standards. The MIME designation will be
   generated using a standard "recipe" to allow easy
   correlation with RFC-1759, without unduly burdening the

Lutz                                                [Page 2]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   MIB or the MIME media-types with absolute
   synchronization. The general recipe is to form the MIME
   media type as follows (Angle brackets are to group
   syntactical elements and do not occur in the string;
   square brackets indicates optional):

   vnd.<vendor name or initials>-<language family name as
   per langXXXX in MIB>[;Version=<Level from MIB (lower
   case)>]

   For example, for LangPCL, Level 3, the resulting string
   is:

   application/vnd.hp-pcl;version=3

4. Prior Generations also accepted by the media-type

   If a given device claims that it can handle a given
   printer media-type by examining the MIB
   prtInterpreterLang object, it may also be able to handle
   other media-types of prior generations. A maker of a MIME
   object should designate the minimum media-type
   designation possible. A device should claim support in
   the device MIB of the latest generation of a given media-
   type which has several generations.

   This document includes a profile which defines the exact
   MIB field contents and their relation to the proposed
   MIME types. The use of the recipe to form the MIME media-
   type designation will allow the vendor that is actually
   responsible for the given format to enhance the format
   without revision of this profile.

4. Summary of the printer media-types

   In the table below, the term "Also Accepted" indicates
   that the device would also accept another generation of
   the format or another format by inspecting the object.
   There is usually no use in referencing more than a single
   prior generation since it can also reference other
   generations, however, in some cases, more than one
   language is lumped together with some form of automatic
   sensing.

   In the table below, the columns are defined as follows:
   "Family"         prtInterpreterLangFamily string
   "Code"           numeric entry of Printer MIB
   "Level"          prtInterpreterLangLevel string

   If a media-type string is defined, a prior generation or
   other format which is also parsed and interpreted by this
   interpreter if the printer MIB indicates this format is
   supported.


Lutz                                                [Page 3]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97


   Family          Code Level media-type              Notes
                              (Prior Generation)
   =============== ==== ===== =====================   ======
   other           1    x                             NOTE 1
   langPCL         3    3     vnd.hp-pcl;version=3
   langPCL         3    4     vnd.hp-pcl;version=4
                              (vnd.hp-pcl;version=3)
   langPCL         3    5     vnd.hp-pcl;version=5
                              (vnd.hp-pcl;version=4)
                              (vnd.hp-hpgl;version=2)
   langPCL         3    5e    vnd.hp-pcl;version=5e
                              (vnd.hp-pcl;version=5)
   langHPGL        4    2     vnd.hp-hpgl;version=2
   langPJL         5    1     vnd.hp-pjl;version=1
   langPS          6    1     postscript;version=1
   langPS          6    2     postscript;version=2
                              (postscript;version=1)
   langPS          6    3     postscript;version=3
                              (postscript;version=2)
   langPSPrinter  42          vnd.adobe-PSPrinter     NOTE 2
   langIPDS        7          vnd.ibm-ipds            NOTE 2
   langPPDS        8          vnd.lexmark-ppds
   langEscapeP     9          vnd.epson-escapep
   langEpson      10    80    vnd.epson-fx;version=80  NOTE 3
   langEpson      10    100   vnd.epson-fx;version=100 NOTE     3
   langDDIF       11          vnd.dec-dx
   langInterpress 12                                  NOTE 1
   langISO6429    13          text/iso6429
   langLineData   14          text/linedata
   langMODCA      15          vnd.ibm-modca           NOTE 2
   langREGIS      16          vnd.dec-regis
   langSCS        17                                  NOTE 1
   langSPDL       18          iso10180
   langTEK4014    19          vnd.tek-4014
   langPDS        20                                  NOTE 1
   langIGP        21                                  NOTE 1
   langCodeV      22          vnd.qms-codev
   langDSCDSE     23                                  NOTE 1
   langWPS        24                                  NOTE 1
   langLN03       25          vnd.dec-ln03
   langCCITT      26          image/g3fax
   langQUIC       27          vnd.qms-quic
   langCPAP       28          vnd.dec-cpap
   langDecPPL     29          vnd.dec-ppl
   langSimpleText 30          text/plain              NOTE 4
   langNPAP       31                                  NOTE 1
   langDOC        32          vnd.qms-doc             NOTE 2
   langimPress    33          vnd.qms-impress
   langPinwriter  34          vnd.nec-pinwriter
   langNEC201PL   36          vnd.nec-201pl
   langAutomatic  37                                  NOTE 5
   langPages      38          vnd.ibm-pages


Lutz                                                [Page 4]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97


   langLIPS       39          vnd.cie-lips
   langTIFF       40          image/tiff
   langDiagnostic 41          octet-stream
   langCaPSL      43          vnd.canon-psl
   langEXCL       44          vnd.talaris-excl
   langLCDS       45          vnd.xerox-lcds
   langXES        46          vnd.xerox-xes
   =============== ==== ===== =====================   ======

   NOTES
   1: No media-type definable.
   2: Is this really mappable?
   3: Level is just a guess.
   4: Need charset
   5: automatic will need to list the media-types accepted.







































Lutz                                                [Page 5]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

APPENDIX 1: Media-Type Registrations

   The following are proposed registrations of media-types
   required for those printer interpreters listed in RFC-
   1759. Not all of these types may be worthwhile additions
   as MIME media-types. At this time, there are many missing
   published specifications and contact names.

   ======================================================

   Media Type name: application
   Media subtype name: vnd.hp-pcl
   Required parameters: none
   Optional parameters:
       version=3 indicates HP PCL-3 (default)
       version=4 indicates HP PCL-4
       version=5 indicates HP PCL-5
       version=5e indicates HP PCL-5e
   Encoding considerations:
       base-64 preferred
       (is quoted-printable a good choice?)
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
       HP-PCL5: PCL5 Printer Language Technical Reference
   Manual, HP Manual Part No. 5961-0888.
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.hp-pgl
   Required parameters: none
   Optional parameters:
       version=2 indicates HPGL/2
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
       HPGL manual ....
   Contact:

   ======================================================

   NOTE the following is an amendment of an existing media-
   type since the "version=#" parameter is added as an
   optional parameter.

   Media Type name: application

Lutz                                                [Page 6]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   Media subtype name: postscript
   Required parameters: none
   Optional parameters:
       version=1 indicates Postscript Level 1 (default)
       version=2 indicates Postscript Level 2
       version=3 indicates Postscript Level 3
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior. See RFC ???? for cautionary statements with
   regard to the use of Postscript.
   Published specification:
   Postscript Language Reference Manual, Adobe Systems Inc.,
   ISBN 0-201-10174-2
   Postscript Language Level - 2 Reference Manual, Adobe
   Systems Inc.
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.adobe-PSPrinter
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: ibm-ipds
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.lexmark-ppds

Lutz                                                [Page 7]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: epson-escapep
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: lexmark-ppds
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: epson-fx
   Required parameters: none
   Optional parameters:
       version=80 indicates fx-80
       version=100 indicates fx-100
   Encoding considerations:
       base-64 preferred
       (is quoted-printable a good choice?)



Lutz                                                [Page 8]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.dec-dx
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: text
   Media subtype name: iso6429
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       quoted printable
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
       ISO-6429
   Contact:

   ======================================================

   Media Type name: text
   Media subtype name: linedata
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       quoted printable
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

Lutz                                                [Page 9]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   Media Type name: application
   Media subtype name: vnd.ibm-modca
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.dec-regis
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: iso10180
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
       ISO-10180
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.tek-4014
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64



Lutz                                               [Page 10]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97


   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.qms-codev
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: dec-ln03
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.qms-quic
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

Lutz                                               [Page 11]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97

   Media Type name: application
   Media subtype name: vnd.dec-cpap
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.dec-ppl
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.qms-doc
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.qms-impress
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64




Lutz                                               [Page 12]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97


   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.nec-pinwriter
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.nec-201pl
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.ibm-pages
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

Lutz                                               [Page 13]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97


   Media Type name: application
   Media subtype name: vnd.cie-lips
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.canon-psl
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.talaris-excl
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.xerox-lcds
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64



Lutz                                               [Page 14]


Expires July 1997

draft-lutz-print-types-00.txt                    January, 97


   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

   ======================================================

   Media Type name: application
   Media subtype name: vnd.xerox-xes
   Required parameters: none
   Optional parameters: none
   Encoding considerations:
       base-64
   Security considerations:
       Delivery of this format to a printer which is not
   capable of parsing the format may result in poor printer
   behavior.
   Published specification:
   Contact:

































Lutz                                               [Page 15]

Expires July 1997