Working with image files (photos, etc.) often requires storing information about the files. There are already a number of storage formats to achieve this. There are also a number of packages working with these formats. The intention of this page is to document which programs work with each other. Please extend it if you have knowledge about a specific program.
You can find details about this format at Wikipedia's page on XMP. This format is embedded in a number of image formats. For image formats that do not support embedding the metadata, it can be stored in a file with extension "xmp" next to the image file.
Package info: geeqie
Supports two different internal plaintext formats in ~/.geeqie/metadata (old) and ~/.local/share/geeqie/metadata (new).
Supports reading and writing XMP.
Supports saving metadata in a .metadata directory next to the images.
When searching for keywords geeqie needs to traverse the filesystem tree, so searching can be slow.
Package info: f-spot
Stores metadata in a sqlite3 database located at ~/.config/f-spot/photos.db.
Package info: shotwell
Stores metadata in a sqlite3 database.
Package info: digikam