Thursday, December 19, 2013

The Mandatory Information of the EU Regulation 1169/2011 on Food Information for Consumers vs. GDSN

We are currently working on a project where GDSN product data, especially those relating to the new European regulation, are being received and edited into consumer-friendly formats for an online shop. I would like to highlight this challenge in the second article of our blog series on the EU regulation No 1169/2011.

What characterises the mandatory information of the new European  regulation in relation to a real product example?




Lets recall article 9, "List of mandatory particulars" (see also http://themdmblog.blogspot.de/2013/12/eu-regulation-11692011-on-provision-of.html ):
  1. The name of the food ("Product Name" in the illustration: "Double-filled biscuits with cocoa cream filling 46%".
  2. The list of ingredients ("Ingredients" in the illustration): "Ingredients: flour, sugar,..."
  3. Any ingredient or processing aid causing allergies or intolerances ("Allergens" in the illustration): "May contain traces of: Soy". The additional nutritional information "Suitable for vegetarians" is no mandatory declaration according to the European  regulation.
  4. The quantity of certain ingredients or categories of ingredients. The product example provides here no more detailed declaration in its list of ingredients 
  5. The net quantity of the food: ("Net Content" in the illustration): "400 g".
  6. The date of minimum durability or the 'use by 'date ("Best Before Date" in the illustration)
  7. Any special storage conditions and/or conditions of use ("Storage Instructions"in the illustration): "Protect from heat. Store in dry conditions"
  8. The name or business name and address of the food business operator as well as
  9. The country of origin or place of provenance where provided for ("Origin / Manufacturer" in the illustration)
  10. Instructions for use (if necessary) - not relevant in case of the product example
  11. With respect to beverages containing more than 1,2 % by volume of alcohol, the actual alcoholic strength by volume - not relevant in case of the product example
  12. A nutrition declaration (mandatory only from 13. December 2016) ("Nutrition Info" in the illustration)


Who will be affected by the European regulation?


European  regulation applies to industry and commerce, both stationary stores and online stores.

The product example is largely European regulation compliant and therefore meets its stationary trade standards: the customer can take the product into his hands and decide on the basis of the information printed on the package whether it fits his needs.


How does the online shop get the relevant data via GDSN though?


Let's look, for example, at the allergy information on the product example: "May contain traces of : Soy". The GS1 manual for the use of GDSN for the European  regulation makes the following recommendation:

In the GDSN data model, there is the repeatable attribute group "foodAndBeveragesAllergen" with which a lot of the allergens contained in a food product can be described. 
The attributes of this group are defined as follows:

  • allergenSpecificationAgency - organisation that defines the allergen information 
  • allergenSpecificationName - name and version of the definition informing the transmitted allergen information 
  • allergenTypeCode - code that identifies the allergen contained 
  • levelOfContainment - code that specifies the amount of the allergen contained 

Using our specific example, this will look as follows (attribute = value -> explanation)

  • allergenSpecificationAgency = EU -> pre-defined default referring to the recommendation 
  • allergenSpecificationName = 1169/2011 -> pre-defined default  referring to the recommendation 
  • allergenTypeCode = AY -> GDSN code list code "allergenTypeCode"
  • levelOfContainment = MAY_CONTAIN -> GDSN code list code "Level of Containment Type Code"
In this example, the actually relevant allergen information is transmitted via the two codes "MAY_CONTAIN AY" contained in the pre-defined GDSN code lists. 
So what do these codes actually mean?
As a code of the "allergenTypeCode" code list, AY is defined as: "AY: Refers to the presence of soybeans and their derivatives in the product, as listed in as listed in the regulations specified in AllergenSpecificationAgency and AllergenSpecificationName". Or, to put it simple: "soy".

As a code of the "levelOfContainment" code list, MAY_CONTAIN is defined as: "The substance is not intentionally included, but due to shared production facilities or other reasons, the product may contain the substance". Or, to put it simple: "can contain".

How is this information contained in the GDSN Catalog Item Notification (CIN) message which any data recipient gets from the GDSN data pool? 


In our example it looks, in a highly abridged version, as follows:



What is necessary to format this for the online shop?


The task is now (in addition to the technical details of the GDSN data pool connection and transformation of the GDSN messages, which I will not look at in this article) to extract the consumer-friendly notice "Can contain traces of: soy" from the GDSN compliant product information "MAY_CONTAIN: AY".

This means that for the relevant codes of the GDSN code lists the desired text fragments must be deposited and mapped. In our example these would be text fragments for the notice if an allergen is contained ( "Level of Containment Type Code"):

  • "MAY_CONTAIN" => "May contain traces of:" 
  • "CONTAINS" => "Contains:"
  • "FREE_FROM" => "Does not contain:"
As well as the text fragments or declarations for potentially allergy-causing substances ("Allergen Type Code") - here are some examples:

  • "AX" => "gluten"
  • "AY" => "soy"
  • "AS" => "sesame"
  • "SH" => "hazel"
Following this final text module mapping, the consumer-friendly text passages for display in the online shop can be extracted from the coded GDSN product information:



There are of course quite a few more delicacies regarding the mandatory product declarations according to the new European regulation - we will come back to them in our in our next article ...

2 comments:

  1. As far as i know the EU Regulation says that you have to highlight all ingredients of a products containing an allergen. E.g. "wheat-flour" has to be highlightet due to the contained "Gluten". Is this also covered by the GDSN datamodel?

    ReplyDelete
  2. Highlighting allergens is in fact a delicate area in the GDSN data model.

    As GDSN transports item master data, starting to pollute the ingredient text with e.g. html tags to format certain allergens is no feasible option. As data recipients interested in the pure text information only would need to parse out the tags...

    However talking to GS1 there are two valid options ...and one of them is close to the formatting approach:

    Option 1: Write allergens mentioned in the ingredient statement in UPPERCASE letters.

    Option 2: Additionally with the ingredient statement, provide an attribute value pair called "ingredientStatementFormattingPattern". As value a formatting pattern, indicating start/stop positions in the ingredient text, plus the highlighting tag, needs to be given, Example: IngredientStatement="Ingredients: Sugar, water". IngredientStatementFormattingPattern="(13,b),(18,/b)" indicates "water" to be put in bold letters.

    Clearly option 2 requires software support, as it would be inacceptable and error-prone for editors to count the characters and fill in the complicated pattern structure.

    ReplyDelete