2005.08.03 09:27 "[Tiff] Overlay Hyperlinks On TIFF", by Chux Amobi

2005.08.08 15:01 "Re: [Tiff] Overlay Hyperlinks On TIFF", by Joris Van Damme

Rob,

One question remains: Is it so that tags must be unique? X and Y resolution tags are reused within a multipage tiff file so uniqueness seems to be a per image property for some tags and a per file property for other tags (e.g. Software tag).

Indeed, no tag may occur more then once in a single IFD. Also, no tag in any IFD can apply to any other IFD or the multipage linked list as a whole. You and/or your code may consider a Software tag in one IFD to apply to all IFDs in that file, but, strictly speaking, that is not correct.

Some specs that build on from TIFF deliberatly violate that last rule. For example, RFC2301 defines a private IFD that would be mentioned only ('preferably in the first IFD', they say, but that statement all by itself shows what's wrong with this), and apply as a default to all IFDs in a file.

That's just not TIFF, though, it's a spec violation. (Or perhaps not, see further below.)

So why can a tag not be used e.g. 4 times for a single image. It is the simplest way to implement a dynamic list. I agree that such semantics should be described explicit.

Is it forbidden in the spec?

Yes, it is. (Or perhaps not, see further below.)

It's simply a convention. If it were not forbidden, that would be one more degree of freedom. (Either use the same tag multiple times, or define the tag such that multiple data sets can constitute one tag's data value.) It would also be one more complication to deal with. (What to do when there's multiple occurences of the ImageWidth tag in a single IFD?) And one more complication in the typical interface between codec layer and application layer. (You would not be able to simply ask for the value of XResolution, but you would have to pass an index to what particular XResolution tag you want to query.)

I've tried to locate the exact bits of the spec to quote here... but didn't find them. Going from the assumption that I didn't find them because they aren't there, rather then working from the perhaps more likely assumption that I didn't find them because I've not spend the time reading the whole spec again cover to cover,...

Joris Van Damme
info@awaresystems.be
http://www.awaresystems.be/
Download your free TIFF tag viewer for windows here:
http://www.awaresystems.be/imaging/tiff/astifftagviewer.html