Le Monde sémantique logo

Le Monde Sémantique

Un arbre de décision

Ci-dessous le modèle de l'arbre de décision est à télécharger gratuitement :

arbre de décision

ps: à ouvrir avec l'éditeur d'ontologies "Protégé".


Objectif:
Ce tutoriel vous permettra d'interroger un arbre de décision. A l'issue de votre lecture vous comprenderez l'utilité d'une ontologie et le rôle de l'éditeur -Protégé- (open source).

1. Tutoriel pratique

Introduction:
L'arbre de décision (ci-dessous) vous "calculera" le prix d'un repas après sa composition par l'utilisateur:
Le plat principal est offert (par défaut) au prix de 5 Euros et chaque article complémentaire équivaut à 5 Euros supplémentaires.

avant_Inference


Note:
En fonction du choix des clients l'arbre de décision indique le montant à payer.

1.1. Avant-inférence

Ci-dessous le Repas1 se compose du plat principal à 5 Euros et d'un dessert (sans boisson et sans entrée).
Quel est le prix du Repas1 ?

apres_inference

1.2. Après-inférence

Le prix du Repas1 est correctement inféré: 10 Euros.

arbre de décision



2. Requêtes SPARQL:

Après avoir importer l'ontologie de l'arbre de décision dans l'éditeur "Protégé" vous serez alors capable de suivre ce tutoriel et d'utiliser l'ensemble des requêtes suivantes:

2.1. Choix d'un premier Repas

2.1.1. Voilà une première requête sparql qui vous donnera tous les triplets essentiels se rapportant au Repas1:

# fichier: ex001.rq

      PREFIX repas: <https://ontologies.lemondesémantique.fr/tutoriels/Arbre/>
select distinct ?p ?o where { repas:Repas1 ?p ?o . }

2.1.2. Ci-dessous le résultat de la requête ex001.rq:

resultat de la requête1


Explications:

L'arbre de décision a inféré le prix du Repas1 parce que:

Les conséquences en sont les suivantes:


2.2 Sélection d'un deuxième repas

2.2.1 Voilà une deuxième requête sparql "INSERT" qui créera les triplets nécessaires et suffisants du Repas2:

# fichier: ex002.ttl

    @prefix owl: <http://www.w3.org/2002/07/owl#> .
    @prefix repas: <https://ontologies.lemondesémantique.fr/tutoriels/Arbre/> .
<https://ontologies.lemondesémantique.fr/tutoriels/Arbre/Repas2> a owl:NamedIndividual,      <https://ontologies.lemondesémantique.fr/tutoriels/Arbre/Repas> ; repas: a_un_dessert true ; repas: a_une_boisson true ; repas: a_une_entree true .

Remarque:

Le repas2 est quant à lui composé cette fois-ci: du plat principal, d'une boisson, d'une entrée et d'un dessert.


2.2.2. La requête sparql suivante est identique à ex001.rq, la seule différence consiste à interroger maintenant la composition du Repas2 et non plus celle du Repas1:

# fichier: ex003.rq

        PREFIX repas: <https://ontologies.lemondesémantique.fr/tutoriels/Arbre/>
select distinct ?p ?o where { repas:Repas2 ?p ?o . }

2.2.3. Ci-dessous le résultat de la requête ex003.rq:

resultat de la requête2

Après-inférence, le prix du Repas2 est correctement inféré à: 20 Euros.



3.1. Calcul du chiffre d'affaire

3.1.1. Cette requête calculera le chiffre d'affaire en faisant l'addition des deux factures à payer par vos clients:

# fichier: ex004.rq

       PREFIX repas: <https://ontologies.lemondesémantique.fr/tutoriels/Arbre/>
select (SUM(?facture) AS ?chiffreAffaire ) where { ?s rdf:type repas:Repas ; repas:a_pour_montant ?prix . ?prix repas:_Euro ?facture . }

3.1.2. Ci-dessous le résultat de la requête ex004.rq:

resultat de la requête4

IMPORTANT:
-> Pour aller plus loin et bien comprendre comment vous pouvez créer:

LeMondeSémantique.fr vous invite à lire le tutoriel gratuit: Extension commerciale.