I think google's Picasa would do this. You can add comments that are retained in their database. If you add tags to files, such as exif comments in pictures, then you may be able to search for them using Kerry Beagle. I'm not certain of this.
Another thing to look at is setfattr to add file attributes which are name=value entries.
Code:
setfattr [-h] -n name [-v value] pathname...
A file entry can contain a number of these name="value" entries. I think that attributes in the user namespace can contain what you want.
The beagle search daemon uses these attributes to record whether a file has already been scanned. You need ext2, ext3 or xfs to use these attributes.