PixTag Photo Description Tools
Digital photos are wonderful, but lack the simple feature of prints — you can't write on the back of them.
On the surface, it seems simple enough. When I take a picture of Uncle Harvey, the JPEG file is one million bytes in size. You would think that it wouldn't be difficult to add in the twelve extra bytes for the string "Uncle Harvey".
The problem is that everyone wants to do it differently. In a familiar computing industry story, each group wants to lock you into their private database for notes, and when the technology or business environment changes, you lose everything. The list of contenders is impressive: EXIF comments, RDF varieties and Dublin Core, XMP and IPTC, NTFS file properties, the Library of Congress MODS, as well as the internal databases maintained by each different photo organizer (Picassa, iPhoto, Paint Shop Pro, SuperJPG, etc.)
In the past years, I have shot many photos, and since I can't jot notes on the back, have forgotten many details about the subjects. I can't wait another few years for a winner to emerge before recording this information. I need to capture it now!
I have physical photos that are 40+ years old, and plan to keep my digital photos for just as long. If you believe that your current solution will survive that long, good for you. I don't, and this is my open way of saving the information in a way that will survive for many years and hopefully outlast the stupid vendor contests.
That data belongs to you! Don't let someone else lock it up!
These PIXTAG tools were written to scratch this particular itch. The following are my design goals:
- Let me capture a basic description of photos and the events that they may be connected with.
- Store the master copy of the information in a separate file, so that we never lose it if some vendor decides to strip things from the picture file.
- Store the master copy in an open format so that I can write tools against it or even just edit it with a text editor and never be held hostage to a particular tool.
- Copy the info into the file multiple times in all the competing protocols, so that it will be visible in whatever system you happen to be using.
In order to make this happen, I have defined two specs that govern the tools I write. If others people and projects want to adopt them too, so much the better.
The first is the pixtag file format for descriptions. This is simple enough to write by hand with notepad.exe or emacs (I do a lot of this), but structured enough for tools to easily read and manage.
The second is a naming convention for files. You can use pixtag regardless of what you name your image files, but if you plan on keeping your pictures for decades, you better use something better than the IMG_1234 that comes out of your camera. Plus, you better plan on mixing those files with ones from other people, scans of traditional prints, and so on.
Finally, I conclude with a rant on over-engineering.
Copyright © 2020 David Loffredo, licensed under CC BY-SA 4.0.