Holistic product view

From Open Food Facts wiki

One of the core features of OFF is the ability to analyse, compare and select products based on a large set of product characteristics.This is possible thanks to a large collection of taxonomies, which may be used to encode product characteristics.

This page describes some approaches to the clever usage of taxonomies, which uses the idea of combining facets, so that the user can find and compare products.

The taxonomies and facets

Various taxonomies and facets can be used to characterise a product:

  • category - describes the product in a generic sense. Think of aisles and shelves in the supermarket down to specific product categories;
  • ingredients - for knowing what components a product is made of;
  • labels - for knowing processes used in creating ingredients and/or product;
  • origins (countries) - for the origins of ingredients and products (this is not yet a taxonomy);
  • storage/preservation - instructions how to store unopened products and preserve opened products (not yet a taxonomy);
  • packaging - to get information on how the product is packaged, which might allow filtering the best packaging for the environment;

Ingredients taxonomy

The ingredient taxonomy encodes the ingredients found on the product. This should be a one-on-one mapping between the ingredients list and the taxonomy. With this it is possible to filter out products containing a specific ingredient.

There are products where there is no ingredient list or a nicely parsable list with ingredients hidden in the text (even partially), then these can be gathered and entered as ingredients.

By exploiting the hierarchies defined in the ingredients taxonomy, it is possible to filter on a group of ingredients.

Labels taxonomy

Labels are claims, logos, and other statements found on products. Sometimes these labels are statements which can be checked against the ingredients. For instance the label no added sugar, should imply that the ingredient sugar is not on the ingredient list. The labels can refer to processes in the value chain, like fair-trade or organic. These labels can be encoded on the ingredients list as well, but is a bit more obscure.

The label can also encode other claimed characteristics, which refer to processes, for example filtered, artisanal, etc.

It is also possible to add storage instructions as labels (lacking better solutions), such as frozen or refrigerated.

The hierarchy is not (yet) much developed, but it is possible to get any organic or any fair-trade label,

Category taxonomy

The categories taxonomy is more complicated as there is not a clear relationship with what is found on the product. The name of the products is not always well matched to the ingredients. Assigning the correct is a combination of interpreting marketing names, ingredient lists and labels found on the packaging. Often also knowledge of the current taxonomy and its hierarchy is required. And their is also a relationship with legislation, as naming a product is not always free.

Examples

Here are some examples of how this works in practice. This approach is used to better define categories and with that to be able to detect products that should not be part of a category. With this one can monitor the quality of a category.

The examples are a bit limited as only two facets can be specified at the same time (more in the coming months (after december 2023).

Apple juices/nectars

Ingredients combination

By combining the category facet with an ingredients facet, it is possible to find:

Labels combination

By combining a category with a label, we filter even more.