It seems that all metadata standards have their own unique problems. This page documents some significant structural problems found in some current metadata and file format specifications, and gives possible solutions to these problems. [Also see my Commentary on Meta Information Formats.]
A significant problem of the 1992 TIFF 6.0 specification is that there is no way to distinguish an IFD (image file directory) offset from a simple integer value. As a result, new IFD's may not be created without risking corruption of the files by unaware software. This is not only a problem for proprietary maker notes which commonly use a TIFF IFD structure, but is also a problem for extensibility of TIFF-based RAW image formats (as demonstrated by the DNG 1.3 specification -- see below).
A simple solution:
Use a TIFF field type of 13 (IFD) instead of 4 (LONG) for IFD offsets. This was first proposed in 1995 by Adobe in their PageMaker 6.0 TIFF Technical Notes[2], but unfortunately it never found its way into the TIFF specification. Even so, Olympus Optical Co. has shown some intelligence and is using this field type in the maker notes of their recent digital cameras.
Another useful addition: (added 2009-09-27)
A number of camera and cell phone manufacturers (Concord, Kodak, Motorola, Nokia, Olympus, Pentax, Ricoh, Samsung and Sony) leave blank IFD entries in the maker notes of images from some models. Presumably this simplifies the embedded software by allowing the output file structure to be kept constant even when the number of maker note IFD entries changes. It could be useful if this feature was added explicitly to the official TIFF specification by defining a field type of 0 as a "free IFD entry" to be ignored. (Note that this ability already exists implicitly at a certain level in the specification, which states: "Readers should skip over fields containing an unexpected field type".)
With the DNG 1.3 specification of June 2009, Adobe added a new Camera Profile IFD referenced by an offset using the standard (and unfortunate) TIFF LONG field type. This means that the new Profile IFD will be lost if the file is rewritten by any software which does not have explicit knowledge of the 1.3 specification. But to make things worse, Adobe didn't even use a standard IFD format for the data. Instead, the IFD begins with a TIFF-style header and uses relative instead of absolute offsets. This would have been a good idea if the IFD was stored as the value of an UNDEFINED tag rather than referenced from a LONG offset. (If done this way, the new information would have been preserved if the file was rewritten by unaware software.) But as implemented it just adds to the pain of parsing the file by requiring even more specialized code to be written in support of the DNG 1.3 format.
A simple solution:
Sack the Adobe developers who were responsible for this, and use field type 13 (as recommended above for TIFF 6.0) and a standard TIFF IFD structure when adding new IFD's in the future.
The EXIF specification has been the standard for digital camera metadata for many years, and while the digital camera technology has advanced significantly in these years, the EXIF specification has not. There are a number of significant problems with the EXIF specification which have never been addressed.
Some current problems with the EXIF specification are: