[digiKam-users] Advanced search and hierarchical tags

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[digiKam-users] Advanced search and hierarchical tags

Olivier Croquette
Hello everyone,

I have the following kind of hierarchical tags:

Events / 2020 / Event1

Events / 2020 / Event2

Events / 2021 / Event3

They are displayed nicely in the tag manager. Now I would like to find
items that have no "Events" tags. For that I tried various things in the
"Advanced search", with no success. The first step would be a search
that returns the items that are indeed tagged with a tag underneath
"Events", but even that I did not manage.

I created a search with the option "Meet All of the following conditions":

- "Return items with tag":"Event1" -> works as expected

- "Return items with tag":"Events" -> does not find anything

- "A tag of the item contains": "Event1" -> works as expected

- "A tag of the item contains": "Events" -> does not find anything

So it looks like the parent tags are completely ignored by the search. I
just migrated from Lightroom which behaves differently, e.g. like I need it.

Of course I could set the tag "Events" explicitly to all items tagged
with "Event1", "Event2", "Event3" but that would be additional work and
defeat the idea of hierarchical tags.

Am I doing something wrong? Is there an option somewhere to match parent
tags implicitly?

Thanks!

Regards
Olivier

Reply | Threaded
Open this post in threaded view
|

Re: Advanced search and hierarchical tags

Maik Qualmann
The behavior is correct if the "Events" tag is not assigned to a image.
In the advanced search you have to reverse the search, you can open the
"Options >>" at the top of the window, there you select "None of these
conditions are met".

Maik

Am Sonntag, 28. Februar 2021, 10:46:16 CET schrieb Olivier Croquette:

> Hello everyone,
>
> I have the following kind of hierarchical tags:
>
> Events / 2020 / Event1
>
> Events / 2020 / Event2
>
> Events / 2021 / Event3
>
> They are displayed nicely in the tag manager. Now I would like to find
> items that have no "Events" tags. For that I tried various things in the
> "Advanced search", with no success. The first step would be a search
> that returns the items that are indeed tagged with a tag underneath
> "Events", but even that I did not manage.
>
> I created a search with the option "Meet All of the following conditions":
>
> - "Return items with tag":"Event1" -> works as expected
>
> - "Return items with tag":"Events" -> does not find anything
>
> - "A tag of the item contains": "Event1" -> works as expected
>
> - "A tag of the item contains": "Events" -> does not find anything
>
> So it looks like the parent tags are completely ignored by the search. I
> just migrated from Lightroom which behaves differently, e.g. like I need it.
>
> Of course I could set the tag "Events" explicitly to all items tagged
> with "Event1", "Event2", "Event3" but that would be additional work and
> defeat the idea of hierarchical tags.
>
> Am I doing something wrong? Is there an option somewhere to match parent
> tags implicitly?
>
> Thanks!
>
> Regards
> Olivier




Reply | Threaded
Open this post in threaded view
|

Re: Advanced search and hierarchical tags

Olivier Croquette
On 28.02.21 12:37, Maik Qualmann wrote:
> The behavior is correct if the "Events" tag is not assigned to a image.
> In the advanced search you have to reverse the search, you can open the
> "Options >>" at the top of the window, there you select "None of these
> conditions are met".

Thanks for quick feedback Maik. This just negates everything, but that
doesn't allow me to use "Events" to match any tag that is underneath.

To rephrase in one sentence, my goal is to find items that have (or not)
any tag underneath a given parent tag, without the parent tag being set
explicitly on the said items.

Let's have another example, if I have the tags:

Car > Tesla > Model S

Car > Renault > Zoe

Car > Unknown

And I search for items tagged with "Car", I want to find item items
tagged with "Model S", "Zoe" and "Unknown" even if they are not tagged
explicitly with "Car".

I understand that an "explicit" matching strategy might be wanted in
some cases, but the "implicit" is just as useful. Can Digikam do that?

Olivier



Reply | Threaded
Open this post in threaded view
|

Re: Advanced search and hierarchical tags

Maik Qualmann
The advanced search cannot do this. But in principle it is the same if you
select the tag "Car" in the left sidebar and have activated [x] Include Tag
Sub-Tree under Menu-> View.

Maik

Am Sonntag, 28. Februar 2021, 16:24:59 CET schrieb Olivier Croquette:

> On 28.02.21 12:37, Maik Qualmann wrote:
> > The behavior is correct if the "Events" tag is not assigned to a image.
> > In the advanced search you have to reverse the search, you can open the
> > "Options >>" at the top of the window, there you select "None of these
> > conditions are met".
>
> Thanks for quick feedback Maik. This just negates everything, but that
> doesn't allow me to use "Events" to match any tag that is underneath.
>
> To rephrase in one sentence, my goal is to find items that have (or not)
> any tag underneath a given parent tag, without the parent tag being set
> explicitly on the said items.
>
> Let's have another example, if I have the tags:
>
> Car > Tesla > Model S
>
> Car > Renault > Zoe
>
> Car > Unknown
>
> And I search for items tagged with "Car", I want to find item items
> tagged with "Model S", "Zoe" and "Unknown" even if they are not tagged
> explicitly with "Car".
>
> I understand that an "explicit" matching strategy might be wanted in
> some cases, but the "implicit" is just as useful. Can Digikam do that?
>
> Olivier




Reply | Threaded
Open this post in threaded view
|

Re: Advanced search and hierarchical tags

Olivier Croquette
On 28.02.21 17:02, Maik Qualmann wrote:
> The advanced search cannot do this. But in principle it is the same if you
> select the tag "Car" in the left sidebar and have activated [x] Include Tag
> Sub-Tree under Menu-> View.

OK, this is indeed a way to do the positive search, but it doesn't work
for the negative search.

The negative search is for instance required in the "Events" use case. I
need to find the items without a tag underneath "Events" so that I can
add it.

A workaround would be to use the "Include Tag Sub-Tree" to show all
items with an event, add the "Events" tag explicitly to them, use the
Advanced search to find items without the "Events" tag, do my work, and
then remove the "Events" tag again. This would probably work, I need to
try it out, but it's very cumbersome and will change the metadata most
of the files twice. Or I let the "Events" tag on them, but it is not
very nice.

Do you think the "subtree" capability would be a good addition to the
"Advanced search"? I could write a feature request, or even have a look
how to implement it, even though I am not sure if this the best way to
start contributing to Digikam.

Olivier
Reply | Threaded
Open this post in threaded view
|

Re: Advanced search and hierarchical tags

Maik Qualmann
Done:

https://invent.kde.org/graphics/digikam/-/commit/
cd88fb42c4ed1bc3c36173631ddacac8d560fb57

Maik

Am Sonntag, 28. Februar 2021, 17:23:46 CET schrieb Olivier Croquette:

> On 28.02.21 17:02, Maik Qualmann wrote:
> > The advanced search cannot do this. But in principle it is the same if you
> > select the tag "Car" in the left sidebar and have activated [x] Include
> > Tag
> > Sub-Tree under Menu-> View.
>
> OK, this is indeed a way to do the positive search, but it doesn't work
> for the negative search.
>
> The negative search is for instance required in the "Events" use case. I
> need to find the items without a tag underneath "Events" so that I can
> add it.
>
> A workaround would be to use the "Include Tag Sub-Tree" to show all
> items with an event, add the "Events" tag explicitly to them, use the
> Advanced search to find items without the "Events" tag, do my work, and
> then remove the "Events" tag again. This would probably work, I need to
> try it out, but it's very cumbersome and will change the metadata most
> of the files twice. Or I let the "Events" tag on them, but it is not
> very nice.
>
> Do you think the "subtree" capability would be a good addition to the
> "Advanced search"? I could write a feature request, or even have a look
> how to implement it, even though I am not sure if this the best way to
> start contributing to Digikam.
>
> Olivier