Keyword Questions

Started by CLBennett, July 20, 2022, 11:17:00 PM

Previous topic - Next topic

CLBennett

I recently purchased iMatch, because I was intrigued by the power and adherence to standards, and because I am pleased to support Mario for his tireless dedication to his product and his customers.

I have a couple of questions about how keywords are implemented in iMatch. These have been touched on in some forum postings I have read, particularly a long thread from 2016 which I found helpful but not complete (https://www.photools.com/community/index.php?topic=5975.0). If my specific questions have already been answered directly, I would be grateful if someone could point me to the thread.

First, I am migrating to iMatch from Lightroom, and in Lightroom, if you change the name or hierarchical position of a keyword in the keyword list, the change is automatically reflected in the currently assigned keywords in files. I now understand that the Thesaurus in iMatch is NOT linked to Current Keywords. I also understand that the @Keywords category IS linked to Current Keywords, and therefore it functions more like a hierarchical keyword list does in Lightroom.

This means that changing the name or hierarchical position of a keyword is a two step process in iMatch. First you make the change in the @Keywords category (which is then automatically reflected in the Current Keywords). And then you make the same change in the Thesaurus. My question is, what is the advantage of not linking the Thesaurus directly to Current Keywords? It might keep the Thesaurus shorter, by not including all the miscellaneous uncategorized keywords that are added ad hoc. But, in Lightroom, I just hide all those in an folder named "Miscellaneous" which I never open. And, yes, if the Thesaurus was linked, a change might trigger updates to thousands of files. But that is inevitibly what I want done.

Second, since group keywords do not show up in the @Keywords category, when you assign them you lose that part of the hierarchical structure that exists in the Thesaurus. This makes keywords harder for me to find and change in a long list of alphabetically sorted entries in the @Keywords category. The best practice I have come up with, then, is not to use group keywords. The way this is handled in Lightroom seems more intuitive, where the equivalent of group keywords are not exported, but they do show in the hierarchical keywords list, and for the currently assigned keywords (if you choose the display option to show containing keywords). Again, what is the advantage to the iMatch way of treating group keywords, or what am I missing?

As you may surmise, I don't like adding extra time to managing my files unless there is a benefit. I understand that best practice would be to have a stable Thesaurus with rare changes. But for me as a wildlife and underwater photographer, that is just not going to happen. As my catalog expands, so does my need to continually add, rename, and reorganize my keylists. How can I do  that most easily in iMatch?

iMatch is so well thought out, that it is likely, as a newbie, that I am misunderstanding or unaware of some features. Thanks in advance for your patience and for any help or advice you can offer.

Mario

#1
QuoteMy question is, what is the advantage of not linking the Thesaurus directly to Current Keywords?

As explained in the thesaurus help in more detail: The thesaurus stores and manages values for all metadata tags, not only keywords. It is a 'dumb' hierarchical value storage facility, to create and maintain controlled vocabularies for keywords and other frequently used tags like author, author position, copyright notices, legals, headlines, descriptions etc.
Changing something in the thesaurus does not change existing metadata in your files.

@Keywords is dynamically built from the hierarchical keywords in your files. It is data-driven category with some special features only available for keywords.
See The @Keywords Category for full details.
For example, when you rename a category under @Keywords, IMatch runs over the whole database and finds all keywords with the old name and replaces it with the new name.

QuoteI understand that best practice would be to have a stable Thesaurus with rare changes.

That's the idea. Once set up, a thesaurus should rarely change. That's the idea of a controlled vocabulary. A fixed, rarely changing, set of keywords to allow for a quick and consistent keywording experience.
You can add new keywords to the thesaurus automatically while you enter them in the Keywords Panel (Configuring the Keywords Panel) or add them manually when needed from the context menu or using a keyboard shortcut.
It is quite common to have keywords which are not part of the thesaurus (but of course show in @Keywords) and you usually also have many keywords in the thesaurus which are not used for a file.

Keep in mind that you can re-create the thesaurus for keywords at any time from the keywords in your file. If this is what would help you.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

CLBennett

Thank you, Mario, for your quick response. You support is amazing.

The suggestion about re-creating the Thesaurus from the database was intriguing. If I use the @Keywords category to move a keyword to a different folder, and then re-import the Thesaurus from the database, the keyword is added the new location in the Thesaurus. But it also still remains in the old location in the Thesaurus. So, it is now duplicated in the Thesaurus, which means I still have to manually delete the keyword from the old location.

I get it, the Thesaurus is, as you say, a "dumb" storage bin. But what I am trying to understand is why. What is the benefit to having it unlinked from currently assigned keywords? Or, to flip the question around, what is the disadvantage of the Lightroom implementation, where all changes made in the hierarchical key list are reflected in the files, without the need for a second hierarchical list like @Keywords? One keyword list that mirrors the files seems simpler and faster, but perhaps there is drawback to this implementation which is not apparent to me now, but might come back to bite me in the future. Is the "dumb" Thesaurus a limitation or a feature: that's what I would like to know.

As for a controlled vocabulary that is created once and for all time, it's an ideal that I suspect is "more honored in the breach than the observance." In any case, mine changes frequently, and yet it is still the best tool I know of for managing and assigning keywords. I just want making such changes in the keywords list and in the files to be as fast, simple, and seamless as possible.

Just be clear, I think iMatch is a fantastic program. I am obviously focusing here on a single isolated issue.

Chuck

Mario

#3
Usually you would just clean the thesaurus before re-importing it. Select the top-level node and press <Del>.
The thesaurus has been designed for IMatch 5 (2016) and works how it works since then.

Maybe, for your particular use-case and workflow, just work with @Keywords and assign keywords using the Category Panel.
If you have to re-arrange your keyword hierarchy all the time, moving keyword around, renaming them etc. this will work best for you.
Once your keyword hierarchy has matured, persist it in the thesaurus with an import.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

CLBennett

Thank you, Mario. Yes, I think your suggested workflow is the best one for me, at least for now. Assigning keywords to files in the @Keywords category is not quite as convenient as using the Thesaurus, but it is intuitive. And hopefully temporary. The hazard in clearing the entire Thesaurus and then reimporting keywords from the database is that you lose any keywords that are not currently assigned to any files. So this requires careful consideration.

For now I will continue to learn and experiment using a small iMatch database, but I think the suggested workflow is manageable for me. Danke und beste wünsche.

Chuck


JohnZeman

Chuck another thing you might take into consideration if you haven't done so already is you can also assign @Keywords categories using a metadata template.

For example I work seasonally at a garden nursery called Thistle Down Nursery.  Each time I take a photo there and add it to my IMatch database I click a metadata template favorite button and that one button push writes the values for

Country
State
City
Location
Sublocation
GPS Coordinates

to the selected image(s) plus it also assigns that photo to the

@Keywords|Jobs|Thistle Down Nursery|2022

Category.

sinus

This is, what I do also for some locations, what I take photos from time to time, John.
(And if I recall correct, Mario does this also).

I add additionally the GPS-informations, at the end I have a filled metadata like I would have open the map-panel with following reverse geocoding.

This is very fast and convenient.
Best wishes from Switzerland! :-)
Markus

thrinn

Quote from: CLBennett on July 22, 2022, 07:51:27 PM
The hazard in clearing the entire Thesaurus and then reimporting keywords from the database is that you lose any keywords that are not currently assigned to any files. So this requires careful consideration.
Quote
If I use the @Keywords category to move a keyword to a different folder, and then re-import the Thesaurus from the database, the keyword is added the new location in the Thesaurus. But it also still remains in the old location in the Thesaurus.

There are valid arguments for and against linking a Thesaurus directly to the contents of files. Or, to put it differently, synchronizing it with file contents. But either changes and deletions are reflected directly, or they are not. It is not possible to have both - and as you can see from your own remarks, some situations may call for the first, others for the second approach.

I think with IMatch you have both possibilities. It may take some time to get accustomed, and also take some time which workflow works best for you (at least it did for me!). And the Thesaurus has some features (like Working with Links) which can not be represented in the files (XMP structures).
Thorsten
Win 10 / 64, IMatch 2018, IMA

CLBennett

Thank you, John and Markus, for your tip about metadata presets. I have made note of this feature, which I think can be useful to me in the future.

Thorsten, thank you for the tip about keyword links: I need to look into that feature. And you make a good point about synchronization. But it is possible to have "selective" synchronization. In Lightroom, it is quite easy to have persistent unused keywords in the Keyword List, even though keywords are synchronized with file contents. If I create a new keyword in the Keyword List, it shows in the list with the number "0" next to it. If I assign the keyword to a file, the number changes to "1". If I un-assign the keyword, the number changes back to "0", but the keyword itself remains in the list. In other words, the number is synchronized, but the existence of the keyword in the list is not.

So many things to learn! By the way, I have already benefited from the participation of each of you in other threads on this forum, from which I am learning a lot. So, thank you for contributing your time and knowledge.

Chuck

thrinn

Quote from: CLBennett on July 23, 2022, 06:30:22 PM
If I un-assign the keyword, the number changes back to "0", but the keyword itself remains in the list. In other words, the number is synchronized, but the existence of the keyword in the list is not.
Sounds like the Keep Empty Categories option in IMatch. IMatch is flexible  :)
Thorsten
Win 10 / 64, IMatch 2018, IMA

CLBennett

Yes, Thorsten, Keep Empty Categories is a good option for the @Keywords Category, thank you for pointing that out to me. In my prior message, I was thinking about the Thesaurus, which, as far as I can tell, has no such feature. If you re-import the Thesaurus from the database, only keywords currently assigned to files will be imported.

Maybe just because I'm an old dog coming from Lightroom, I like the idea of one keyword list which combines the functions of the Thesaurus (click to assign from a controlled vocabulary) and the @Keywords category (synchronized with file content). It's a bit less convenient to assign keywords from the @Keywords category than the Thesaurus, but otherwise @Keywords does what I want. So, as Mario suggested, I will probably use the @Keywords Category as my primary tool for both managing and assigning keywords. The Keep Empty Categories feature adds another reason for doing that.

Chuck

CLBennett

As per my last post, I thought I was set to manage keywords using the @Keywords category rather than the Thesaurus. But that turns out not to be as simple I imagined. Because there are two @Keywords tools: Categories View, and the Categories Panel, and they function differently.

In the Categories Panel, I can assign and un-assign keywords with checkboxes, which is great. In Categories View, things are more cumbersome. There I must drag and drop or cut and paste to assign. And to un-assign a keyword, I must right click on the file and choose "Un-assign from current category".  And, when I drag or copy files to a keyword, that new keyword replaces all existing keywords. The Categories Panel is obviously faster and better for assigning keywords. So far so good.

On the other hand, in the Categories Panel, I cannot move keywords within the hierarchy. That must be done in the Categories View. Also, in Categories View, I can view all files assigned a specific keyword by clicking on the keyword name. In the Categories Panel, that doesn't work. Instead, I must bring up the context menu and choose "Goto Category." In both tools, I must use the context menu to expand or collapse all levels of the hierarchy. There is no keyboard shortcut, such as Alt+click on the disclosure triangle.

If the missing functions described above were added to the Categories Panel, I would be a happy camper. But, as things are, it seems I must use both of the @Keywords tools to manage and assign keywords. And possibly the Thesaurus, too. That's a lot of added complexity and extra steps versus what I am used to, for which I don't see any offsetting benefit. And the fact that I only occasionally reorder the hierarchy (e.g., by adding a genus level above a list of species keywords) just means that I am even less likely to remember how and where to do it. Help! Isn't there a simpler, faster way?

I know iMatch is an amazingly powerful program, and I am not sorry to have purchased it. But I am daunted by my experience with keywording, which is just the first feature I have explored.

Chuck

Mario

#12
The Category Panel is for quickly assigning and un-assigning categories. And to view the categories assigned to the currently selected files.
You can also add new categories from there.
All category management functions is not included in this small helper panel, but in the Category View. Including re-arranging categories by drag and drop. This is how IMatch is designed to work.
Implementing such advanced features in the Category Panel would be technically challenging, expensive and mostly useless.
Just go with the flow. Manage categories in the Category View, use the Panel for quick assignments.

To un-assign files from the current category press <U>. No need to open menus or fiddling with the mouse.
See Keyboard Cheat Sheets for a list of all frequently used keyboard shortcuts.

QuoteAnd, when I drag or copy files to a keyword, that new keyword replaces all existing keywords
You are mistaken. Just tried it. Drag a file from keyword A to B. If I hold down CTRL, B is added (add). If I don't press a key, A is removed and B is added (replace).
Works as designed. No reports from other users either.

I'm not sure what makes your particular workflow so challenging.
Usually you setup your controlled vocabulary in the thesaurus. Then assign your files to keywords.
If you occasionally want to add new keywords to the thesaurus, you can do that directly in the Keywords Panel, and @Keywords will follow. Or via the Category Panel.
Re-arranging (moving) keywords along the hierarchy can be done easily by adding the new hierarchical keyword and removing the old one, in the KW panel or Category Panel.
No need to use @Keywords at all for these typical use cases.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

CLBennett

Thank you, Mario. You have the patience of Job. I don't want to continue to pester you, so I will try to make this my final round of comments on this topic.

Quote from: Mario on July 25, 2022, 07:43:11 PM
You are mistaken. Just tried it. Drag a file from keyword A to B. If I hold down CTRL, B is added (add). If I don't press a key, A is removed and B is added (replace).

You're right, of course. I saw this tip in the help files, but it doesn't work if I hold down the Ctrl key before I start to drag, which is how I expected the modifier key to work.

Quote from: Mario on July 25, 2022, 07:43:11 PM
If you occasionally want to add new keywords to the thesaurus, you can do that directly in the Keywords Panel, and @Keywords will follow.

Yes, I can do so using the context menu for the keyword name in the Keywords Panel. And the new keyword fits into the Thesaurus hierarchy. That's a neat tip. But, if the new keyword is created in the Keywords Panel and it is a child of a parent that is already assigned to the file, I end up with both the parent and child keywords appearing in the Keywords Panel, and I must manually delete the redundant parent listing from the file.

Quote from: Mario on July 25, 2022, 07:43:11 PM
Re-arranging (moving) keywords along the hierarchy can be done easily by adding the new hierarchical keyword and removing the old one, in the KW panel or Category Panel. No need to use @Keywords at all for these typical use cases.

I'm not sure I understand. Let's say I have a parent keyword Bird and a child keyword Goldfinch. And now I create a new keyword Songbird as a child of Bird, and I want to move the keyword Goldfinch to be a child of Songbird. I know I can drag the Goldfinch keyword under Songbird in the Category View of the @Keywords category, and the file contents will automatically be synchronized with the new hierarchy. Are you saying I can accomplish this without using @Keywords?

Quote from: Mario on July 25, 2022, 07:43:11 PM
I'm not sure what makes your particular workflow so challenging.

I became interested in iMatch primarily because I only use Lightroom for its DAM functionality. I use FastRawViewer to cull, and Capture one or DxO Photolab for image post-processing. So, if iMatch could replace Lightroom as my DAM, I could eliminate Lightroom from my workflow, and unsubscribe.

My challenge with iMatch is its complexity. In Lightroom, all the functions for creating, assigning, and re-ordering keywords are managed in one synchronized, hierarchical Keyword List. Take my example from above. I can create the Songbird keyword in the Keyword List as a child of Bird. Then, in the same panel I can drag Goldfinch under Songbird, and the file contents are synchronized. I don't have to manually add the new keyword to a thesaurus, because the Keyword List IS the thesaurus, and it is always synchronized with file contents.

Lightroom's equivalent of organizational Group Keywords always appear hierarchically, whereas in iMatch Group Keywords do not show in the @Keywords category. If Subject is a Group Keyword, for example, the keyword Subject|Bird will appear as Bird in @Keywords, sorted alphabetically between Airplane and Catalina, and separated by many entries from its hierarchical siblings like Mammal or Fish. This makes dragging to re-order (or even cut and paste) cumbersome. And if I don't use Group Keywords, then I end up exporting a lot of unnecessary keywords that were intended only for organization. I think.

Lightroom's Library is menu driven, and I find commands which I use infrequently are easy to find without resort to Help. My aging memory is terrible with shortcuts I use only occasionally, like remembering to Ctrl+drag files to add rather than move.

Mario, these are just some examples of why I find keywording in iMatch to be challenging, or perhaps I should say why I find Lightroom simpler and faster. iMatch might not end up replacing Lightroom for now, but I am glad to have it in my toolbox.

Chuck

Mario

Quotebut it doesn't work if I hold down the Ctrl key before I start to drag, which is how I expected the modifier key to work.

'Course not. Ctrl+left-click toggles the selection state of the clicked file. Your expectation is wrong. See Selecting Files
Like in Windows Explorer, you decide if you move or copy (or add/remove) with the keys while you are dragging.

QuoteBut, if the new keyword is created in the Keywords Panel and it is a child of a parent that is already assigned to the file, I end up with both the parent and child keywords appearing in the Keywords Panel, and I must manually delete the redundant parent listing from the file.

Yes. If you want to replace Location|Outdoor|Beaches|Daytona with Location|Outdoor|Beaches|Daytona|Ormond Beach (new child of the existing and assigned keyword) you
1. add Location|Outdoor|Beaches|Daytona|Ormond Beach in the Keyword Panel and then
2. <Ctrl>+click Location|Outdoor|Beaches|Daytona to remove it.
This 'moves' all selected files from Location|Outdoor|Beaches|Daytona to Location|Outdoor|Beaches|Daytona|Ormond Beach in your hierarchy.

You don't even need to type much. Just click on the old keyword to bring it in to the editor, append |Ormond Beach and press <Enter> to add the new keyword.

If the old keyword is part of your thesaurus and you no longer need it, you can directly delete it in the Keywords Panel with a click.
Right-click the keyword > Locate in Thesaurus > <Del>.

If you want to add the new keyword to your thesaurus, right-click it and "Add to Thesaurus".

I think this makes for a very efficient workflow, even it you need to do such a thing often. Which would be unusual, unless you are currently building a controlled vocabulary.

As I said, if the keywording in Lr works better for you, use it. Keywords saved by Lightroom will show up in IMatch. Different users have different needs. Whatever works for you is good.

I use Lightroom in my workflow, but I find it's keywording features quite clumsy and slow. I do most keywording using a handful of Favorites in IMatch firing keyword links, and add the occasional keyword manually in the Keyword Panel. I only have about 1,500 keywords to deal with, and a very good controlled vocabulary. In my experience, having too many keywords is (except for scientific taxonomies, bird-, train- or plane spotters) usually a sign of a too complex setup or an image collection in need of some cleanup and re-organization. Your mileage may vary.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

CLBennett

#15
Thanks again, Mario.

Hmm. In Windows Explorer, if I first press the Ctrl key, and then left-click and hold on a file, I can drag and drop it, and it will be copied to the new destination. As expected, at least by me. In iMatch, if I first press the Ctrl key, and then left-click and hold on a file, the file turns light gray and will not drag. It may be preferable to start dragging before pressing the modifier key, it just never occurred to me to be necessary.

I don't want to further beat a dead horse, but just so you don't think I am completely hopeless, let me explain briefly why my controlled vocabularies change fairly frequently. I try to keep my keywords hierarchy as flat as possible, which I think is good practice. So, for example, when I started photographing birds, I began with a list of species keywords. When this list became unwieldy, I added order level keywords like Passeriformes, and moved the relevant species keywords underneath. And so on. Why didn't I start with a complete taxonomy? Because there are 18,000 species in 2200 genera, 200 families, and 29 orders. In my lifetime I will only photograph a tiny percentage of those species, but I don't know in advance which ones they will be. So, I add species as they are encountered, and I add other taxonomical levels when needed for navigation. I have taken the same approach with subjects ranging from sealife to architecture to racing sailboats, and with locations and activities, too. I just don't see how I could create controlled vocabularies in advance. This workflow seems efficient to me, but it does depend on being able to quickly and easily manipulate keyword hierarchies. And, then again, maybe I AM hopeless :).

Mario, you have been more than generous with your time, and I really do appreciate it.

Chuck