« Utilisateur:Stan/Test » : différence entre les versions

De ESCR
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
Introduction
== Description ==
Au jour d'aujourd'hui, les services administratifs et entreprises informatisent l'ensemble de leurs documents et entament depuis plus d'une dizaine d'année une Digitalisation des services. Cette migration digitale permet un assouplissement de l'accès des données mais a également un aspect écologique, notamment par rapport à la protection des arbres en réduisant la production de papier.
L'application développée permet de sensibiliser la population sur l'impact de leur boite mail sur l'environnement. Cette dernière se divise en deux pages :
* Une main page : cette dernière présentera une liste de mails types avec leurs spécifications. L'utilisateur pourra sélectionner la liste des mails dont il veut voir l'impact ainsi que le temps qu'il compte le conserver dans sa boite mail. Un résultat global d'émission de CO² lui est alors présenté.
* Une page "à propos": présentant un article de sensibilisation à la pollution générée par les mails.
L'application est accessible [https://mail-semantique.herokuapp.com/ ici].
Le code source de l'app est hébergé [https://github.com/Effobless2/mail-semantique ici].
== Définition de votre graphe de connaissances ==
=== Vocabulaire ===
=== Vocabulaire ===


==== Base ====
==== Base ====
<rdf>
<rdf>
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
    BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
</rdf>
</rdf>


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


==== Classes ====
==== Classes ====


===== Mail =====
<rdf>
<Mail> rdf:type rdfs:class.
</rdf>
===== Pièce jointe =====
<rdf>
<Attachement> rdf:type rdfs:Class.
</rdf>
==== Propriétés====
===== contains =====
<rdf>
<contains> rdf:type rdf:Property;
          rdfs:domain <Mail>;
          rdfs:range <Attachement>.
</rdf>
Permet d'associer une ou plusieurs pièces jointes à un mail
===== mailRecipient =====
<rdf>
<mailRecipient> rdf:type rdf:Property;
                rdfs:domain <Mail>.
</rdf>
Permet d'assigner un destinataire à un mail.
===== mailSize =====
<rdf>
<mailSize> rdf:type rdf:Property;
          rdf:domain <Mail>.
</rdf>
Permet d'assigner une taille à un mail (en Ko).
===== AttachementSize =====
<rdf>
<AttachementSize> rdf:type rdf:Property;
          rdf:domain <Attachement>.
</rdf>
Permet d'assigner une taille à une pièce jointe (en Ko).
=== Exemple d'un jeu de données ===
<rdf>
ex:Image rdf:type <Attachement> .
ex:Image <AttachementSize> "5000"^^xsd:double .
</rdf>
<rdf>
ex:CV rdf:type <Attachement> .
ex:CV <AttachementSize> "500"^^xsd:double .
</rdf>
<rdf>
ex:LM rdf:type <Attachement> .
ex:LM <AttachementSize> "500"^^xsd:double .
</rdf>
<rdf>
ex:Zip rdf:type <Attachement> .
ex:Zip <AttachementSize> "10000"^^xsd:double .
</rdf>


<rdf>
  ===== Ingredient =====
ex:Newsletter rdf:type <Mail> .
    <rdf>
ex:Newsletter <mailRecipient> "sdurand14@gmail.com" .
        <Ingredient> rdf:type rdfs:class.
ex:Newsletter <mailSize> "500000000"^^xsd:double .
    </rdf>
ex:Newsletter ex:contains ex:Image .
</rdf>


<rdf>
            ===== Ingredient Name =====
ex:Candidature rdf:type <Mail>.
            <rdf>
ex:Candidature <mailSize> "100"^^xsd:double .
                <ingredientName> rdf:type rdf:Property;
ex:Candidature <mailRecipient> "contact@exapceo.com" .
                    rdfs:domain <Ingredient>.
ex:Candidature ex:contains ex:CV .
            </rdf>
ex:Candidature ex:contains ex:LM .
</rdf>
 
<rdf>
ex:SendManga rdf:type <Mail> .
ex:SendManga <mailSize> "100"^^xsd:double .
ex:SendManga <mailRecipient> "stanislas.durand@gmail.com" .
ex:SendManga ex:contains ex:Zip .
</rdf>


=== Requêtes ===
            ===== Ingredient Calorie =====
            <rdf>
                <ingredientCalorie> rdf:type rdf:Property;
                    rdfs:domain <Ingredient>.
            </rdf>


Vérification que le vocabulaire est bien chargé :
    ===== Baguette =====
{{#sparql:
    <rdf>
BASE https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
        <Baguette> rdf:type rdfs:class.
SELECT *
    </rdf>
WHERE {
<Mail> ?p ?v .
}
}}


{{#sparql:
            ===== Baguette Name =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
            <rdf>
SELECT *
                <baguetteName> rdf:type rdf:Property;
WHERE {
                    rdfs:domain <Baguette>.
<Attachement> ?p ?v .
            </rdf>
}
}}


{{#sparql:
            ===== Baguette Calorie =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
            <rdf>
SELECT *
                <baguettePrice> rdf:type rdf:Property;
WHERE {
                    rdfs:domain <Baguette>.
<contains> ?p ?v .
            </rdf>
}
}}


Vérification que les données sont chargées :
            ===== Baguette Ingredient =====
{{#sparql:
            <rdf>
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
                <baguetteIngredients> rdf:type rdf:Property;
SELECT *
                    rdfs:domain <Baguette>;
WHERE {
                        rdfs:range <Ingredient>.
?s a <Mail> .
            </rdf>
}
}}


{{#sparql:
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
PREFIX ex: <http://www.example.org/>
SELECT *
WHERE {
ex:SendManga ?p ?v .
}
}}


{{#sparql:
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
PREFIX ex: <http://www.example.org/>
SELECT *
WHERE {
ex:Newsletter ?p ?v .
}
}}


{{#sparql:
    ===== Boulangerie =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
    <rdf>
PREFIX ex: <http://www.example.org/>
        <Boulangerie> rdf:type rdfs:class.
SELECT *
    </rdf>
WHERE {
ex:Candidature ?p ?v .
}
}}


{{#sparql:
            ===== Boulangerie Name =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
            <rdf>
SELECT *
                <boulangerieName> rdf:type rdf:Property;
WHERE {
                    rdfs:domain <Boulangerie>.
?s a <Attachement> .
            </rdf>
}
}}


{{#sparql:
            ===== Boulangerie  contain baguettes =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
            <rdf>
PREFIX ex: <http://www.example.org/>
                <boulangerieBaguette> rdf:type rdf:Property;
SELECT *
                    rdfs:domain <Boulangerie>;
WHERE {
                        rdfs:range <Baguette>.
ex:CV ?p ?v .
            </rdf>
}
}}


{{#sparql:
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
PREFIX ex: <http://www.example.org/>
SELECT *
WHERE {
ex:LM ?p ?v .
}
}}


{{#sparql:
===== Data Exemple =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
PREFIX ex: <http://www.example.org/>
SELECT *
WHERE {
ex:Image ?p ?v .
}
}}


{{#sparql:
===== ingredients =====
BASE <https://data.escr.fr/wiki/Utilisateur:Stan/Test#>
    <rdf>
PREFIX ex: <http://www.example.org/>
        ex:farine_seigle rdf:type <Ingredient> .
SELECT *
        ex:farine_seigle <ingredientName> "Farine de seigle" .
WHERE {
        ex:farine_seigle <ingredientCalorie> "30"^^xsd:double .
ex:Zip ?p ?v .
    </rdf>
}
}}


===== baguette =====
    <rdf>
        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 .
    </rdf>


== Démonstration ==
===== boulangerie =====
[[Fichier:Capture1.png|120px|vignette|centré|]][[Fichier:Capture2.png|120px|vignette|centré|]][[Fichier:Capture3.png|120px|vignette|centré|]]
    <rdf>
        ex:boulangerie_gagny_1 rdf:type <Boulangerie> .
        ex:boulangerie_gagny_1 <boulangerieName> "Baguette de seigle" .
        ex:boulangerie_gagny_1 ex:boulangerieBaguette ex:baguette_seigle .
    </rdf>

Version du 11 décembre 2020 à 13:44

Vocabulaire

Base

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

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.
           ===== Ingredient Name =====
                <ingredientName> rdf:type rdf:Property;
                    rdfs:domain <Ingredient>.
           ===== Ingredient Calorie =====
                <ingredientCalorie> rdf:type rdf:Property;
                    rdfs:domain <Ingredient>.
   ===== Baguette =====
        <Baguette> rdf:type rdfs:class.
           ===== 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 =====
        <Boulangerie> rdf:type rdfs:class.
           ===== 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 .
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 .
boulangerie
        ex:boulangerie_gagny_1 rdf:type <Boulangerie> .
        ex:boulangerie_gagny_1 <boulangerieName> "Baguette de seigle" .
        ex:boulangerie_gagny_1 ex:boulangerieBaguette ex:baguette_seigle .