Ingredients parent names for fish

The ingredients taxonomy, i.e. all the names of ingredients found on the product. For each ingredient it is possible to define its name in multiple languages. Of these languages one language is a used as a key in order to identify all the other translations. The preferred language of this key is english. However for many ingredients english translations are not available and another language must be used as key. The other language key must be in latin script.

The taxonomy supports a hierarchical structure. Thus for each ingredient it is possible to assign a parent. This parent should be understood as an isa-relation. For instance an orange isa fruit. But orange juice is a juice an NOT an orange.

After this introduction let me get into the issue of this topic.

As we get more and more ingredients without parents in english, the ingredients tree gets more and more obscure. I guess this can not be helped, but we must try to limit this as much as possible.

For ingredients of natural origin, i.e. plants, vegetables and fish, I propose to use the latin species and subspecies names as keys. This allows us to be more accurate and clear in the tree structure. When presenting the tree in a specific language it is possible to use that specific language. However when that language is not available we can fall back to the latin names.

For instance in Italy there are many varieties of en:radicchio, which are definable by their species name, but have no names in other languages, but are just called radicchio from XX. Also the english name of many fish species often include the fishing region to identify the species, i.e. Atlantic XX-fish.

In summary, the proposal is not to replace the name in a language, but to be more accurate in the tree building and to have a solution for midding languages.

I would prefer to keep the canonical entries (that we use as ids in the database, JSON etc.) of all ingredients in English, whenever possible. It makes things much easier to understand to most people (more English speakers than Latin speakers). We certainly should add Latin translations as well.

Note that for the “is-a” relationship, we can use any key to refer to the parent, not necessarily the canonical key that we use as id. So it’s fine to refer to parents using the Latin species / subspecies.

I think I have to be more clear about the issues I want to solve, I dived too fast into the solutions. The inspiration for this was the pull request by @vaiton: feat: add Totano to ingredients taxonomy by VaiTon · Pull Request #7438 · openfoodfacts/openfoodfacts-server · GitHub He needed to introduce a parent, but could only use the latin genus name.