Propagate keywords to versions without overwriting existing keywords

Started by vbt, December 07, 2019, 11:43:13 PM

Previous topic - Next topic

vbt

I have set up a versioning relationship which includes propagating keywords.

On some of the version files I wish to add keywords to indicate what development treatment the version has had. However if I later add a keyword to the master file then when that keyword is propagated to the version file any existing keywords on the version files (which are not also on the master file) are deleted.

Is there a way to set up the propagation of keywords to versions without overwriting any existing keywords the versions have (even if that means the deletion of keywords is never propagated)?

Mario

When you propagate keywords, the master propagates all keywords to the version. This way the system ensures that the metadata between master and version is always in-synch.
There are no partial updates for keywords.

Data about how the master was treated or developed usually should not go in keywords anyway.
Maybe use one of the many other tools available to store development data for the master: collections, categories, attributes, the IMatch history or one of the many other XMP data fields available.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

vbt

Quote from: Mario on December 08, 2019, 08:52:59 AM
When you propagate keywords, the master propagates all keywords to the version. This way the system ensures that the metadata between master and version is always in-synch.
There are no partial updates for keywords.

Data about how the master was treated or developed usually should not go in keywords anyway.
Maybe use one of the many other tools available to store development data for the master: collections, categories, attributes, the IMatch history or one of the many other XMP data fields available.
Thanks for the prompt answer.

I wasn't really asking for a partial update but rather a full update but without deleting any existing keywords. So all keywords from the master would propagate to the version but deletes wouldn't. (I realise this means the master and version keywords would not be fully in sync but the versions would still hold all the  master's keywords just not vice versa.)

The other options have disadvantages for me. E.g by using categories the information (as far as I am aware) only lives in IMatch whereas I would prefer to have this information held with the photo. And information held in the history won't be quite so easy for me to access.

However as you say I can work round the issue, I just wanted to check the option that would be most preferable for me was not available before thinking of an alternative.

Mario

Use a workflow category set (many users do) or some collections. Or, if you need to hold lots of data, use Attributes.

If you want to copy this workflow data into the metadata of the image later, you can use a simple Metadata Template or the Metadata Mechanic to copy the data from categories or collections or Attributes into any metadata field you like.

Breaking the synchronicity between masters and versions for this would open a real can of worms. What if your versions contain keywords which contradict master keywords (thesaurus, group levels, exclusion levels, ...). There are many special conditions and fringe cases to consider. Something that would probably work in your specific case could horribly fail for many users when implemented a feature.

I can only repeat myself: Things like workflow state, processing steps etc. does not really belong into keywords. Keywords are supposed to describe the content of your images, not which editing steps you have performed so far. There are other metadata tags and superior mechanisms for that.

A)  For example, XMP labels were designed with workflow in mind. Different label names and colors for different stages, from "new" to "archived".
Labels are stored in the XMP record but are also extremely versatile inside IMatch. IMatch allows you to color-code them, it maintains a dedicated collection for each label (see which files are in which stage with a single click!), you can use them for sorting, searching, category formulas, data-driven categories...

B)  A workflow category hierarchy with the unassign from siblings option makes it super-easy to track a file from the moment it comes into the system to the final stage. After completing a step, you assign the file to the following step / workflow category. Which automatically unassigns it from the previous one. Combine that with color-coding and you can see at a glance which files are in which step of your workflow. Not many other DAMs which can do that.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

vbt

Quote from: Mario on December 08, 2019, 01:12:56 PM
Use a workflow category set (many users do) or some collections. Or, if you need to hold lots of data, use Attributes.

If you want to copy this workflow data into the metadata of the image later, you can use a simple Metadata Template or the Metadata Mechanic to copy the data from categories or collections or Attributes into any metadata field you like.

Breaking the synchronicity between masters and versions for this would open a real can of worms. What if your versions contain keywords which contradict master keywords (thesaurus, group levels, exclusion levels, ...). There are many special conditions and fringe cases to consider. Something that would probably work in your specific case could horribly fail for many users when implemented a feature.

I can only repeat myself: Things like workflow state, processing steps etc. does not really belong into keywords. Keywords are supposed to describe the content of your images, not which editing steps you have performed so far. There are other metadata tags and superior mechanisms for that.

A)  For example, XMP labels were designed with workflow in mind. Different label names and colors for different stages, from "new" to "archived".
Labels are stored in the XMP record but are also extremely versatile inside IMatch. IMatch allows you to color-code them, it maintains a dedicated collection for each label (see which files are in which stage with a single click!), you can use them for sorting, searching, category formulas, data-driven categories...

B)  A workflow category hierarchy with the unassign from siblings option makes it super-easy to track a file from the moment it comes into the system to the final stage. After completing a step, you assign the file to the following step / workflow category. Which automatically unassigns it from the previous one. Combine that with color-coding and you can see at a glance which files are in which step of your workflow. Not many other DAMs which can do that.

Thank you for the very full reply.

I don't doubt there are better ways of doing what I want, otherwise there would be a demand for what I was asking, which I accept there isn't. I also don't doubt that there there would be many issues to consider when considering all possible scenarios that might arise in the full population of users.

At the moment I am going to go with a simple category approach because I have quite a lot of other things I am doing at the moment as I am transferring over from Lightroom (made harder because I did not follow a very consistent approach in LR). However I will look into your suggested metadata template approach later, when I have more time to investigate, as it sounds like it might be a better longer term solution.

As a slight aside, the type of data I am proposing holding is not really to do with workflow. The versions will be kept permanently. I will have the master file from my camera, but then sometimes wish to keep various differently developed versions e.g. basic look, vivid look, film look etc. However I am also not looking to hold this as very detailed development steps but rather just broad descriptions (e.g. of 'look' or raw processor used etc) that I can use later to find/filter photos.




Mario

IMatch can sort/filter for any metadata tag, not just keywords. So you don't lose any flexibility not using keywords.

To keep a processing description like "vivid look" or "black & white version" I would rather recommend a text field of your choice, like the XMP instructions tag (XMP::photoshop\Instructions\Instructions). (You can see this tag in the Default Metadata Panel layout). The contents of this tag are not used outside classic "news" workflows and hence you can use it for your purpose.

If you fill this tag, you can later create a data-driven category for it. This way you can easily see (and filter) for your various processing descriptions. Very handy. And the data will become part of the metadata in your version file.

(PS: No need to quite my entire responses).
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

vbt

Yes, I think that will do most (or all) that I was looking to get from using keywords (without the relationship overwrite issue).

Thanks.

loweskid

I use the XMP 'Instructions' and 'Transmission Reference' tags to keep track of my photo agency's reference numbers.  You can alter the labels in the metadata panel - see attached pic.

Also, you can make the text and/or background colours dependent on the data.  So if I type 'Deleted from Alamy' in the 'Submission Ref' field, as soon as I click the green tick to commit it to the database the background changes to red and the text to yellow - neat!  This gives a very quick visual reference to show that I haven't just forgotten to enter a number.

Mario

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook