Multipurpose Internet Mail Extensions (MIME) Types

Web-Based Publishing (INFO 290-19)

Erik Wilde, UC Berkeley School of Information
2007-03-15
Creative Commons License

This work is licensed under a Creative Commons
Attribution-NonCommercial-ShareAlike 2.5 License.

Abstract

One of the most important aspect of computer-based communications is the concept of media types, the question what type of information some digital artifact represents, and how it is encoded. The most common standard for this information is the scheme introduced by Multipurpose Internet Mail Extensions (MIME). Media types can be negotiated by peers communicating through HTTP. Some media types allow fragment identifiers, which allow references to a resource to identify a fragment of the complete resource.

Multipurpose Internet Mail Extensions (MIME)

Unix File Type Handling

image/bmp   bmp
image/cgm
image/g3fax
image/gif   gif
image/ief   ief
image/jpeg   jpeg jpg jpe
image/naplps
image/png   png
image/prs.btif
image/prs.pti
image/tiff   tiff tif
0 string  P1  image/x-portable-bitmap
0 string  P2  image/x-portable-graymap
0 string  P3  image/x-portable-pixmap
0 string  P4  image/x-portable-bitmap
0 string  P5  image/x-portable-graymap
0 string  P6  image/x-portable-pixmap
0 string  IIN1  image/tiff
0 string  MM\x00\x2a image/tiff
0 string  II\x2a\x00 image/tiff
0 string  \x89PNG  image/x-png
1 string  PNG  image/x-png
0 string  GIF8  image/gif

Windows File Type Handling

Windows File Type Handling

Outline (MIME Types and the Web)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

Browsers and Resources

Firefox MIME Type Handling

Controlling MIME Type Handling in Firefox

MIME Type Control in Browsers

Outline (MIME Types)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

Content Types

Subtypes

What is XML?

MIME Type Registration

application/msword MIME Type

SECURITY CONSIDERATIONS:
None known.


PUBLISHED SPECIFICATION:

Specification by example:

   From any microsoft word application select "Save As..." from the
   "File" menu.  Enter a filename, make sure that "Normal" is specified
   for the file type, and click "Save".

Company Contact:

   Microsoft Inc.

   16011 NE 36th Way
   Box 97017
   Redmond WA, 98073-9717

Outline (Text Content Types)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

Plain Text

HTML

Comma-Separated Values (CSV)

Outline (Application Content Types)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

JSON

Outline (Image Content Types)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

Graphic Interchange Format (GIF)

Joint Photographic Experts Group (JPEG)

Q = 50, filesize 15,138 bytes Q = 10, filesize 4,787 bytes Q = 1, filesize 1,523 bytes

JPEG 2000

Portable Network Graphics (PNG)

Outline (HTTP Content Negotiation)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

What is Content Negotiation?

Three Different Variants

Server-Side Content Negotiation

Outline (Fragment Identifiers)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

Identification of Resource Fragments

HTML Fragment Identifiers

XML Fragment Identifiers

Outline (Conclusions)

  1. MIME Types and the Web [3]
  2. MIME Types [13]
    1. Text Content Types [3]
    2. Application Content Types [1]
    3. Image Content Types [4]
  3. HTTP Content Negotiation [3]
  4. Fragment Identifiers [3]
  5. Conclusions [1]

Know Your Resources