Unknown keyword = a keyword without any corresponding label in the catalog structure
Unassigned keyword = a keyword without any corresponding label assigned to the image
The "Filter With Unknown Keywords" displays only images with one or more unknown keywords in their metadata. The "Filter With Unassigned Keywords" is more inclusive: it filters in the images with one or more orphan keywords. (Such a keyword either doesn't have a corresponding label defined in the catalog, or that label has not yet been assigned to the image).
Just for the record, I wrote these two scripts mostly thinking they might be useful to Harald in his effort to clear up unwanted keywords - but thought they might be useful to others (including myself) too. Feel free to provide any feedback, including encountered problems or oddities. (My own testing of the scripts has been fairly light, especially as I couldn't easily create orphan keywords in PSU.)
Hope that helps,
Vlad
P.S.1) Instructions for script-based filters:
To make PSU recognize the filter scripts, first save them in the "Scripts\FilterScripts" sub folder of the application data folder (e.g. C:\Users\<yourname>\AppData\Local\IDimager Systems, Inc\Scripts\FilterScripts). If that folder doesn't exist yet then create it yourself. The filters will then appear in the FILTER dropdown within the filter bar.
P.S. 2) Please note a minor (and subtle) technical point about "Filter With Unassigned Keywords":
If there is an assigned private label that matches an existing keyword (while there is no non-private label that matches it), I still treat the keyword as a non-assigned keyword. (I should actually test for labels configured to not create keywords - whether private or not - but I haven't found in the API a way to do it; I'm waiting for a hint from Hert.) If, for some reason, that's not what you want, you could simply remove the following line:
Code: Select all
if not Catalog.IsPrivateProp(AProps.Items[j]) then