Agribalyse

Agribalyse est un programme qui met à disposition des données de référence sur les impacts environnementaux des produits agricoles et alimentaires, depuis 2013, à travers une base de données construite selon la méthodologie des [Analyses du Cycle de Vie (ACV)](https://fr.wikipedia.org/wiki/Analyse_du_cycle_de_vie). Une [documentation](https://ecolab.gitbook.io/documentation-agribalyse/) est en cours de rédaction.

Suite à un [événement dédié](https://agribalyse3.site.ademe.fr/) fin septembre 2020, l'ADEME diffuse depuis octobre 2020 sur ce site trois jeux de données Agribalyse simplifiés dits [Synthèse](https://www.data.gouv.fr/fr/datasets/agribalyse-r-synthese-1/), [Détails par étape du cycle de vie](https://www.data.gouv.fr/fr/datasets/agribalyse-r-detail-par-etape-du-cycle-de-vie/) et [Détails par ingrédient](https://www.data.gouv.fr/fr/datasets/agribalyse-r-detail-par-ingredient/). Ces trois jeux concernent un sous-périmètre du jeu complet et fournissent des restitutions plus faciles à manipuler dans des outils grand public comme Excel. Ces restitutions sont produites par des calculs à partir des données brutes.

Le présent jeu de données est un export de la base complète brute, plutôt à destination d'utilisateurs avertis.

### Conditions légales de la diffusion

Depuis le 3 juin 2020, l'ADEME diffuse sous Licence Ouverte la version 3.0 de la base Agribalyse via des portails de logiciels d'ACV :
* [OpenLCA](https://nexus.openlca.org/database/Agribalyse), un logiciel ouvert,
* [SimaPro](https://simapro.com/products/agribalyse-agricultural-database/), un logiciel propriétaire.

Le présent jeu de données est une rediffusion, au titre de la Licence Ouverte, de la version 3.0. L'objectif de cette rediffusion est double : assurer une diffusion plus large grâce à l'audience du portail data.gouv.fr et assurer une utilisation plus facile grâce à un format d'export plus standard.

### Constitution du jeu de données

Les fichiers proposés au téléchargement ont été obtenus par les traitements suivants :
1. Téléchargement depuis la plateforme de OpenLCA de la base au format ZOLCA.
2. Décompression du fichier à l'aide du logiciel 7-Zip.
3. Ouverture de la base Apache Derby grâce au client DBeaver.
4. Export de toutes les tables au format CSV.
5. Regroupement dans une archive compressée 7z.
6. Création d'un fichier Excel regroupant toutes les tables (mais tronquées) grâce à un [script R](https://github.com/lou-dupont/Agribalyse).

### Modèle de données

Les données sont organisées au sein d'une base de données relationnelle, selon le schéma OpenLCA (voir la [documentation du schéma OpenLCA](http://greendelta.github.io/olca-schema/), le [code source de la documentation](https://github.com/GreenDelta/olca-schema) et le [code SQL de création des tables](https://github.com/GreenDelta/olca-modules/blob/master/olca-core/src/main/resources/org/openlca/core/database/internal/current_schema_derby.sql)). OpenLCA étant un modèle générique, pour Agribalyse, seules 18 tables sont réellement utilisées (la moitié). 

Le cœur du modèle est constitué des notions de **processus**, de **flux** et d'**échanges**. Un processus correspond à une transformation (par exemple, *la confection d'une sauce aïoli*). Chaque processus fait intervenir des flux entrants (par exemple, *de l'ail ou de l'huile d'olive*) et sortants (par exemple, *de la sauce aïoli*).  Les échanges correspondent aux quantités échangées par un processus au sein d'un flux. *Ainsi, le processus de confection de sauce aïoli consomme 728g d'huile d'olive et produit 1kg de sauce aïoli. Le flux d'huile d'olive est ici un intrant, mais il est un extrant du processus de fabrication d'huile d'olive, dont l'intrant principal est l'olive).* La base Agribalyse comporte aussi des processus plus abstraits, comme celui de la distribution au consommateur, dont les flux entrants sont *de la sauce aïoli à l'usine et du carburant* et les flux sortants sont *de la sauce aïoli chez le consommateur*. 

#### Organisation

Les clefs étrangères ne sont pas explicitées dans le code SQL, mais elles sont préfixées par `F_` et nommées du nom de l'entité étrangère au singulier (sauf quelques cas particuliers). Les tables sont préfixées par `TBL_` et décrites ci-dessous.

Liste des tables :

* `TBL_CATEGORIES` : **Catégories**, par exemple, les hydrocarbures. Chaque catégorie peut être rattachée à une catégorie parente, pour créer des arborescences (les hydrocarbures font ainsi partie des carburants, et contiennent le kérosène). Les catégories sont référencées par de nombreuses autres entités pour permettre leur catégorisation récursive. Ces liens faciles ne sont pas détaillés dans le reste de ces notes. 

#### Cœur du contenu

* `TBL_ALLOCATION_FACTORS` : **Allocations** des intrants, permettant de répartir leur importance dans le cas où le processus a plusieurs produits sortant. Par exemple, le processus de transformation d'olives en huile d'olive a aussi pour sortie des grignons d'olive. Les facteurs d'allocation, donnent pour chaque processus, pour chaque échange sortant, la proportion de chaque échange entrant allouée à ce sous-produit.
* `TBL_EXCHANGES` : **Quantités échangées** d'un flux par un processus, par exemple, 108g pour le flux d'ail entrant pour le processus de fabrication de sauce aïoli. Chaque quantité est rattachée au processus qui l'implique, au flux qu'elle mesure (en entrée ou en sortie du processus), à l'unité dans laquelle elle est exprimée. Les quantités entrantes peuvent être rattachées à un processus de fabrication par défaut (pour savoir en sortie de quel processus on peut les obtenir).

* `TBL_FLOW_PROPERTIES `: **Propriétés des flux**, par exemple, son volume ou son volume normal (le volume d'un gaz à une température de 0°C et sous une pression de 1 atmosphère). Chaque propriété d'un flux est associée à un groupe d'unités (par exemple, le groupe des unités de volume pour la propriété du volume normal).
* `TBL_FLOW_PROPERTY_FACTORS` : **Facteur de conversion pour les propriétés des flux**, toujours égaux à 1 pour ce jeu Agribalyse, donc cette subtilité n'est pas utile ici.
* `TBL_FLOWS` : **Flux** qui représentent tout ce qui peut être une entrée ou une sortie d'un processus, qu'il s'agisse de substances (par exemple, de l'huile d'olive), de produits, de déchets, de services, etc. Les flux sont référencés par les échanges. 
* `TBL_LOCATIONS` : **Lieux géographiques** référencés par les flux et les processus, par exemple, l'Europe, la France, ou le Brésil.
* `TBL_PARAMETERS` : **Paramètres** de configuration détaillée de certain échanges. Lorsqu'un échange au sein d'un flux pour un processus dépend de paramètres (par exemple, la surface bâtie), la quantité échangée est à la fois décrite par une valeur par défaut et par une formule, qui implique un ou plusieurs paramètres. Ceux-ci sont alors décrits dans cette table, afin de pouvoir éventuellement ajuster leur valeur et calculer les quantités ainsi échangées.
* `TBL_PROCESSES` : **Processus** de transformations. Les processus sont référencés par les échanges. Chaque processus est rattaché à un échange de référence, qui est celui qui sert de mesure principale (par exemple, pour le processus de fabrication de sauce aïoli, l'échange de référence est la quantité de sauce produite, pas la quantité de citron utilisée). Chaque processus est aussi rattaché à une localisation, un système de qualité de données pour lui-même et pour ses échanges, une documentation de processus. Les processus sont 
* `TBL_UNIT_GROUP` : **Groupes d'unités**, par exemple, le groupe des unités permettant de mesurer une masse. Chaque groupe est associé à une unité par défaut (pour la masse, c'est le kilogramme) par rapport à laquelle sont exprimés les facteurs de conversion. Chaque groupe d'unité est aussi associé à une propriété par défaut des flux (par défaut, les unités de masse sont ainsi associées à la masse d'un flux ; mais elles peuvent être utilisées pour en représenter d'autres propriétés, comme le potentiel de production de biomasse).
* `TBL_UNITS` : **Unités de mesure**, par exemple, le kilogramme. Chaque unité est décrite par son nom et ses sigles, et fait partie d'un groupe d'unités (pour le kilogramme, les unités de masse). Un facteur de conversion permet de se ramener à l'unité par défaut du groupe d'unités (par exemple, la livre anglaise fait 0,45 kg).

#### Origine des données

* `TBL_ACTORS` : **Acteurs**, les personnes physiques ou morales ayant contribué à l'élaboration de la base, par exemple, le [CIRAD](https://www.cirad.fr/). Les acteurs sont référencés par la table de documentation des processus.

* `TBL_PROCESS_DOCS `: **Documentations des processus**, détaillant la période de validité de l'analyse, la méthode de traitement de données, le type de relecture. Chaque documentation est reliée aux acteurs ayant produit, documenté et relu les données.
* `TBL_SOURCE_LINKS `: **Liens bibliographiques** multiples (N-N) entre une documentation de processus et les sources bibliographiques associées.
* `TBL_SOURCES` : **Sources bibliographiques** dont proviennent les données, par exemple d'autres bases de données (comme Ecoinvent 3) ou des articles scientifiques. Les sources sont référencées par les tables de documentation.

#### Qualité des données

* `TBL_DQ_SCORES` : **Scores de qualité de données** (*data quality*) possibles pour chaque indicateur d'un système de qualité de données. Par exemple, l'indicateur taille de l'échantillon peut prendre les scores "+ de 100", "+ de 20", "+ 10", "+3" ou "taille de l'échantillon inconnue".
* `TBL_DQ_INDICATORS` : **Indicateurs de qualité de données** (*data quality*), par exemple, la taille de l'échantillon. Chaque indicateur fait partie d'un système de qualité de données et peut prendre un ensemble prédéfini de scores. 
* `TBL_DQ_SYSTEMS` : **Systèmes de qualité de données** (*data quality*) utilisés pour mesurer la précision des informations chiffées concernant les processus ou les échanges, par exemple, le système d'Ecoinvent. Chaque système de qualité de données est relié à une source bibliographique et comprend plusieurs indicateurs de qualité.


Mots-clés : acv,ademe,agribalyse,agriculture,alimentation