Folksonomy Engine

From Open Food Facts wiki
Jump to navigation Jump to search

Folksonomy Engine


The goal of Folksonomy engine is to unleash an ocean of new usages regarding food knowledge. Folksonomy engine allows all kind of people — citizens, researchers, journalists, professionals, artists, communities, innovators... — to enrich and use Open Food Facts, thanks to free properties for your own use or to enrich the shared knowledge. Open Food Facts, as the biggest open-food database in the world, already feeds hundreds of data reuses. It will allow thousands of new apps and new usages.

Folksonomy engine project was partly funded by NLnet Search and Discovery program



  1. Folksonomy Engine API is up and running.
  2. Folksonomy Engine user interface is currently tested by Open Food Facts administrators. There also a simpler interface that can be installed as a user script.

People: {{{who}}}

Impact (why)


Expected outcomes (what)



  • 2021: project launched
  • 2021-10: Folksonomy Engine API works
  • 2021-11: Folksonomy Engine UI

Resources / Contributing




Documentation and communication

  • Short presentation (4 pages) [old documentation, to be modified]
  • Project document Wiki page. (This current document)

Other directories/documents (if any)

Code and bug tracking on Github:

Slack channel: #folksonomy_engine

Use cases

  1. ​ Health and food safety
  2. ​ Cooking and preparation
  3. Grocery Apps
  4. Product qualities
  5. (Bad) Food Marketing
    1. ​List properties of products targeting particular people
    2. ​List properties of products related to consumers behavior

See, some use cases we are starting to investigate.

We also have investigated separately mobile use cases, as they allow very different kind of things.


As of today, Open Food Facts is made of a set of predefined properties (about 20 types of properties such as the product name, the product weight, the ingredients, the nutrients, etc.). Folksonomy engine is adding several kinds of new individual data properties to Open Food Facts or Open Products Facts. In fact, the scope of such new data properties is nearly endless, so we intend to get feedback from the community to define which one we should implement and how the user interface should look like.

Properties, or material facts, allows to specify a value or multiple values for the corresponding product.

Example: This product height is 35 cm, which ends up in a tag like [height = 35cm].

Sometimes a property can have multiple values:

Example: This product has to be recalled if produced on 2020-03-31, 2020-04-01, 2020-04-02. [Recall: if produced from 2020-03-31 - 2020-04-02]

Wishful deliverables

Here we put wishful deliverables if any.

  • Tool to monitor tag usages.
  • Workshop for contributors.


  • What about a deliverable dedicated to communication?
  • Use case in collaboration with scientists?


Old timeline.

Deliverable Date Who Comments
D1. Ideation document: uses cases (report in wiki page)
  • define first use cases (see D6)
Feb. XX
D2. Functional and technical specifications (architecture design) (report in wiki page) September Charles

Stéphane (Review)

D3. Server-side implementation (database and web UI): properties’ database implementation and CRUD interfaces with a minimal UI to validate the design:
  • database implementation (new database or new fields)
  • CRUD interfaces in the backend (Product Opener)
  • web interfaces (in production)
September Christian (dev)

Charles (tests)

D4. Search and discovery integration and APIs.
Making properties accessible using simple search and a discovery engine; integration with the advanced search; API access
  • all dev in the backend
April-May Stéphane (dev)

XX (tests)

D5. Mobile UI integration on the Open Food Facts apps June XX
D6. Three uses cases:
  1. move ambiguous “Nutriscore Experiment” labels in tags
  2. XXXX (to be found)
  3. XXXX (to be found)
Sep. XX