MIME is an Internet Standard for Multipurpose Internet Mail Extensions.
MIME was developed to provide a way of embedding binary content in E-mail. Traditional E-mail is only guaranteed to support the 7-bit ASCII character set, so a way was needed to encode 8-bit binary content such as programss, images, sounds, and movies in a form that could be carried in a 7-bit E-mail message.
MIME was designed so that different character encoding schemes could be developed, and also provided a simple sort of metadata in the form of MIME types, so that applications could work out what kind of content was contained in the E-mail message, and therefore know what kind of processing was needed to use the content.
A MIME multipart message contains a boundary in the Content-type: header; this boundary, which must not occur in any of the parts, is placed between the parts, and at the beginning and end of the body of the message, as follows:
Content-type: multipart/mixed; boundary="frontier" MIME-version: 1.0
--frontier Content-type: text/plain
This is the body of the message. --frontier Content-type: application/octet-stream Content-transfer-encoding: base64
gajwO4+n2Fy4FV3V7zD9awd7uG8/TITP/vIocxXnnf/5mjgQjcipBUL1b3uyLwAVtBLOP4nV LdIAhSzlZnyLAF8na0n7g6OSeej7aqIl3NIXCfxDsPsY6NQjSvV77j4hWEjlF/aglS6ghfju FgRr+OX8QZMI1OmR4rUJUS7xgoknalqj3HJvaOpeb3CFlNI9VGZYz6H6zuQBOWZzNB8glwpC --frontier--
Although HTTP does not use MIME encoding, it re-used the concept of MIME types to encode the types of binary content.
Microsoft has proposed a new technology called DIME which streamlines MIME for use in web services. A specification for the standard has recently been submitted to the Internet Engineering Task Force (IETF).