Data Interchange Format

Data Interchange Format (DIF) was created in the early 1980s by the makers of VisiCalc (Software Arts, which was later acquired by Lotus) as a format for exporting and importing spreadsheet data between different programs and platforms. VisiCalc had an option to save in this format in place of its native one, and it could be imported into a number of other programs which implemented the standard. (But reportedly some versions of Microsoft programs botched it up and misinterpreted some of the elements, interchanging VECTORS with TUPLES.)

DIF is an ASCII-based format (newer implementations support other Character Encodings as well) with two sections, a header and data. Each section is divided into chunks, which are 3 lines long in the headers and 2 lines in the data. The first line of a header chunk is an all-capital-letters chunk type name; the second line is a pair of numbers separated by a comma; and the third line is a quoted string. Data chunks have one line with a pair of numbers and one line with a quoted string or keyword.

The first number in the number pairs indicates the type of value represented by the other number and the string on the next line.

The format has also been called "Navy DIF" and "Lotus DIF", though it was not created by the Navy or Lotus.

Format description

 * Wikipedia article
 * , from the Encyclopedia of Graphics File Formats
 * Documentation from Python module for DIF

Software

 * Ruby program for handling DIF