Hi,
something comes to my mind which can bring a lot of advantages to work with IPTC.
My suggestion is to have all the IPTC data in the database. read and write only there and have a background task which synchronizes this data between the database and the pictures. This would mean only one place to store categories, keywords, and all the other stuff. Puting the repsonsibility to have this data also in the pictures down to the user. Having the huge advantage to provide a fast usage, searching and so on. because all this is done only in the database. Also having the advantage to have the same data (keywords and so on) also for pictures where the IPTC standard is not valid for (raw pictures for example). Having also the advantage only to have one interface to be maintained because all the data in added in one interface and the background task is than selecting which data can be added to the picture and which can only be handled in the backend database.
Something else when i add a category to a picture and i close xnview 1.92 this is lost. (rating excelent or colour label)
Greetings
Martin
IPTC in database
Moderators: helmut, XnTriq, xnview
Hi w84100
In principle, I agree that a separate IPTC database might be the proper architecture for XnView.
But many of us use multiple, non-compatible image softwares and what is best for XnView might not work well for sharing between them all. In a multiple software environment, the IPTC stuff is best kept with (inside) the image, when possible. How to do that efficiently and in a way that is compatible between softwares is a conundrum.
There are many many issues associated with this "relatively" new topic of image metadata. New ideas needed!
In principle, I agree that a separate IPTC database might be the proper architecture for XnView.
But many of us use multiple, non-compatible image softwares and what is best for XnView might not work well for sharing between them all. In a multiple software environment, the IPTC stuff is best kept with (inside) the image, when possible. How to do that efficiently and in a way that is compatible between softwares is a conundrum.
There are many many issues associated with this "relatively" new topic of image metadata. New ideas needed!
John
Thank you for your suggestion, w84100.
You will find very similar approaches and thoughts in topic IPTC/XMP for hierarchical categories + internal DB. I think the thoughts are pretty mature and precise, already, it's just a matter of picking up these ideas and make a concept, design, and implementation out of it.
You will find very similar approaches and thoughts in topic IPTC/XMP for hierarchical categories + internal DB. I think the thoughts are pretty mature and precise, already, it's just a matter of picking up these ideas and make a concept, design, and implementation out of it.
HI Helmut,
i don't think that this post describes the way i propose.
Olivier_G proposed to store everything in an IPTC field.
I suggest to go the other way around.
Extend the database which already exists in XNView. Add all the IPTC fields to it. Modify the dialogs in the program so they read and write to this database storing all modifications done in the IPTC field first in the internal XNView database (this brings the advantage to have a very fast writing, reading and searching in IPTC fileds). Next design a background task which synchronizese all IPTC field to the files. This can be done in background without the user needs to wait for.
This means everybody who wants to use IPTC can do it by enabling the background task during XNView is running. All other can still use the normal categories provided by XNView.
Using IPTC in the picture directly is good but very slow especially if you wants to search in lot of pictures or write a value to a lot of pictures. If you could do this in the internal database would raise the speed dramaticaly. But you have to design a process to keep pictures and database in sync.
greetings.
i don't think that this post describes the way i propose.
Olivier_G proposed to store everything in an IPTC field.
I suggest to go the other way around.
Extend the database which already exists in XNView. Add all the IPTC fields to it. Modify the dialogs in the program so they read and write to this database storing all modifications done in the IPTC field first in the internal XNView database (this brings the advantage to have a very fast writing, reading and searching in IPTC fileds). Next design a background task which synchronizese all IPTC field to the files. This can be done in background without the user needs to wait for.
This means everybody who wants to use IPTC can do it by enabling the background task during XNView is running. All other can still use the normal categories provided by XNView.
Using IPTC in the picture directly is good but very slow especially if you wants to search in lot of pictures or write a value to a lot of pictures. If you could do this in the internal database would raise the speed dramaticaly. But you have to design a process to keep pictures and database in sync.
greetings.
Hello w84100,
thank you for precising your thoughts. If you read the above mentioned topic and the discussion in it a bit more, you'll find that JohnFredC and me have the same proposal as yours above (Olivier_C's initial proposal differs). Various people independently have the same thoughts and ideas - an indicator that we are on the right track...
Regards, Helmut
thank you for precising your thoughts. If you read the above mentioned topic and the discussion in it a bit more, you'll find that JohnFredC and me have the same proposal as yours above (Olivier_C's initial proposal differs). Various people independently have the same thoughts and ideas - an indicator that we are on the right track...

Regards, Helmut