Add convenient multi-language functionality

Started by kkiel, June 20, 2018, 11:05:53 AM

Previous topic - Next topic

kkiel

Hi,

I would greatly appreciate a conventient functionality to make IMatch ready for storing and exporting metadata like keywords, headlines and descriptions in several languages. Like: Ringelblume / Calendula officinalis / Common Marigold / Souci officinal
The information should be stored in a central place (best: a thesaurus), where it could be added and changed. If needed there should be a way to  export images with metadata in the language of the user's chosing.

akirot

Hi,
Kkiel you definitely are not alone. I second your request.
Just brainstorming: Why not extending the categories? Just add synonyms and other languages - similar to the existing keyword thesaurus. From a database point of view it's an easy implementation. The user interface must be extended to show all or selected (synonyms, languages) categories.
This would be a good starting point (from a management perspective). I, too remember certain species better in a different language than my mother tongue: e.g. if you have ever seen a "razorbill" it's easier to remember than "Tordalk" (and I'ld love to add the latin name as unique identifier).
And of course their must be a mechanism to transfer selected! categories to specific metadata fields (to make them visible to the outer world).

+1

mastodon

+1 I would use it for names (in Hungary there is a habit to change the name after marriage)

Mario

Quote from: mastodon on June 20, 2018, 07:37:37 PM
+1 I would use it for names (in Hungary there is a habit to change the name after marriage)
How would that help with names changed after a marriage?
I would say that the Data Mechanic app which is part of IMatch 2018 is a better help. It can search and replace metadata in your entire database (e.g. change the names of persons).
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Mario

Quote from: akirot on June 20, 2018, 02:14:47 PM
From a database point of view it's an easy implementation.
Do you volunteer? I would rate this as "several person weeks of full-time development" to get all the ends working, from tree controls to update functions to everything UI-related, apps, IMWS endpoints, database diagnosis routines, category formula engine, category import & export features, IMatch help, ...
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

ubacher

I only deal with a subset of this: Descriptions. Sometimes I want them in English, sometimes in German.
I handle this by using the Notes app and storing the German Text as an attribute "Notes"

I have different Batch processor presets which either print the Description or the Notes


Mario

Quote from: ubacher on June 20, 2018, 08:53:55 PM
I only deal with a subset of this: Descriptions. Sometimes I want them in English, sometimes in German.
I handle this by using the Notes app and storing the German Text as an attribute "Notes"

I have different Batch processor presets which either print the Description or the Notes
This is the standard way to do this. Using Attributes to store multi-language (or multi-user / multi-client / multi-target) data and then language-specific Batch Processor Presets for the export gives a lot of flexibility.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

akirot

@Mastodon/Mario: With the new features name changes could be handled with newly added synonyms, thus you won't lose the former name. A replace function can't do that to this extend.

@Mario: That's what I tried to express. The database implementation itself is simple. The UI etc. drive the effort.
Personal side note: Nevertheless I would like you to put effort into really added value such as this. To me e.g. online help doesn't add any value - despite having cost you time undoubtedly. The existing help was/is exceptionally good.

@ubacher: That's what I do similarly using attributes.

Imagine a kind of dictionary/thesaurus/category set with synonyms/selectable languages.
E.g.:

Canis (Latin)
- dog (English)
- perro (Spanish)
- Hund (German)
- ...

Imagine you could decide which language(s) to use at finalization of the image (version).
Imagine you would find the picture later searching for e.g. "dog" whilst you only had added "Hund" to the keywords.

This all can be done locally without any AI in the cloud!

Just brainstorming/dreaming :-)

Mario

#8
QuoteI would like you to put effort into really added value such as this. To me e.g. online help doesn't add any value - despite having cost you time undoubtedly.

This will be the only help available in the future, at some point. It is already the section of photools.com generating the most page views. And its not even official.
The help app, as a fall-back for users who are not always on-line is just that, a fall-back.
I already enjoy the benefits of being able to quickly update wrong help information or add new stuff and rolling it out immediately.
I'm sorry to hear that you don't see any benefit in that for you personally. But I'm sure the majority of users will see this differently. and so I consider this time well spent.

I've spent maybe a week doing all the help migration. This is nothing compared to the massive amount of work that would be generated by the feature under discussion in this thread. I'm not judging this request, just saying that this is a lot of work and I cannot even fathom yet all the changes that would be required by this. Categories are involved in a lot of things...
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

mastodon

OK, I would use synonyms for handling name changes. I will look for it.

Mario

Quote from: mastodon on June 21, 2018, 11:45:05 AM
OK, I would use synonyms for handling name changes. I will look for it.

I'm still not clear about how you would handle post-marriage name changes in metadata...
Do you need to change the metadata to contain the new name?
Do you need to find "New Name" when you search for "Old Name"?
...?
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

mastodon

#11
I would like to store two or even more names for one person, like synonyms. The maiden name (ex. "Kovács Helga" - where Helga is the given name) and the name after marriage (ex. "Tóth Béláné" what means that she the the wife of "Tóth Béla"). So Hungarian women might loose their given name after marriage :)
And now is a new habit, that both of them change their name: ex. they will we be: Kovács-Tóth Helga and Kovács-Tóth Béla.
[Sorry, I have to edit it, even I can not follow the names...]

sinus

Quote from: mastodon on June 21, 2018, 04:42:00 PM
So Hungarian women might loose their given name after marriage :)
And now is a new habit, that both of them change their name: ex. they will we be: Kovács-Tóth Helga and Kovács-Tóth Béla.

As far as I know, this habit is comon in a lot of countries, not only in Hungary. If you look only at sports, you will see a lot of woman (and sometimes men) has changed the name after marriage. So far normal.

If you use synonyms, this would be easy.
Before marriage the woman called Tóth Helga (for example).
If she changes here name, add a synonym, like Kovács-Tóth Helga.

Then search all Tóth Helga in your database, select all and uncheck in the keyword-panel this name and check it again.
After this the new synonym is added to all selected files.

Since this will not be often the case, this should be fine.
About the original feature request of kkiel I have not thought about it.
Best wishes from Switzerland! :-)
Markus

kkiel

Thank you akiron, mastodon and ubacher for supporting my feature request! I can imagine that implementing it would be a lot of work for Mario. But is it necessary to do it via the categories? With my 65000+ Categories (mostly because of keywords) I'm already reaching the limits of windows, as Mario told me. Why not simply implementing new metadata fields and linking them somehow (I'm not a developer ...).
I manage a commercial picture agency with IMatch, featuring historical images with lots of strange keywords. For me it's not the possibility to write apps (though that is great) that makes or brakes my success, but the ability to describe and keyword my images with as many words as possible (and sensible, of course). In as many languages as possible. At the moment I do that with attributes, but I have to manually change every attribute field though the stored information is always the same (like Ringelblume / marigold). This is a task that shouts for a database operation! Whenever I want to change a name (those botanists are doing it all the time ...) or add something, I would like to do it in a central place. I would even abdicate IPTC/XML-Data to have this feature, i.e. storing metadata completely seperate from the images in IMatch and only write XML-Data into the images on processing them for export.
So I heavily vote for images served with fresh metadata every time!

Mario

#14
Tip: Changing a keyword from "A" to "B" in any number of files is easy to do:

Just rename the corresponding @Keywords category. IMatch will update the keywords accordingly in all affected files. See also the tutorial videos in the IMatch Learning Center which show this. And other keyword-related tricks and features.

Tip: Managing multi-language data is also fairly easy to do via Attributes. When exporting a file, use a MD Template to copy Attribute values into keywords and other metadata tags. Or maybe use language-specific categories for input, which is doable via category variables with filters. Changing an Attribute value from A to B is also easy to do. Select all affected files and then change the Attribute value.

Tip: For exporting files via the Batch Processor you can also copy Attribute values or selected categories into keywords and other tags via the metadata options provided by the Batch Processor. Same for renaming files, because here you can also produce names using Attributes and/or categories.

I understand that a dedicated multi-language feature centered around extensions to the existing category system would improve your personal workflow - but I doubt that many users would benefit from that. And yes, it would be a lot of work. Several weeks at least.

Dealing with 65,000 categories is already stretching things a lot - IMatch implements many tricks like partial loading of tree controls - but there are limits in what Windows can handle. It may also cause performance issues, because every operation which searches categories or processes them in some way is much slower with 65,000 categories than with 10,000.

Question: Maybe you can export your categories to a file (via the Import & Export panel) and send the file (zipped) to me? I can do some performance tests with your life data to see if and where IMatch runs into issues. Speeding of features and stretching limits is an always ongoing task for me.

From what I can tell, most users never exceed 5,000 categories. Maybe 10K or 15K categories for scientific users with deep classification systems. But 65,000 categories truly a lot. I've no doubt that this is what you need for your very specific requirements, but it is pretty uncommon.

Usually such special requirements is managed by purpose-built software, or custom extensions for existing DAM systems.
All large DAM vendors support customization and offer on-site consulting services. Which is expensive, though.

IMatch users with special requirements can easily extend IMatch with the powerful and flexible app system based on IMWS.
I know of several projects where in-house IT teams or consultants have written custom apps for IMatch to manage specific workflow requirements, integrate with other software or similar tasks. Some of these apps were written by me, for standard consulting fees.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

sinus

Quote from: akirot on June 21, 2018, 08:15:25 AM


Imagine a kind of dictionary/thesaurus/category set with synonyms/selectable languages.
E.g.:

Canis (Latin)
- dog (English)
- perro (Spanish)
- Hund (German)

Imagine you could decide which language(s) to use at finalization of the image (version).
Imagine you would find the picture later searching for e.g. "dog" whilst you only had added "Hund" to the keywords.

If we had Keywords with synonyms like this (with something unique for the language, like here e=):

Canis
e=dog 
s=perro 
g=Hund

If the above woule be written as synonyms, you would choose Canis and the file would have:

Canis;e=dog;s=perro;g=Hund

Searching in the DB for dog or Hund would be no problem, all files would be found.
For finalizing some files would depend on the amount of files.

If only 10 files, we could simply delete all unwanted langues with the Keyword-Panel or the Keywords in the Metadata-Panel.
If there are 100 file to do, you can do this with the Keyword-Panel with select all and look at the font (see help) and then delete the unwanted.

For 100 files and more, assuming the keywords are in the files as described above, of course a script would be the best.

In the script, for example, you could just choose something like
- use only the German keywords
- use only the spanish keywords
- use only English keywords
- delete the Spanish and Dutch keywords


I am not a scripter, but I am quite sure, that such a script would not be very difficult for a real scripter.  ;D But of course I do not know.

If you do not like, having all languages in the files, such a script would also very helpful, not for finalizing, but also what languages you would like to have in the files.
For example, for files where you are pretty sure you will never use them otherwise, for such files you could use the script to keep such files "slim".
Best wishes from Switzerland! :-)
Markus