Choisir une boulangerie bio sans intermédiaire

De ESCR
Aller à la navigation Aller à la recherche

Ce démonstrateur d'application Web illustre comment il est possible de comparer différents pains présent dans différentes boulangeries.

Objectif

En donnant les détails des ingrédients dans chaque pain de chaque boulanger, le consommateur peut essayer de limiter son impact environnemental. Le boulanger peut pour sa part être visible de ses clients sans intermédiaire et consacrer son budget communication à la diminution de son impact environnemental.

Spécification

L'objectif de se projet et de pouvoir visuellement comparer les différents pains présent dans des boulangerie. On pourra également voir le détail de chaque produit proposé par le commerçant, avec leurs composition.

Ainsi nous avons un site web mono page :

  • Première section :
    • Liste des différentes boulangerie et leurs produits.
  • Deuxième section :
    • détails et ingrédients du pain sélectionné dans la première section.

Démonstrateur

Version du 14/12/2020

Demo boulangerie.png

Pour tester le démonstrateur :

  1. Cliquer sur ce lien]
  2. Ouvrir le fichier téléchargé dans un navigateur.

Code source sur GitHub

Définition du graphe de connaissances

Schéma

A simplifier (faire un schéma sur le vocabulaire et un autre avec quelques instances)

Web semantique - MCD.png

Vocabulaire

Base

BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Projet#>

Préfixes

PREFIX ex: <http://www.example.org/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

Classes

Ingredient
<Ingredient> rdf:type rdfs:class.
Baguette
<Baguette> rdf:type rdfs:class.
Boulangerie
<Boulangerie> rdf:type rdfs:class.

Propriétés

Ingredient Name
<ingredientName> rdf:type rdf:Property;
    rdfs:domain <Ingredient>.
Ingredient Calorie
<ingredientCalorie> rdf:type rdf:Property;
    rdfs:domain <Ingredient>.


Baguette Name
<baguetteName> rdf:type rdf:Property;
    rdfs:domain <Baguette>.
Baguette Calorie
<baguettePrice> rdf:type rdf:Property;
    rdfs:domain <Baguette>.
Baguette Ingredient
<baguetteIngredients> rdf:type rdf:Property;
    rdfs:domain <Baguette>;
        rdfs:range <Ingredient>.
Boulangerie Name
<boulangerieName> rdf:type rdf:Property;
    rdfs:domain <Boulangerie>.
Boulangerie contain baguettes
<boulangerieBaguette> rdf:type rdf:Property;
rdfs:domain <Boulangerie>;
rdfs:range <Baguette>.

Data Exemple

ingredients
ex:farine_seigle rdf:type <Ingredient> .
ex:farine_seigle <ingredientName> "Farine de seigle" .
ex:farine_seigle <ingredientCalorie> "30"^^xsd:double .
ex:farine_ble rdf:type <Ingredient> .
ex:farine_ble <ingredientName> "Farine de Blé" .
ex:farine_ble <ingredientCalorie> "20"^^xsd:double .
ex:graine_melange rdf:type <Ingredient> .
ex:graine_melange <ingredientName> "Mélange de Graines" .
ex:graine_melange <ingredientCalorie> "10"^^xsd:double .
ex:piments_poudre rdf:type <Ingredient> .
ex:piments_poudre <ingredientName> "Piments en pouvre" .
ex:piments_poudre <ingredientCalorie> "50"^^xsd:double .
ex:pepite_chocolat rdf:type <Ingredient> .
ex:pepite_chocolat <ingredientName> "Pepite de chocolat" .
ex:pepite_chocolat <ingredientCalorie> "90"^^xsd:double .
baguette
ex:baguette_seigle rdf:type <Baguette> .
ex:baguette_seigle <baguetteName> "Baguette de seigle" .
ex:baguette_seigle <baguettePrice> "1"^^xsd:double .
ex:baguette_seigle ex:baguetteIngredients ex:farine_seigle .
ex:baguette_seigle ex:baguetteIngredients ex:graine_melange .
ex:baguette_bio rdf:type <Baguette> .
ex:baguette_bio <baguetteName> "Pain Bio" .
ex:baguette_bio <baguettePrice> "2"^^xsd:double .
ex:baguette_bio ex:baguetteIngredients ex:farine_ble .
ex:baguette_piments rdf:type <Baguette> .
ex:baguette_piments <baguetteName> "Pain Piments" .
ex:baguette_piments <baguettePrice> "3"^^xsd:double .
ex:baguette_piments ex:baguetteIngredients ex:farine_ble .
ex:baguette_piments ex:baguetteIngredients ex:graine_melange .
ex:baguette_piments ex:baguetteIngredients ex:piments_poudre .
ex:pain_complet rdf:type <Baguette> .
ex:pain_complet <baguetteName> "Pain Complet" .
ex:pain_complet <baguettePrice> "8"^^xsd:double .
ex:pain_complet ex:baguetteIngredients ex:farine_ble .
ex:pain_complet ex:baguetteIngredients ex:farine_seigle .
ex:pain_complet ex:baguetteIngredients ex:piments_poudre .
ex:pain_complet ex:baguetteIngredients ex:graine_melange .
ex:pain_chocolat rdf:type <Baguette> .
ex:pain_chocolat <baguetteName> "Pain au chocolat" .
ex:pain_chocolat <baguettePrice> "5"^^xsd:double .
ex:pain_chocolat ex:baguetteIngredients ex:farine_ble .
ex:pain_chocolat ex:baguetteIngredients ex:pepite_chocolat .


boulangerie
ex:boulangerie_gagny_1 rdf:type <Boulangerie> .
ex:boulangerie_gagny_1 <boulangerieName> "Boulangerie 1" .
ex:boulangerie_gagny_1 ex:boulangerieBaguette ex:baguette_bio .
ex:boulangerie_gagny_2 rdf:type <Boulangerie> .
ex:boulangerie_gagny_2 <boulangerieName> "Boulangerie 2" .
ex:boulangerie_gagny_2 ex:boulangerieBaguette ex:baguette_piments .
ex:boulangerie_gagny_3 rdf:type <Boulangerie> .
ex:boulangerie_gagny_3 <boulangerieName> "Boulangerie 3" .
ex:boulangerie_gagny_3 ex:boulangerieBaguette ex:baguette_piments .
ex:boulangerie_gagny_3 ex:boulangerieBaguette ex:baguette_seigle .
ex:boulangerie_gagny_4 rdf:type <Boulangerie> .
ex:boulangerie_gagny_4 <boulangerieName> "Boulangerie 4" .
ex:boulangerie_gagny_4 ex:boulangerieBaguette ex:baguette_piments .
ex:boulangerie_gagny_4 ex:boulangerieBaguette ex:baguette_seigle .
ex:boulangerie_gagny_4 ex:boulangerieBaguette ex:baguette_bio .
ex:boulangerie_gagny_4 ex:boulangerieBaguette ex:pain_chocolat  .
ex:boulangerie_gagny_4 ex:boulangerieBaguette ex:pain_complet  .

Requêtes

s
http://www.example.org/farine_seigle
http://www.example.org/farine_ble
http://www.example.org/graine_melange
http://www.example.org/piments_poudre
http://www.example.org/pepite_chocolat
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.018s -- CSV



s
http://www.example.org/boulangerie_gagny_1
http://www.example.org/boulangerie_gagny_2
http://www.example.org/boulangerie_gagny_3
http://www.example.org/boulangerie_gagny_4
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.018s -- CSV


s
http://www.example.org/baguette_seigle
http://www.example.org/baguette_bio
http://www.example.org/baguette_piments
http://www.example.org/pain_chocolat
http://www.example.org/pain_complet
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.017s -- CSV


p v
http://www.w3.org/1999/02/22-rdf-syntax-ns#type https://data.escr.fr/wiki/Utilisateur:Stan/Projet#Ingredient
https://data.escr.fr/wiki/Utilisateur:Stan/Projet#ingredientCalorie 90
https://data.escr.fr/wiki/Utilisateur:Stan/Projet#ingredientName Pepite de chocolat
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.024s -- CSV


p v
http://www.w3.org/1999/02/22-rdf-syntax-ns#type https://data.escr.fr/wiki/Utilisateur:Stan/Projet#Boulangerie
http://www.example.org/boulangerieBaguette http://www.example.org/baguette_bio
https://data.escr.fr/wiki/Utilisateur:Stan/Projet#boulangerieName Boulangerie 1
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.016s -- CSV


p v
http://www.w3.org/1999/02/22-rdf-syntax-ns#type https://data.escr.fr/wiki/Utilisateur:Stan/Projet#Boulangerie
http://www.example.org/boulangerieBaguette http://www.example.org/baguette_seigle
http://www.example.org/boulangerieBaguette http://www.example.org/baguette_piments
https://data.escr.fr/wiki/Utilisateur:Stan/Projet#boulangerieName Boulangerie 3
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.026s -- CSV


p v
http://www.w3.org/1999/02/22-rdf-syntax-ns#type https://data.escr.fr/wiki/Utilisateur:Stan/Projet#Baguette
http://www.example.org/baguetteIngredients http://www.example.org/farine_ble
http://www.example.org/baguetteIngredients http://www.example.org/graine_melange
http://www.example.org/baguetteIngredients http://www.example.org/piments_poudre
https://data.escr.fr/wiki/Utilisateur:Stan/Projet#baguetteName Pain Piments
https://data.escr.fr/wiki/Utilisateur:Stan/Projet#baguettePrice 3
14:38:39 22/11/2024 -- Actualiser -- Durée de la requête :0.028s -- CSV