Products quantities: Difference between revisions

From Open Food Facts wiki
Line 53: Line 53:
| 1 kg (8 pots) - [2 x (4 x 125 g)] || - || 1 || kg || -
| 1 kg (8 pots) - [2 x (4 x 125 g)] || - || 1 || kg || -
|-
|-
| || 8 || - || - || pots
| or || 8 || - || - || pots
|-
|-
|- || 2x4 || 125 || g || -
| or || 2x4 || 125 || g || -
|-
|-
| 275 g [250 g + 25 g (10 %) gratuit] ||  
| 275 g [250 g + 25 g (10 %) gratuit] ||  
Line 67: Line 67:
| 200 g [160 g (2 x 8 pièces) mini-nems + 40 g sauce nuoc mâm] ||
| 200 g [160 g (2 x 8 pièces) mini-nems + 40 g sauce nuoc mâm] ||
|-
|-
| 211,5 g (9x23,5g) ||  
| 211,5 g (9x23,5g) || - || 211,5 || g || -
|-
| or || 9 || 23,5 || g || -
|-
|-
| 220g (2 unités, 2 x (60 g + 50 g)) ||  
| 220g (2 unités, 2 x (60 g + 50 g)) ||  
Line 80: Line 82:
|-
|-
| 375 g, 30 pièces || - || 375 || g || -
| 375 g, 30 pièces || - || 375 || g || -
|-
| or || 30 || - || - || pièces
| or || 30 || - || - || pièces
|-
|-
| 240 g (12 Portions) || - || 240 || g || -
| 240 g (12 Portions) || - || 240 || g || -
|-
| or || 12 || - || - || portions
| or || 12 || - || - || portions
|-
|-
Line 95: Line 99:
|  330 g (dont 180 g net), 370 mL ||
|  330 g (dont 180 g net), 370 mL ||
|-
|-
| 28 g - 20 dragées ||  
| 28 g - 20 dragées || - || 28 || g || -
|-
| or || 20 || - || - || dragées
|-
|-
| 260 g (26 portions de 10 g)
| 260 g (26 portions de 10 g)
|-
|-
| 130 g pour 20 galettes ||  
| 130 g pour 20 galettes || - || 130 || g || -
|-
| or || 20 || - || - || galettes
|-
|-
| 280 ml - 310 g ||  
| 280 ml - 310 g ||  
|-
|-
| 25 sachets
| 25 sachets || 25 || - || - || sachets
|-
|-
| 220 g (1 personne)
| 220 g (1 personne)

Revision as of 21:37, 21 December 2015

How to handle it

Logic to handle it

Existing libraries to parse weights and quantities

Using Wikidata

Possible calculations

  • Weight per item
    • Is the same item always the same weight (ham slices)
    • Useful if you eat one of the cakes in the packaging, and want to know how many calories you ate without having to weight the cake
  • Percentage of water
    • Useful to calculate actual cost if we know the price
    • Useful to fix calorie calculation for some products
  • Calculate packaging weight by making the difference between actual weight and advertised weight
  • Calculate weight per volume for products (1dL of water is 1kg, but this changes for various products that also have a mention of their volume)
  • Some products will have multilingual weights
    • we can check that the conversion is well done if we have both values
    • we can display the value in several metrics if we have a sanitized value in one metric

Generic approach

The real-world quantities for products as used by the users us a far from ideal. However it is possible to find some common approach. (At least we try here)

  • to indicate times, either a "*" or a "x" can be used;
  • the generic formula is: multiplier * quantity size_unit for units
  • multiple formulas are distinguished by a ";"
    • multiplier indicates how often a quantity unit is used, i.e. 6 (25 cl bottles). This is a number.
    • quantity the size of the units in size_units, i.e. 25 (size) cl (size_unit) bottles (units). This is a number.
    • size_units is the unit for the size parameter, i.e. kg, ml or cl. This is an enumerated?
    • unit is the element the numbers and sizes refer to, i.e. pot, bottle, sack, etc.

Some remarks:

  • not all 4 elements are always specified, eg 250 g means 1*250 g for the entire product
  • sometimes more than one quantity is specified, e.g. 250 g (5x50 g) might mean 1x250g for the entire product OR 5 50g pots
  • there are exceptions, such as multiple multipliers.
  • naturally users do not use this formal approach, but most quantities can be translated to this approach.

Test: To test this approach the examples found in France have translated to this formal approach:


Quantity as stated by user Multiplier Quantity Size_unit Units
1 kg (8 pots) - [2 x (4 x 125 g)] - 1 kg -
or 8 - - pots
or 2x4 125 g -
275 g [250 g + 25 g (10 %) gratuit]
2 * 400 g (800 g)
4X100g 4 100 g -
2*25g 2 25 g -
200 g [160 g (2 x 8 pièces) mini-nems + 40 g sauce nuoc mâm]
211,5 g (9x23,5g) - 211,5 g -
or 9 23,5 g -
220g (2 unités, 2 x (60 g + 50 g))
2 x 21.5 g = 43 g
300 g (15 biscuits de 20 g)
1 Litre - 1 litre -
18tranche 18 - - tranches
375 g, 30 pièces - 375 g -
or 30 - - pièces
240 g (12 Portions) - 240 g -
or 12 - - portions
400 g (12 à 18 bouchées)
Poids net 190 g, poids net égoutté 140 g
contenance : 4250ml, poids net total : 4000g, poids net égoutté : 2210g
3 x [200 g (130 g net égoutté), 212 ml]
330 g (dont 180 g net), 370 mL
28 g - 20 dragées - 28 g -
or 20 - - dragées
260 g (26 portions de 10 g)
130 g pour 20 galettes - 130 g -
or 20 - - galettes
280 ml - 310 g
25 sachets 25 - - sachets
220 g (1 personne)
128 g (16 bâtonnets de 2 cubes)
12 (calibre Moyen => 53 à 63 g)
8 sachets de 4
400 g, 425 ml (3 douzaines)
228g (4x57g) / 48 cl (4x12cl)

Countries

France

Product name Quantity as stated by user Product page URL
Brassé nature 1 kg (8 pots) - [2 x (4 x 125 g)] (link)
Emmental Coeur de Meule (28 % MG) 275 g [250 g + 25 g (10 %) gratuit] (link)
Basilico 2 * 400 g (800 g) (link)
Frais Malo Sucré 4X100g (link)
Twix 2*25g (link)
16 mini-nems Poulet, menthe, Légumes, coriandre - Précuits - Surgelés 200 g [160 g (2 x 8 pièces) mini-nems + 40 g sauce nuoc mâm] (link)
9 barres au chocolat au lait et aux céréales 211,5 g (9x23,5g) (link)
Fondant au chocolat 220g (2 unités, 2 x (60 g + 50 g)) (link)
Kinder Bueno 2 x 21.5 g = 43 g (link)
Prince Goût Chocolat 300 g (15 biscuits de 20 g) (link)
Eau minérale Contrex 1 Litre (link)
Brioche Harrys Tranchée la recette Originale 18tranche (link)
FERRERO ROCHER Boîte de 30 375 g, 30 pièces (link)
Kiri® (32 % MG) à la crème de lait 240 g (12 Portions) (link)
Bouchées de Poulet à la provençale 400 g (12 à 18 bouchées) (link)
Thon entier au naturel Poids net 190 g, poids net égoutté 140 g (link)
Haricots beurre très fins contenance : 4250ml, poids net total : 4000g, poids net égoutté : 2210g (link)
Lentilles (Lot de 3 boîtes) 3 x [200 g (130 g net égoutté), 212 ml] (link)
Délices du Potager - Mini poireaux 330 g (dont 180 g net), 370 mL (link)
Chewing Gum Hollywood 28 g - 20 dragées (link)
Fruit d'Or pro-activ® (35% MG) Tartine 260 g - Unilever 260 g (26 portions de 10 g) (link)
Galettes, tout au beurre 130 g pour 20 galettes (link)
Ketchup P'tits Heinz 280 ml - 310 g (link)
Original Earl Grey 25 sachets (link)
Cappellettis Tofu, Epinards Bio - 220 g - Céréal Bio 220 g (1 personne) (link)
KUB ® Or 128 g (16 bâtonnets de 2 cubes) (link)
Oeufs de poules Elevées en Plein Air (x 12) calibre Moyen - Carrefour 12 (calibre Moyen => 53 à 63 g) (link)
Belvita sablé lait 8 sachets de 4 (link)
Escargots de Bourgogne Extra Gros - 400 g - E 400 g, 425 ml (3 douzaines) (link)
nestle 228g (4x57g) / 48 cl (4x12cl) (link)