ILOT-Sémantique et éducation

Le carnet de recherche « ILOT-Sémantique et Education » présente les évolutions des recherches liées au projet de R&D ILOT (Innovative Learning Object for Teaching). Le projet ILOT (Innovative Learning Object for Teaching) est un projet collaboratif qui associe Gutenberg technologies, LeLivreScolaire, Alcatel Lucent et Telecom ParisTech pour proposer un entrepôt de ressources pédagogiques permettant l’élaboration collaborative de telles ressources, leur annotation et leur exploitation dans différents modes de consultation. L’équipe Multimédia de Telecom ParisTech contribue au projet ILOT principalement sur la représentation de documents multimédia destinés à être exploités dans divers contextes d’utilisation, par divers utilisateurs sur divers terminaux. Le travail porte également sur les metadonnées représentant des informations sémantiques concernant ces documents et sur l’exploitation de cette sémantique. Dans ce carnet, nous trouverons des descriptions de démonstrateurs et de résultats de notre travail, des propositions d’outils et de méthodes, des considérations sur l’état de l’art concernant les questions abordées par nos travaux.

De la taxonomie à l’ontologie de Bloom (2)

graphe_taxonomie_bloom
Graphe représentant les six classes primaires de la taxonomie de Bloom

( Suite à la première partie )

 2. Conception et  développement de l’ontologie de Bloom

Dans cette section, nous décrivons notre démarche de la conception et du développement de l’ontologie de Bloom.

2.1. Identification d’une représentation de la taxonomie de Bloom

Bloom_Image1
Figure 1 Taxonomie de Bloom sur la banque des vocabulaires éducatifs European Schoolnet (VBE)

Dans le cadre du projet ASPECT (Adopting Standards and Specifications for Educational Content), la banque des vocabulaires éducatifs European Schoolnet (VBE) a été mise en place.[1] Parmi ces vocabulaires, il existe la taxonomie de Bloom (revisitée par L. Anderson)  contenant  83 verbes d’action en anglais classés en 6 grandes catégories. (Figure 1)

Nous nous sommes ainsi inspirés de cette représentation pour la création de l’ontologie de Bloom que nous avons enrichie par le français et les synonymes de chaque verbe.

2.2. Conception de l’ontologie de Bloom avec Protégé

L’ontologie de Bloom a été conçue à l’aide de l’éditeur Protégé. En premier étape, nous avons créé 6 classes primaires correspondant à la classification European Schoolnet : analyse, apply, create, evaluate, remember et understand. (Figure 2)

Bloom_Image2
Figure 2 Les six classes primaires dans l’ontologie de Bloom (Vue par OntoGraf dans Protégé)

Chaque classe contient les sous-classes représentant les verbes des opérations typiques. Ces derniers peuvent parfois contenir d’autres verbes etc. (Cf. Figure 3) La figure 3 présente un exemple de la classe « analyse » et ses sous-classes. Chaque classe est labellisée en français et en en anglais. Nous avons également créé un individu à l’intérieur de chaque classe ( Cf. Figure 3 également). Cette conception est prévue pour l’intégration des synonymes de chaque verbe de l’ontologie de Bloom. Nous aborderons plus en détail  la méthodologie d’une telle intégration dans la section 2.3.

Bloom_Image3
Figure 3 L’exemple de la classe « analyse » et ses sous-classes. Les losanges en violet représentent les individus à l’intérieur de chaque classe (e.g. pour la classe « analyse » et la classe « differentiate »)

2.3. Intégration des synonymes

Dans les sections suivantes, nous utilisons le terme « synonyme » pour désigner les mots ayant des champs sémantiques proches.

2.3.1. Motivation

Nous avons intégré des synonymes de tous les verbes d’action de Bloom. Cette intégration a pour objectif d’exploiter les labels en français de ces synonymes pour la détection automatique des verbes mentionnés dans des ressources pédagogiques. En particulier, cette détection a été utilisée pour assurer une représentation formalisée dans une ontologie des programmes scolaires. (Voir également l’article Transformation des informations extraites du programme scolaire en ontologie (1), particulièrement la Figure 3 ) En effet, en utilisant simplement les labels en français des verbes de Bloom, certains verbes de Capacité dans les programmes scolaires n’étaient pas détectés par notre algorithme initial. Par exemple, dans le programme Histoire au niveau 6ème (page. 9), la thématique « Les débuts du Christianisme » contient la capacité « Raconter un épisode de la christianisation de l’empire romain ». (Cf. Figure 4).

Bloom_Image4
Figure 4 Composant d’une capacité dans le programme Histoire au niveau 6ème

Le verbe « Raconter » ou en anglais Recount [2] , dans la figure 4, n’est pas répertorié dans la taxonomie de Bloom de l’European Schoolnet. Il est un synonyme du verbe « Réciter » ou la classe Recite [3] . Cette dernière est une sous classe de la classe Recall qui elle-même est une sous-classe de la classe primaire Remember.

Ainsi, le fait d’utiliser les synonymes des verbes de Bloom pour détecter toutes les capacités possibles dans les programmes scolaires permet d’extraire ultérieurement les verbes ayant le sens pédagogique de Bloom. Dans le scénario d’usage, l’enseignant aura des choix des verbes, proposés de façon semi-automatique par notre système, pour composer ses objectifs pédagogiques et/ou pour indexer les ressources en respectant les « vocabulaires » officiels du programme scolaire. En même temps, il exerce également la pratique de la pédagogie par objectifs de Bloom.

Dans la section suivante, nous étudierons la méthodologie pour l’intégration des synonymes dans l’ontologie de Bloom.

2.3.2. Méthodologie

Dans cette section, nous divisons notre étude en trois sous-sections : choix de l’application de SKOS,  sélection des synonymes dans WordNet et expression des relations entre les concepts.

          2.3.2.1. Choix de l’application de SKOS dans l’ontologie de Bloom

Dans notre article Organisation des différentes ontologies (1), nous avons abordé l’usage de la description « owl :equivalentClass » entre les verbes de Capacité dans le programme scolaire et les verbes d’action de l’ontologie de Bloom. Cette description a été choisie dans le but de répondre à un scénario d’usage, particulièrement la réutilisation des contenus de façon transdisciplinaire entre les enseignants à travers un système de recherche de ressources éducatives par objectifs pédagogiques.

En gardant ladite philosophie de conception, nous choisissons d’intégrer les verbes synonymes de Bloom par l’application de SKOS (Simple Knowledge Organization System) dans notre ontologie. En effet, les vocabulaires de SKOS sont conçus pour être intégrés dans d’autres environnements sémantiques utilisant d’autres vocabulaires RDF, comme le langage OWL. [4]  Nous avons ainsi installé le plugin SKOSEd dans Protégé afin d’éditer les synonymes dans l’ontologie de Bloom.

          2.3.2.2. Sélection des synonymes dans WordNet

Nous avons utilisé WordNet (une base de données lexicale développée par des linguistes du laboratoire des sciences cognitives de l’université de Princeton) comme une référence unique pour répertorier les synonymes des verbes de Bloom.  La figure 5 dans le carré orange montre une série de verbes synonymes du verbe d’action Bloom Recite que nous avons choisi, grâce à leur contexte répondant au sens pédagogique selon Bloom.

Bloom_Image5
Figure 5 Une série des synonymes du verbe Recite (dans le carré orange) dans WordNet.
           2.3.2.3. Expression des  relations entre les concepts

Pour la phase d’intégration des verbes synonymes, nous avons créé les individus ou SKOS Concept « _verbe » pour représenter les synonymes. (Figure 6) Ces individus sont stockés dans la classe skos:Concept considérée comme une classe OWL (skos :Concept rdf owl :Class) [5] . (Figure7)

Bloom_Image6
Figure 6 SKOS concept représentant les verbes synonymes de Bloom (vue par SKOS view dans Protégé)

Bloom_Image7
Figure 7 Les concepts des verbes synonymes dans la classe Concept

Nous avons utilisé l’expression « skos:prefLabel » pour décrire chaque verbe synonyme à la fois en français et en anglais. En ce qui concerne la relation entre les verbes synonymes et les verbes de Bloom, nous avons emprunté l’expression « skos:closeMatch« . Le principe est le suivant :

_verbe synonyme skos:closeMatch verbe Bloom. 

La figure 8 démontre visuellement la relation « skos:closeMatch »  des quatre verbes synonymes _recount, _recall, _tell et _narrate avec le verbe de Bloom recite. Pour pourvoir exprimer une telle relation, nous avons créé l’individu à l’intérieur de la classe d’un verbe de Bloom (Cf. la section 2.2. Figure 3)

Bloom_Image8
Figure 8 La relation des individus des verbes synonymes vers l’individu du verbe de Bloom.

Et enfin, le tableau ci-dessous est un exemple de la description du verbe synonyme_recount (ou raconter en français)  et sa relation avec le verbe de Bloom recite  en OWL et SKOS.

<owl:NamedIndividual rdf:about="http://givingsense.eu/2013/ontologies/pedagogy/ontobloom.owl#_recount">
        <rdf:type rdf:resource="&skos;Concept"/>
        <skos:prefLabel xml:lang="en">recount </skos:prefLabel>
        <skos:editorialNote xml:lang="fr">Source de traduction : http://dictionnaire.reverso.net/anglais-francais/recount</skos:editorialNote>
        <skos:prefLabel xml:lang="fr">raconter </skos:prefLabel>
        <skos:closeMatch rdf:resource="http://givingsense.eu/2013/ontologies/pedagogy/ontobloom.owl#recite"/>
    </owl:NamedIndividual>
***Pour visualiser l’ontologie de Bloom, nous vous recommandons de lire l’article intitulé Exemple de visualisation Web d’une ontologie simple sur le Blog « ONSem-Objets Numériques et Sémantique » de notre équipe.

 


[1] Cette banque des vocabulaires est une application web avec des fonctionnalités de recherche et de navigation permettant aux utilisateurs de trouver, visualiser et télécharger des éléments terminologiques. Elle propose également des interfaces pour les machines.

[2] Source de traduction >  http://dictionnaire.reverso.net/anglais-francais/recount 

[3] Cf Les synonymes de Recite dans Wordnet [ http://bit.ly/1iUNQod ]

[4] Cf: Relations avec les ontologies OWLhttp://fr.wikipedia.org/wiki/Simple_Knowledge_Organization_System  ]

[5] Ibid.

De la taxonomie à l’ontologie de Bloom (1)

roue_bloom
La roue de la taxonomie de Bloom, par K. Aainsqatsi

Dans l’article « Organisation des différentes ontologies (1) », nous avons fait référence brièvement  à la taxonomie des objectifs pédagogiques de Bloom. Cette taxonomie a été transformée en ontologie et classée en tant qu’une des ontologies « Actions pédagogiques » dans notre système.

Cette taxonomie étant très connue et largement utilisée dans le milieu des professionnels de la pédagogie, il serait ainsi judicieux de l’aborder de façon plus approfondie. Une telle étude nous permet de justifier nos motivations et de démontrer notre démarche de travail en considérant à la fois le scénario d’usage anticipé, le respect des « vocabulaires » officiels du programme scolaire et le choix technologique pour la production d’une telle ontologie.

1. Qu’est-ce que la taxonomie de Bloom ?

La taxonomie de Bloom[1], créée par Benjamin Bloom en 1956,  est un système de la classification hiérarchique des niveaux d’acquisition des connaissances. L’usage de cet outil se trouve dans la pédagogique par objectifs.

La taxonomie de Bloom, révisée par Lorin Anderson en 1991, est une grille d’analyse décomposée en 6 grandes familles d’habilités cognitives, de la plus simple à la plus complexe. Chaque famille contient les verbes d’action « Habilités ciblées ». Voir le tableau 1.[2]

[table id=12 /]

Tableau 1: Les différentes habilités ciblées de la taxonomie de Bloom revisitée par L. Anderson et les questions que les enseignants peuvent formuler pour atteindre les objectifs pédagogiques

En effet, la taxonomie de Bloom « permet de catégoriser les niveaux d’abstraction des questions communément posées dans les tests, épreuves et autres contrôles d’évaluation. (Cf : Tableau 1, colonne droite). Elle permet, en outre, d’identifier la nature des capacités sollicitées par un objectif de formation et son degré de complexité. Identifier le type d’objectif d’apprentissage visé par une ressource permet d’envisager son intégration dans une séquence pédagogique. » [3]

Pour ce qui est de l’application de la taxonomie de Bloom pour aider les enseignants à formuler les objectifs pédagogiques, certaines communautés de formateurs [4] citent l’outil The Differentiator. Cet outil permet en effet aux formateurs de concrétiser leurs objectifs pédagogiques en associant quatre éléments principaux conçus par Sandra N. Kapian et al. :

  •  Thinking Skill (ou les verbes d’action de Bloom),
  •  Differentiate content (les séries des mots pour aborder les contenus avec le profondeur, la complexité, les impératifs etc.),
  • Research Skill (les différentes typologies des ressources que les élèves peuvent utiliser pour développer la compétence de la recherche),
  • Products (les formes des travaux attendus).

L’outil propose aux formateurs de composer des activités pédagogiques sous forme de phrase à partir des concepts relatifs à ces quatre éléments et regroupés dans les différents onglets. (Cf. Figure 1)

Bloom_Image0
L’interface des différents onglets contenant les quatre éléments pour composer les objectif pédagogiques de l’application The Differentiator. Cette dernière propose également d’ajouter le nombre des étudiants pour le travail en groupe.

En s’inspirant de cette étude de synthèse sur l’importance, la pratique et l’usage de la taxonomie de Bloom dans la démarche de la préparation des cours pour les enseignants, nous avons intégrée celle-ci dans notre système de la recherche et de l’indexation des ressources éducatives sur la plateforme ILOT.

Dans le prochain article, nous aborderons les aspects de la conception et du développement de l’ontologie de Bloom.


[1]  Service TICE-EAD, Plate-forme multimédia, Université Pierre-Mendès France, Taxonomie de Bloom,  [ http://appui.upmf-grenoble.fr/wiki/index.php/Taxonomie_de_Bloom ]

-Cf. Egalement Du design à la pédagogie [ http://louberee.wordpress.com/2007/09/16/la-taxonomie-de-bloom/]

[2] A comparer avec le tableau synthétique de la taxonomie de Bloom version 1956 [http://www.cefes.umontreal.ca/ressources/guides/Plan_cours/doc/taxonomie-cognitif.pdf ]

[3] Voir [1]

[4 ] David Vellut, Définir des objectifs pédagogiques efficaces et cohérents grâce à la taxonomie de Bloom et la méthode SMART [ http://www.formavox.com/definir-objectifs-pedagogiques-formation-taxonomie-bloom-methode-smart ]

 

Publication de références culturelles dans un triple-store

Le gouvernement a publié des références culturelles et artistiques pouvant servir dans l’enseignement. Pour chaque référence proposée, une fiche a été établie qui contient différents renseignements  à son sujet, notamment la ville éventuellement concernée par la référence, le nom de l’artiste, le titre et la nature de l’oeuvre, ainsi que des tags et mots-clefs, des références aux étapes du programme scolaire qui peuvent être concernées par l’oeuvre.

Ces données sont disponibles ici:

http://www.data.gouv.fr/DataSet/30382368?xtmc=D%C3%A9partement%20des%20programmes%20num%C3%A9riques&xtcr=5

sous forme d’un fichier CSV.

(on verra avec intérêt un ensemble de ressources similaires publiées suivant les principes de l’Open Data ici http://www.data.gouv.fr/fr/dataset/les-grands-reperes-chronologiques-par-domaine-artistique)

Nous avons procédé à divers traitements pour améliorer l’utilisabilité automatique de ces données. Le fichier CSV a été transformé en XML après avoir séparé les mots-clefs, séparé les tags et procédé à quelques autres améliorations sur la structure des données. Ces traitements ont largement été automatisés, notamment grâce à des feuilles de styles XSLT.

Ensuite, grâce à l’outil de publication de données Datalift, autilisé localement sur une de nos machines, nous avons transformé le fichier XML en RDF.

Enfin, grâce à l’outil ARC (http://arc.semsol.org/), nous avons publié les données dans un Triple Store, accessible pour l’instant uniquement via un Sparql Endpoint à l’adresse suivante:

http://givingsense.eu/arcstore/arc2-master/ilot-tests/refCultureSparqlRq.php

Cela permet par exemple de faire la requête suivante:

SELECT ?p (COUNT(?p) AS ?pTotal) WHERE {
?s ?p ?o
}
GROUP BY ?p

 

Cette requête nous donne un bon aperçu du jeux de données sur lequel nous travaillons:

  • 4776 fiches (row, en fait, lignes dans le tableur d’origine)
  • à presque chaque ligne est associée un titre, une url, une description, un format,  un domaine,
  • 4034 peuvent être associées à une des séquences d’enseignement du primaire
  • 4279 peuvent être associées à une des séquences d’enseignements du collège
  • 3704 peuvent être associées à une des séquences d’enseignements du lycée
  • 504 -seulement- sont associées à une ville
  • 61125 tags ont servis à décrire ces références.

A ce niveau de mon exploration, je me demande que sont les ‘domaines’ renseignés dans les fiches.

La requête suivante (qui ressemble beaucoup à la précédente) va  nous renseigner:

PREFIX rfha: <http://givingsense.eu/onto/refCulture/refHistArts.rdf#>
SELECT ?v (COUNT(?v) AS ?vTotal) WHERE {
?s rfha:domaine ?v
}
GROUP BY ?v

Elle donne le résultat suivant:

v vTotal
Arts du visuel 2941
Arts de l espace 961
Arts du langage 629
Arts du quotidien 770
Arts du son 388
Arts du spectacle vivant 499

 

On voit que plus de 2000 références concernent les Arts du visuel.

En fait, on retrouve ces domaines dans le programme d’Histoire de l’Art et probablement dans le programme d’histoire. Nous verrons dans un prochain billet comment ces liens peuvent permettre d’explorer les références lorsqu’on travaille sur une partie d’un programme et, aussi, d’aller chercher des références similaires dans des ressources telles que DBPedia, Europeana ou les données publiées par le Centre Pompidou.

Pour finir, voilà une requête un peu plus élaborée:

PREFIX rfha: <http://givingsense.eu/onto/refCulture/refHistArts.rdf#>
SELECT ?fiche ?titre ?url WHERE { 
    ?fiche rfha:tags ?s . 
    ?s  rfha:tag "Normandie" . 
    ?s  rfha:tag "Peinture" . 
    ?fiche rfha:titre ?titre . 
    ?fiche rfha:url ?url 
} LIMIT 20

 

Nous retenons les fiches qui ont des tags et parmi ces tags nous voulons qu’il y ait « Peinture » et « Normandie ». Dans les fiches ainsi sélectionnées, nous récupérons le titre et l’url associée à l’oeuvre.

qui nous donne le résultat:

fiche titre url
rfha:row_6 Bonnard en Normandie http://www.mdig.fr/IMG/pdf/dossierpedagogique_Bonnard_bd.pdf
rfha:row_1511 Villégiature et bains de mer (dossier en deux parties) http://www.musees-haute-normandie.fr/IMG/pdf/Villegiature.pdf
rfha:row_1515 Joseph Flouest http://www.musees-haute-normandie.fr/IMG/pdf/A4_Flouest_BD.pdf
rfha:row_1517 Histoire du port de Dieppe (dossier en deux parties) http://www.musees-haute-normandie.fr/IMG/pdf/Histoire_port.pdf
rfha:row_3129 Dufy et la représentation de la rue http://www.histoire-image.org/site/etude_comp/etude_comp_detail.php?i=844&amp;d=61&amp;t=331

Cela nous laisse entrevoir les multiples possibilités qui peuvent être offertes, par exemple à un enseignant, pour explorer les ressources à sa disposition. Bien sûr, cela suppose un travail sur l’interface, mais les travaux dans le domaine de la recherche par facette nous donnent des pistes…

Organisation des différentes ontologies (2)

mossaIque
Une belle mosaïque Post-it® ! ( Source: http://bit.ly/18b8Lyb)

 (Suite à notre premier article

3.2. Relation de l’ontologie du système scolaire français avec l’ontologie locale du programme scolaire 

Dans cet article, nous continuons à étudier les relations entre les ontologies locales du programme scolaire et l’ontologie spécifique « Action pédagogique ». Nous étudierons ce type de relation à travers l’importation de l’ontologie du système scolaire français dans l’ontologie du programme scolaire de matière ‘histoire’ au niveau de la sixième. Avant d’analyser ladite étude de cas, il est important d’examiner l’objectif et l’organisation de l’ontologie du système scolaire français.

3.2.1. Description de l’ontologie du système scolaire français

Dans cette section, nous divisons l’analyse de la description de cette ontologie en deux parties : définition des classes et relations internes et externes.

3.2.1.1. Définition des classes 

L’objectif de la création d’une telle ontologie est de stocker les informations concernant les programmes scolaires officiels en France. Ces informations peuvent comprendre :

– la classification des niveaux d’enseignement. Par exemple, pour l’enseignement secondaire, au niveau du collège, il s’agit de la classe 6ème, 5ème , 4ème , 3ème . Et au niveau lycée, il s’agit de la classe seconde, première et terminale.

– les matières enseignées (Histoire, Géographie, Mathématique,….)

– la définition détaillée du programme pour une matière à un niveau précis.

Ces informations ne sont que les exemples utilisés pour la conception des entités d’information dans l’ontologie du système scolaire français. Les autres informations y seront ajoutées au fur et à mesure de notre avancement. Au stade actuel, nous avons créé trois grandes classes pour stocker les exemples d’information du système scolaire, précédemment évoqués. Il s’agit de :

– la classe curriculum destinée à stocker les individus Matière. Par exemple, l’individu Curriculum_french pour le français, Curriculum_history  pour l’histoire etc. (Figure 1).  Pour l’instant, la population des individus de la class Curriculum se limite aux matières enseignées selon le programme du collège du Ministère de l’Education Nationale. [1] ;

Figure 1 : La classe curriculum et ses individus dans l'ontologie du système scolaire
Figure 1 : La classe curriculum et ses individus dans l’ontologie du système scolaire

– la classe periodePedagoqiue (ou pedagogicalPeriod) est prévue pour stocker les informations concernant les différents niveaux de l’enseignement. Au stade actuel, nous vous conçu la classe periodePrimaire pour stocker les informations concernant les différents niveaux de l’enseignement élémentaire et la classe periodeSecondaire pour l’enseignement secondaire. (Figure 2) Ces deux classes sont en grande partie issues de la déclinaison du schéma graphique de l’enseignement secondaire produit par le Ministère de l’Education Nationale (Figure 3). [2]

Figure 2 : La classe periodePedagogique et ses sous-classes pour décrire les niveaux de l’enseignement primaire et secondaire dans l’ontologie du système scolaire
Figure 2 : La classe periodePedagogique et ses sous-classes pour décrire les niveaux de l’enseignement primaire et secondaire dans l’ontologie du système scolaire

Figure 3 : Extrait du schéma graphique représentant les différents niveaux de l’enseignement primaire et secondaire
Figure 3 : Extrait du schéma graphique représentant les différents niveaux de l’enseignement primaire et secondaire

– la classe programme est destinée à référencer un ensemble de choses à faire au cours de la scolarité. Elle devrait augmenter les possibilités de combiner les critères de filtrage prévu pour le système d’indexation pour la recherche des ressources éducatives à travers les programmes scolaires. Au stade actuel, il existe trois sous-classes (Figure 4) :

Figure 4 : La classe "programme" dans l'ontologie du système scolaire
Figure 4 : La classe « programme » dans l’ontologie du système scolaire

– – programmeMatiere (ou labélisée Programme de la matière) est une sous-classe de programme ; elle est donc destinée à référencer un ensemble de choses à faire au cours de la scolarité, mais en se limitant à une matière donnée. Elle contiendra les références à des choses à faire dans une matière (Figure 5, tous les lignes horizontales). Par exemple, l’enseignant souhaite faire la recherche des ressources dans les programmes d’histoire de tous les niveaux (Figure 5, ligne C) ;– programmePeriode (ou labélisée Programme de la période) est une sous-classe de programme ; elle est donc destinée à référencer un ensemble de choses à faire au cours de la scolarité, mais en se limitant à une période donnée. Elle contiendra les références à des choses à faire durant une période sans distinction de matière (Figure, 5, tous les colonnes verticales). Par exemple, l’enseignant souhaite faire la recherche des ressources dans les programmes du niveau 6ème de toutes les matières (Figure 5, colonne 1) ;

– – programmePeriodeMatiere (ou labélisée Programme de la matière pour la période pédagogique)  destinée à stocker les références à des choses à faire définies par le programme d’une matière etlors d’une période d’enseignement définie. Par exemple, l’individu programmeHistoire5eme représente le programme d’histoire au niveau de cinquième, l’individu programmeGeographie5eme représente le programme de géographie au niveau de cinquième. Ces individus contiennent les propriétés permettant à l’utilisateur de consulter les ressources associées à un programme scolaire d’une matière et d’une période pédagogique précis. Par exemple, l’enseignant souhaite consulter les ressources associées au programme d’histoire au niveau 6ème (Figure 5, Carré bleu).

figure5
Figure 5: La matrice représentant les combinaisons des relations internes (Programme, Matière, Période pédagogique) de la classe programme dans l’ontologie du système scolaire

3.2.1.2. Différentes relations internes et externes

Après avoir précédemment étudié les objectifs de la conception des trois grandes classes dans l’ontologie du système scolaire, nous analysons les différents types de mise en relation de ces éléments et leurs restrictions. La conception des expressions des relations ci-après n’est qu’au stade d’ébauche et a pour objectif de trouver la logique générale de la représentation formelle qui pourra être appliquée à l’ensemble du système scolaire. Les scénarios de l’exploitation sémantique de telles relations seront étudiés et communiqués dans les prochains articles.

a) Relation dans la classe curriculum :

La classe curriculum elle-même n’a pas de propriété spécifique en termes de mise en relation vers les autres classes. Elle ne contient que les individus matières. En revanche, les autres classes seront mises en relation vers elle pour exprimer toutes les relations possibles avec les matières (ou curriculum). Nous verrons cela en détail dans les deux sections qui suivent.

b) Relation dans la classe periodePedagogique

Au stade actuel, la conception de la description des propriétés dans la classe periodePedagogique reposent sur l’enchaînement des niveaux de l’enseignement, la durée de chaque période pédagogique et la relation vers les matières enseignées dans la classe Curriculum. Les expressions de telles relations ont été exprimées à la fois aux niveaux des classes et des individuals. Par exemple,

  • Au niveau des owl :class, la sous-classe periode6eme de la classe periodeCollege a été mise en relation avec la sous-classe periode5eme par l’expression hasNextPeriod. (Figure 6, carré vert et flèche à gauche du carré). Elle a également été mise en relation avec la classe curriculum par l’expression aMatiere (Figure 6, flèche grise en sous du carré vert).
  • Au niveau des owl :individuals, la sous-classe periode6me contient l’individu 6eme qui a la durée de période pédagogique d’un an. Pour exprimer cela, cet individu a été mis en relation avec l’individu duree1an par la propreté hasDuration. (Figure 6, carré rouge et flèche noir en bas à gauche du carré). Il a été également mis en relation avec toutes les matières de la classe curriculum. (Figure 6, flèches bleues à droite du carré rouge).

Les relations de toutes les sous-classes de la classe periodePedagogique ont été exprimées dans la même logique.

Figure 6 : Différentes relations dans la classe periode6eme
Figure 6 : Différentes relations dans la classe periode6eme

c)  Relations dans la classe programme

Comme précédemment étudiées, les relations internes dans la classe programme sont destinées à exprimer les différentes façons de combiner programme-période pédagogique-matière (Figure 5) pour maximiser les possibilités de recherche des ressources éducatives. La figure 7 représente  visuellement la mise en place d’une telle combinaison dans l’ontologie du système scolaire (voir particulièrement dans le carrée vert).

Figure 7 : Les relations internes des trois sous-classes de la classe programme  (dans le carré vert) et les liens vers les classes periodePedagogique  et curriculum (ou matière)
Figure 7 : Les relations internes des trois sous-classes de la classe programme (dans le carré vert) et les liens vers les classes periodePedagogique et curriculum (ou matière)

 

Au-delà des relations internes, les classes programmePeriode (ou Programme de la période) et programmeMatiere (ou Programme de la matière) ont été mises en relation avec la classe periodePedagogique et matiere pour les propriétés hasPeriod et aMatiere.

L’ensemble de l’ontologie du système scolaire peut être visualisée ici [3]

3.2.2. Relation de l’ontologie spécialisée du système scolaire et l’ontologie locale du programme scolaire

Après avoir précédemment démontré la conception de l’ontologie du programme scolaire, nous analysons le rôle de cette ontologie importée dans l’ontologie locale à travers l’exemple de l’ontologie du programme d’histoire au niveau de 6ème.

Comme nous l’avons évoqué dans le billet Transformation des informations extraites du programme scolaire en ontologie (2) , l’ontologie du système scolaire a été importée dans l’ontologie du programme scolaire d’histoire du niveau 6ème. Pour exprimer qu’une telle thématique générale appartient au programme d’histoire au niveau de 6eme, nous avons conçu la propriété de façon suivante.

Toutes les thématiques générales de la classe Theme ont été mises en relation avec l’individu programmeHistoire6eme (Figure 7, individu programmeHistoire6eme entouré en rouge) de la classe programmePeriodeMatiere de l’ontologie importée par la propriété « isPartOf » (Figure 8, dans le carré bleu). La Figure 8 démontre cette relation à travers l’exemple de l’individu Thématique générale L’Orient ancien de la classe Theme.

Cette expression n’est pas appliquée aux thématiques spécifiques. En effet, ces dernières contiennent déjà les relations avec leurs thématiques générales correspondantes selon le programme scolaire par l’expression « isPartOf ». Ils héritent ainsi les propriétés de leurs thématiques « parentes » ou générales.

Figure 8 : ontologie du programme d’histoire au niveau de 6ème, la mise en relation de l’individu Thématique générale L’orient Ancien et l’individu programmeHistoire6eme de l’ontologie du système scolaire importée (vue dans Protégé)
Figure 8 : ontologie du programme d’histoire au niveau de 6ème, la mise en relation de l’individu Thématique générale L’orient Ancien et l’individu programmeHistoire6eme de l’ontologie du système scolaire importée (vue dans Protégé)

Conclusion générale des deux articles « Organisation des différentes ontologies »

Nous avons montré notre démarche dans la conception et l’organisation des différentes ontologies qui seront intégrées dans notre plateforme ILOT. Cette démarche se base sur la définition préalable d’ontologies locales du programme scolaire et sur leur articulation avec des ontologies spécifiques et partagées du domaine « Action pédagogique ». La méthodologie d’une telle organisation pourrait être appliquée à l’enseignement supérieur qui a plus ou moins le même schéma que l’enseignement secondaire. En effet, nous pouvons imaginer le scénario d’importation l’ontologie spécifique du système scolaire au niveau de l’enseignement supérieur dans les ontologies locales du programme d’une matière d’un niveau précis pour créer les propriétés appropriées pour ce niveau d’apprentissage.

Le principe de la séparation des sources appliqué dans notre démarche d’organisation des ontologies assure l’autonomie de la gestion future des informations faites soit par les concepteurs professionnels d’ontologie et/ou soit par les enseignants. Dans le contexte actuel, les ontologies spécialisées et partagées « Action pédagogiques » sont loin de recouvrir l’ensemble des domaines liés à la pédagogie, de nouvelles ontologies sont en développement dans de nombreuses communautés liées à l’enseignement et de nouvelles ontologies pourront prendre le dessus sur d’autres existant antérieurement, il est donc nécessaire que chaque communauté puisse décider de l’évolution de ses propres concepts pédagogiques.

Ainsi, nous anticiperons à intégrer la possibilité de la personnalisation des ontologies pour les enseignants dans notre système d’indexation. Nous traiterons de ce point plus en détail dans notre prochain article intitulé Le mécanisme de la personnalisation des ontologies.

 


Organisation des différentes ontologies (1)

Crédits : Post-it Marilyn par Peter Hellberg sous licence CC BY-SA 2.0
Crédits : Post-it Marilyn par Peter Hellberg sous licence CC BY-SA 2.0

1. Introduction

Dans les articles Transformation des informations extraites du programme scolaire en ontologie (1) et (2), nous avons démontré la conception de l’ontologie du programme scolaire de la matière ‘histoire’ au niveau de la sixième. Les informations de cette ontologie sont extraites du programme scolaire. La conception d’une telle ontologie n’est qu’un exemple parmi l’ensemble des programmes scolaires officiellement fourni pour le Ministère de l’Education Nationale.

Au delà des informations extraites des programmes scolaires, nous avons également recensé d’autres informations plus génériques relatives à la pédagogie qui peuvent être utilisées dans nos démarches de la conception du système d’indexation. Nous avons regroupé ces informations existantes dans des ontologies, nommées « Actions pédagogiques ». Nous nous sommes appuyés, par exemple, sur la taxonomie de Bloom, la typologie des stratégies d’apprentissage de Chacón etc.

Avec ces informations, nous avons conçu des ontologies destinées à être intégrées à notre système d’indexation.  Plusieurs questions  se sont posées:

  • Quelle organisation pouvons-nous envisager?

  • Comment exploiter l’articulation entre les différentes ontologies?

  • Quelles sont les solutions possibles qui devraient répondre à certains critères tels que l’évolution future des informations  en provenance des différences sources ou  l’extension par de nouveaux concepts dans les ontologies faites avec les enseignants?

2. Organisation des fichiers et principe de la séparation des sources

Nous avons ainsi adopté le principe de la séparation des sources pour l’organisation des différents types d’ontologie. En effet, ce principe permet à l’administrateur de la plateforme et/ou aux enseignants de conserver une autonomie de gestion ultérieure des entités d’information dans les différentes ontologies.

Figure 1 Organisation des différentes ontologies : ontologies spécifiques et partagées "Action pédagogique" (dans le carrée bleu) et les ontologies locales des programmes scolaires (dans les carées orange et vert)
Figure 1 Organisation des différentes ontologies : ontologies spécifiques et partagées « Action pédagogique » (dans le carrée bleu) et les ontologies locales des programmes scolaires (dans les carées orange et vert)

Dans notre système d’organisation, nous regroupons les ontologies en deux grandes catégories (Cf . Figure 1) selon la nature de base des informations :

  • Ontologies spécialisées  et partagées des « Actions pédagogiques » (Figure 1, dans le carré bleu). Ces sont les différentes ontologies liées à la pédagogie, e.g. taxonomie des objectifs pédagogiques de Bloom, la typologie des stratégies d’apprentissage de Chacón, la typologie des scénarios pédagogiques et le système scolaire français. Ce dernier est destiné à stocker les informations concernant l’ensemble du système scolaire (niveau, matière….). Nous aborderons cette ontologie en détail dans la deuxième partie de l’article. Les ontologies des « Actions pédagogiques » spécialisées seront importées dans chaque ontologie du programme scolaire. Nous verrons dans un prochain article comment d’autres intervenants, comme des enseignants, peuvent s’approprier nos propositions et les étendre avec des descriptions de leurs propres méthodes pédagogiques et leurs descriptions d’actions pédagogiques (Fig. 1, partie droite du carré bleu).

  • Ontologies locales : ce sont les ontologies extraites des programmes scolaires officiels. (Figure 1, dans les carrées orange et vert). Nous choisissons  de concevoir une ontologie locale du programme scolaire par matière et par niveau. Les ontologies locales sont  d’abord destinées  à stocker des informations et les relations internes extraites des programmes scolaires.  Ensuite, elles prévoient également  la possibilité d’importer les ontologies spécialisées « Actions pédagogiques ». Cette importation permet de créer les relations entre les informations du programme scolaire et les informations génériques de la démarche pédagogique proposée. Nous traiterons ces relations plus loin dans la section suivante.

3. Relation entre les ontologies locales du programme scolaire et les ontologies des actions pédagogiques

Dans cette section, nous démontrons concrètement l’articulation entre les ontologies spécialisées et les ontologies locales du programme scolaire. Nous étudierons les relations de ces deux types d’ontologies  à travers l’exemple de l’importation des ontologies de la taxonomie de Bloom et du système scolaire français dans l’ontologie du programme scolaire d’histoire au niveau 6ème. Au fur et à mesure de l’avancement de notre travail, nous aborderons ultérieurement  les relations avec les autres ontologies « Action pédagogique » dans les prochains articles.

3.1. Importation de la taxonomie de Bloom

Pour concevoir l’ontologie de la taxonomie de Bloom, nous avons utilisé la classification hiérarchique des verbes de Bloom selon European Schoolnet Vocabulary Bank for Education, développée dans le cadre du projet ASPECT (Adopting Standards and Specifications for Educational Content). Nous avons créé les différentes classes et sous-classes selon ledit model pour stocker les verbes de Bloom dans le ficher OWL. Chaque verbe a été labellisé en français et en anglais. (Cf. Figure 2).

Figure 2 La classe Bloom_Taxonomy importé dans l'ontologie du programme scolaire d'histoire au niveau 6ème (Vue dans l’éditeur Protégé)
Figure 2 La classe Bloom_Taxonomy importé dans l’ontologie du programme scolaire d’histoire au niveau 6ème (Vue dans l’éditeur Protégé)

Dans l’ontologie du programme scolaire d’histoire au niveau 6ème, l’ontologie de la taxonomie de Bloom a été importée en tant qu’une classe Bloom_Taxonomy (Cf. également Figure 2).  Les différentes classes de l’ontologie de Bloom importées ont été mises en relation avec les verbes des capacités attendues, extraits du programme scolaire par la description de la classe «owl : equivalentClass ».  [1]

Figure 3 La représentation visuelle de l’expression  « equivalentClass »  entre la classe « explain » de l’ontologie de Bloom importée (dans  le carré vert) et la classe « competency_explain » du programme scolaire (dans le carré orange)
Figure 3 La représentation visuelle de l’expression « equivalentClass » entre la classe « explain » de l’ontologie de Bloom importée (dans le carré vert) et la classe « competency_explain » du programme scolaire (dans le carré orange)

Par exemple, la classe Verbe « Explain » dans l’ontologie de Bloom (Cf. Figure 3, dans le carré vert) est équivalente à la classe « Competency_explain », extraite du programme scolaire (Cf. Figure 3, dans le carré orange). Le statement owl:equivalentClass est ainsi introduit dans la description de la classe «Competency_explain »  (Cf. Figure 4, ligne 4).

<owl:Class rdf:about="&Programme_Histoire_College_France;competency_explain">
        <rdfs:label xml:lang="fr">expliquer</rdfs:label>
	<rdfs:label xml:lang="en">explain</rdfs:label>
        <owl:equivalentClass rdf:resource="http://www.semanticweb.org/deslis/ontologies/2013/1/LRE-BloomActionValues#explain"/>
        <rdfs:subClassOf rdf:resource="&Programme_Histoire_College_France;competency"/>        
    </owl:Class>
 Figure 4 :  Introduction du Statement « owl:equivalentClass »(ligne 4)  pour décrire la classe Competency_explain

Nous n’avons pas introduit directement un lien entre le programme et l’ontologie de Bloom afin de se donner la possibilité de donner ultérieurement des précisions, spécifiques du programme de 6ème,  concernant la classe competency_explain. Nous pouvons aussi imaginer que des précisions seront données à la classe explain, indépendemment du programme de 6ème.

Nous pouvons ainsi imaginer un scénario de l’exploitation de cette description. Par exemple, un enseignant A d’histoire au niveau 6ème a indexé ses ressources éducatives par la capacité du programme « Expliquer un débat à l’Ecclesia ». Un enseignant B d’une autre discipline (par exemple en langue vivante) cherche les ressources éducatives pour faire travailler les élèves sur la compétence de l’expression orale. Cet enseignant B choisit la taxonomie de BLOOM  avec le verbe « Expliquer » pour trouver les ressources éducatives. Le système propose ensuite, sans distinction de  matière et de niveau, l’ensemble des ressources éducatives correspondant à l’objectif pédagogique « Expliquer ». Une partie des ressources proposées seront issues du travail de l’indexation de l’enseignant A.

Le fait de créer un équivalent de classe entre les verbes génériques de BLOOM et ceux extraits du programme scolaire dans l’ontologie a ainsi un double avantage :

  • Du point de vue du développement, permettre au système de reconnaître cette liaison de façon automatique ;

  • Du point de vue de l’usage, donner une possibilité pour la réutilisation des ressources éducatives de façon transdisciplinaire.

La méthodologie précédemment étudiée -lien entre des portions du programme et des typologies d’activité pédagogiques décrites séparemment- sera également appliquée à  l’ontologie de la typologie des stratégies d’apprentissage de Chacón. Cette ontologie sera mise en relation avec la classe Démarche (ou Approach en anglais), stockant les informations du même type extraites du programme scolaire. Dans la même perspective, cette méthodologie pourrait également appliquée aux autres ontologies « Action pédagogique »  ultérieurement produites par les enseignants pour répondre à leurs propres approches pédagogiques.

Pour la deuxième partie de notre article, nous aborderons les relations des informations extraites du programme scolaire dans l’ontologie locale et celles de l’ontologie Système scolaire français importée.

————

[1] Cf. également l’article Transformation des informations extraites du programme scolaire en ontologie

Bibliographie :

– C. Fankam, L. Bellatreche, H. Dehainsala, T.A. Ameur, G. Pierre, « SISRO: Conception de bases de données à partir d’ontologies de domaine », in. Technique et Science Informatiques, Vol 28/10, 2009, pp. 1233-1261  [Cf: http://tsi.revuesonline.com/article.jsp?articleId=14167]

– C. Desmoulins, Construction avec des enseignants d’une ontologie des compétences en géométrie Geoskills [En ligne: http://bit.ly/SDFFAp ]

(Source d’image : http://pioupioum.fr/developpement/compass-usage-quotidien-cheatsheet.html)

Transformation des informations extraites du programme scolaire en ontologie (2)

 

transformation2

(Suite à notre premier article )

3. Relation internes des classes Theme-Knowledge-Topic

3.1. Relation entre les thèmes

Dans l’ontologie du programme scolaire d’histoire au niveau 6ème, il existe 16 individuals de la classe Theme. Ces individuals sont les thématiques générales et les thématiques spécifiques dans le programme scolaire. L’expression  de la relation entre la thématique générale et les thématiques spécifiques se fait par l’objectProperty « isPartOf ». Par exemple,  la Figure 1 représente visuellement les relations « isPartOf » des quatre thématiques spécifiques (Alexandre le Grand, La cité des Athéniens, Le fondement de la Grèce et La Grèce des Savants) et la thématique générale « La civilisation grecque ».

Figure 1 Représentation visuelle des relations "isPartOf" (Flèches en orange) des  quatre thématiques spécifiques avec la thématique générale "La civilisation grecque"
Figure 1 Représentation visuelle des relations « isPartOf » (Flèches en orange) des quatre thématiques spécifiques avec la thématique générale « La civilisation grecque »

Cette dernière, comme d’autres thématiques générales, fait également partie de (ou ayant une relation « isPartOf »), l’individual « ProgrammeHistoire6eme » de la classe « ProgrammePeriodeMatiere ». Cette classe n’est pas une classe créée dans l’ontologie  du programme scolaire d’histoire au niveau 6ème. Mais, elle appartient à l’ontologie Organisation des systèmes scolaires en France importée dans l’ontologie sur laquelle nous sommes en train de travailler. Nous évoquons plus en détail la définition de cette ontologie et d’autres dans notre article intitulé Organisation des différentes ontologies.

<owl:NamedIndividual rdf:about="&Programme_Histoire_College_France;theme_greekCivilization">
        <rdf:type rdf:resource="&Programme_Histoire_College_France;theme"/>
        <rdfs:label xml:lang="en">The Greek civilization</rdfs:label>
        <rdfs:label xml:lang="fr">La civilisation greque</rdfs:label>
        <hasRelativeDuration rdf:datatype="&xsd;decimal">25</hasRelativeDuration>
        <isPartOf rdf:resource="http://localhost/ilot/OwlProject5/history/resource/organisation-systeme-scolaire-francais#programmeHistoire6eme"/>
    </owl:NamedIndividual>
 Figure 2 La description de la thématique générale « La civilisation grecque » dans le language OWL 

Concrètement, dans le fichier owl, la Figure 2 présente un exemple des différentes informations attachées aux individuals préfixés « theme ». Par exemple, l’individual theme_greekCivilization (ligne 1)

– est une instance de la classe theme (ligne 2).

-est annoté avec les labels  en anglais et en français (lignes 3 et 4) pour avoir le nom lisible par l’humain. L’exemple de l’exploitation de cette information, c’est l’affichage en anglais ou français des listes dans les menus déroulants. (cf. Article Démonstrateur: utilisation d’une ontologie de programme scolaire)

– a une durée 25% du temps consacré à l’histoire (ligne 5)

– fait partie de l’individual programmeHistoire6eme  (programme scolaire d’histoire au niveau de 6ème) de l’ontologie importée organisation-systeme-scolaire-francais (Organisation des systèmes scolaire français).  (ligne6)

Quant aux informations attachées aux thématiques spécifiques, la Figure 3 démontre un exemple de la thématique spécifique Le fondement de la Grèce ou themeSpecific_foundationOfGreece (ligne 1). Cet individual est également une instance de la classe Theme (ligne 2). Le nom de cette instance labellisé en anglais en en français.

<owl:NamedIndividual rdf:about="&Programme_Histoire_College_France;themeSpecific_foundationOfGreece">
     <rdf:type rdf:resource="&Programme_Histoire_College_France;theme"/>
     <rdfs:label xml:lang="en">The foundation Of Greece : cities, myths, panhellenism</rdfs:label>
     <rdfs:label xml:lang="fr">Au fondement de la Grèce : cités, mythes, panhéllenisme.</rdfs:label>
     <isPartOf rdf:resource="&Programme_Histoire_College_France;theme_greekCivilization"/
</owl:NamedIndividual
 Figure 3 Les informations attachées à la thématique spécifique Fondation de la Grecque dans le fichier OWL 

Comme nous l’avons étudié, la description par des méta-propriétés rdfs:label avec l’attribut  xml:lang permet de gérer les aspects multilingues à la fois des instances et des classes (lignes 3-4 dans la figure 3).

La figure 4 ci-dessous, le menu déroulant  démontre à la fois l’exploitation de la hiérarchisation entre les thèmes et le multilingue de l’ontologie du programme scolaire.  (Cf : également article Démonstrateur: utilisation d’une ontologie de programme scolaire)

Figure 4 La hiérarchisation entre des thématiques et l’affichage des instances de la classe theme en anglais
Figure 4 La hiérarchisation entre des thématiques et l’affichage des instances de la classe « theme » en anglais

3.2. Relation entre les thèmes et les connaissances

Dans notre précédent article, nous avons démontré la création de  la classe « Knowledge » pour stocker les connaissances de différentes thématiques (générales et spécifiques). Selon le programme scolaire, chaque instance de la classe knowledge est liée à la thématique correspondante par la propriété. Par exemple, l’instance  Les foyers de la civilisation grecque au VIIIe – VIIe siècle (ou knowledge_centerOfGreekCivilisation) de la classe Knowledge a une relation « isPartOf » avec la thématique spécifique Au fondement de la Grèce: cités et mythes  qui elle-même a le même type de relation avec la thématique La civilisation grecque (Cf. Figure 5).  La figure montre également deux autres connaissances attachées à ladite thématique spécifique.

Figure 5 La relation « isPartOf » de l’instance « Connaissance Les foyers de la civilisation grecque...» (dans le cercle vert) avec l’instance « Thématique spécifique Au fondement de la Grèce…»
Figure 5 La relation « isPartOf » de l’instance « Connaissance Les foyers de la civilisation grecque…» (dans le cercle vert) avec l’instance « Thématique spécifique Au fondement de la Grèce…»

Une fois que la relation entre la thématique et les connaissances correspondantes a été créée, nous pouvons ainsi sémantiquement l’exploiter. C’est dans le cas de la proposition des connaissances attachées à la thématique dans la phase de l’indexation des ressources pédagogiques. (cf. Figure 6) Voir plus en détail dans notre article Démonstrateur: utilisation d’une ontologie de programme scolaire.

Figure 6 La liste des cases à cocher des connaissances correspondant à la  « Thématique spécifique Au fondement de la Grèce…» dans le menu déroulant
Figure 6 La liste des cases à cocher des connaissances correspondant à la « Thématique spécifique Au fondement de la Grèce…» dans le menu déroulant

3.3. Relation entre les thèmes et les capacités

En ce qui concerne la relation entre les thèmes et les capacités, nous faisons la même démarche que celle étudiée dans la section précédente. Les différentes instances préfixés Topic (exemples concrets extraits des capacités du programme scolaire) ont été mis en relation avec les thématiques correspondantes. Par exemple, l’instance Topic_un_mythe_grec (ou topic_greekMyth) a une relation « isPartOf » avec la thématique spécifique Au fondement de la Grèce: cités et mythes. Tous les autres topics de cette thématique ont également la même relation. (Figure 7)

Figure 7 La relation « isPartOf »  de l'instance «  Topic_un_mythe_grec », dans le cercle vert, et les autres Topic avec la thématique spécifique Au fondement de la Grèce….
Figure 7 La relation « isPartOf » de l’instance « Topic_un_mythe_grec », dans le cercle vert, et les autres Topic avec la thématique spécifique Au fondement de la Grèce….

Quant à la relation entre les topics et les verbes définissant les objectifs pédagogiques (Cf : notre premier article du même sujet), nous aborderons cet aspect plus en détail dans l’article Relation de l’ontologie du programme scolaire et des différentes informations de la pédagogie. En effet, ces verbes sont reliés à la taxonomie générique de Bloom.

 

Source de citation :

Bachimont B., Engagement sémantique et engagement ontologique : conception et réalisation d’ontologies en Ingénierie des connaissances.
[En ligne: http://www.utc.fr/~bachimon/Publications_attachments/Ontologie-ICBook.pdf]

Transformation des informations extraites du programme scolaire en ontologie (1)

quote_onto

Dans cet article, nous allons décrire la démarche que nous avons suivie pour établir une ontologie de programme scolaire, à titre d’exemple de référence, par la transformation des informations extraites du programme scolaire. Cette démarche est une des étapes de notre réflexion pour faciliter la création et l’exploitation d’ontologies sur l’ensemble du programme scolaire français.

1. Choix technologique

Nous avons choisi de décrire l’ontologie du programme scolaire en OWL, édité par Protégé. Les avantages du langage OWL sont doubles:

  • permettre de structurer et mettre en relation des informations extraites des programmes scolaires  avec des ressources internes et externes ;
  • partager et réutiliser l’ontologie ultérieurement.

2. Découpage des éléments d’information

Dans notre article Analyse de la  structure du programme scolaire, nous avons démontré la possibilité d’extraire des informations communes des programmes scolaires en matière d’histoire au collège pour la conception de l’ontologie. Les informations communes  ayant les relations entre elles que nous pouvons exploiter sont :

  • thèmes à aborder ;
  • connaissances à enseigner ;
  • capacités attendues ;
  • démarches pédagogiques à entreprendre en classe. [1]

Nous allons étudier l’exemple du découpage des informations de la thématique « La civilisation grecque » du programme d’histoire du 6ème. Nous choisissons d’analyser en premier lieu trois types d’information identifiés dans la plupart des programmes scolaires de différentes matières comme éléments  structuraux de  base du programme   : thème, connaissance et capacité. Voir la table 1 ci-dessous.

[table id=3 /]

Quantitativement, la thématique « La civilisation grecque » contient 4 thématiques spécifiques, 9 connaissances et 17 capacités.

Pour stocker ces différents types d’information, nous avons d’abord créé :

  • la classe « theme » pour contenir les différents individuals  préfixés « theme » (thèmatiques générales à aborder en classe) et « themeSpecific » (thématiques spécifiques qui sont les sous thèmes des thèmatiques générales). (Cf : Figure 1). Dans l’ontologie, cette classe est une sous-classe de la classe « programDesciption »;
  • la classe « knowledge » pour contenir les connaissances à aborder (Cf : Figure 2).

[table id=4 /]

L’expression des relations entre ces différentes classes et d’autres sera abordée dans notre deuxième article du même sujet.

En ce qui concerne les capacités attendues dans le programme scolaire, nous avons découpé  ce type d’information en deux parties qui deviendront deux classes Competency (ou capacité) et Topic dans l’ontologie. En effet, l’expression officielle d’une capacité se fait sous forme d’une phrase contenant un verbe définissant l’objectif pédagogique et l’exemple concret  pour atteindre l’objectif.

Par exemple, une des capacités  de la thématique spécifique « La cité des athéniens (Ve et IVe siècles avant J.C.) : citoyenneté et démocratie » est de Connaître l’Attique, territoire de la cité ou Recognize Attica, territory of the city en anglais(Cf : Table 1 ci-dessus). Nous avons ainsi découpé ces informations en verb et topic (Cf : Figure 3)

[table id=5 /]

Ensuite, nous avons créé :

  • la classe « Competency » pour stocker les verbes extraits des capacités (Figure 4) [2]
  • la classe « Topic » pour stocker les individuals, issus des exemples concrets des capacités (Figure 5).

[table id=6 /]

La deuxième partie de notre article traitera les différentes relations internes de ces éléments d’information extraits du programme scolaire.

————-

[1] Cette information est propre à la matière d’histoire de tous les niveaux au Collège. Dans les autres programmes scolaires, nous trouvons des informations comme des commentaires à la place des démarches pédagogiques. Par exemple, Mathématiques et SVT

[2] L’étude concernant la relation  entre la classe « Competency » et la taxonomie de Bloom est traité en détail dans notre article, intitulé « Relation de l’ontologie du programme scolaire et des différentes informations de la pédagogie »

Source de citation : document « Développement d’une ontologie 101 : Guide pour la création de votre première ontologie » de Natalya F. Noy et Deborah L. McGuinness (Université de Stanford, Stanford, CA, 94305).  Traduit de l’anglais par Anila Angjeli (Bibliothèque Nationale de France, Bureau de normalisation documentaire), extraits du paragraphe «8. Conclusions »

 

Analyse automatisée des programmes de l’enseignement secondaire

cloud

Nous avons assuré de façon directe, avec l’outil Protégé, la conception d’ontologies pour la représentation des programmes d’histoire des classes de 6 ème et 5 ème, et de géographie de 5 ème.

Conscients que:

  • une ontologie a surtout de la valeur si elle est partagée par une large communauté d’utilisateurs,
  • notre travail est un premier jet qui doit être amendé et complété, notamment par des personnes connaissant bien les sujets abordés dans chaque programme, et les démarches pédagogiques,
  • notre travail n’a porté que sur une toute petite partie des programmes,

nous avons la préoccupation de rendre possible la contribution à ces ontologies de personnes qui ne peuvent ou ne veulent pas acquérir toutes les notions et méthodes spécifiques des ontologies.

Nous avons donc entrepris une démarche de conception d’outils d’aide à la création d’ontologies.

Pour commencer, nous avons travaillé, avec l’aide d’étudiants, à l’analyse automatisée d’une grande partie des programmes scolaires de l’enseignement secondaire français.

Le résultat de cette analyse fournit trois outils de visualisation qui peuvent aider à créer de nouvelles ontologies et compléter les ontologies existantes. Cette analyse exploite des méthodes classiques d’analyse de texte et combine certains résultats avec notre ontologie de Bloom. Celle-ci est une représentation sous forme d’ontologie de la taxonomie de Bloom qui propose une classification des activités pédagogiques.

Le premier outil permet de voir chaque programme en mettant en évidence:

  • les mots qui semblent particulièrement significatifs de ce programme,
  • les verbes, en distinguant ceux qui apparaissent dans notre ontologie de Bloom de ceux qui n’y sont pas,
  • les entités nommées (noms de personnes de lieux…).

Le deuxième outil présente de façon visuelle l’importance relative des verbes de notre ontologie de Bloom dans l’ensemble des programmes analysés.

Le troisième outil permet de voir les verbes de Bloom présents dans chaque programme, de voir dans quels autres programmes ils sont utilisés et de mettre en contexte leur utilisation.

Ces résultats peuvent être vus à partir de cette page:

http://perso.telecom-paristech.fr/~moissina/paf2013/

Des défauts demeurent -en particulier pour la détection des entités nommées- et des compléments doivent être mis en oeuvre, mais ces résultats montrent déjà que notre démarche de création d’outils d’aide à la conception d’ontologies est pertinente.

 

Analyse de la structure du programme scolaire

Bulletin Officiel, illustration de la rubrique "Textes officiels" du site Mémorial de la Shoah Crédit : D.R
Bulletin Officiel, illustration de la rubrique « Textes officiels » du site Mémorial de la Shoah Crédit : D.R

Dans cet article, nous allons analyser la structure du programme scolaire au niveau du collège. L’objectif est de créer une ontologie du programme qui a pour but d’être sémantiquement  exploitée en rapport avec tous types de ressources pédagogiques sur la plateforme iLOT. Elle jouera  un rôle essentiel dans la démarche de la conception et du développement des systèmes d’indexation, de recherche, du design de la navigation pour l’accès et la réutilisation des ressources éducatives à la fois par  les enseignants et les apprenants.

I. Introduction

La motivation de l’utilisation du programme scolaire dans notre démarche de conception du système d’indexation provient en effet des expériences d’utilisateur ainsi que des résultats des projets de  recherche européens. Nous pouvons citer en premier lieu le retour des expériences d’utilisateur du portail  Learning Resource Exchange for schools, dans le cadre du projet ASPECT (Adopting Standards  and Specifications for Educational Content) [1]. Elle démontre en effet que :

« 85 % des enseignants définissent la qualité des ressources comme la correspondance entre le contenu et le programme éducatif qu’ils traitent. L’indexation par point de programme améliore la pertinence des résultats de recherche ».

Ainsi, pour répondre aux attentes de la communauté des enseignants, nous utilisons toutes les informations provenant du programme scolaire pour concevoir le système d’indexation. Par ailleurs, nous pouvons également nous référer au projet européen  Intergeo, dédié à éliminer les freins à l’adoption de la géométrie dynamique par les enseignants et à l’utilisation des ressources existantes de cette matière en Europe. [2] Une partie du projet concerne la conception de l’ontologie des compétences en géométrie, Geoskills. [3] En effet, les informations dans cette ontologie sont extraites des  programmes scolaires.

Généralement, les programmes scolaires contiennent de nombreux éléments pédagogiques comme thèmes, connaissances, compétences etc. Ce sont ces informations et les relations entre elles et/ou avec d’autres connaissances existantes externes que nous pouvons exploiter pour la conception de l’ontologie.

En France, le Ministère de l’Education nationale met à disposition les programmes scolaires de toutes les matières et de tous les niveaux sur le site eduscol (Portail national des professionnels de l’éducation), destinés à aider les enseignants à concevoir leurs cours. Ces programmes ont été conçus comme la trame de la pédagogie pour les enseignants qui sont effectivement  libres d’utiliser les contenus de toute  nature (texte, image, vidéo, lien URL…), pour atteindre les objectifs fixés par les programmes. Ces programmes, consultés par  tous les enseignants, deviennent ainsi un langage commun propre de la communauté.

Dans la partie suivante, nous allons analyser la structure du programme scolaire pour dégager les éléments d’information de base pour les regrouper, classifier et mettre en relation dans l’ontologie du programme scolaire.

II. Structure du programme scolaire : étude de cas,  l’Histoire

Dans cette partie, en raison de la disponibilité des contenus à exploiter ultérieurement, nous choisissons d’analyser le programme de la matière ’histoire’ au niveau du collège.

Officiellement, l’enseignement de l’histoire au collège se déroule chronologiquement. Voir la table 1 de synthèse ci-dessous.

[table id=1 /]

Chaque thématique globale de chaque classe est abordée de façon chronologique et comprend plusieurs thématiques générales. Selon les heures consacrées durant l’année scolaire, ces dernières contiennent parfois des thématiques spécifiques.  Par exemple, au niveau de la sixième, il existe 6 thématiques générales (Cf : Table 2)

[table id=2 /]

Les thématiques générales ayant un pourcentage d’heures consacrées importantes contiennent des sous-thématiques ou des thématiques spécifiques. Par exemple, pour la thématique générale « La civilisation grecque », l’enseignant doit concevoir ses cours autour des trois  thématiques spécifiques suivantes (Cf : Figure 1) :

  • Au fondement de la Grèce : Cités, Mythes, Panhellénisme ;
  • La cité des Athéniens (Ve-Vie siècle) : Citoyenneté et Démocratie ;
  • Alexandre le Grand ou La Grèce des savants (au choix).

Cette hiérarchisation est une information importante pour la conception des relations entre ces thèmes dans l’ontologie du programme scolaire. Nous verrons plus concrètement ces relations dans notre article intitulé  » Transformation des informations extraites du programme scolaire en ontologie« .

Le déroulement des thématiques enseignées dans le programme d’histoire au niveau 6ème
Figure 1: Le déroulement des thématiques enseignées dans le programme d’histoire au niveau 6ème. La zone orange représente la structure interne de chaque bloc du thème abordé.

Officiellement et structurellement, chaque thématique ou sous-thématique est représentée sous forme de table ou de bloc d’informations (Cf. Zone orange dans la figure 1) comprenant :

  • thème : description de la thématique spécifique ou description de la sous-thématique spécifique;
  • connaissances : connaissances à enseigner en classe. Chaque connaissance a une forme d’expression en une phrase contenant les mots clés ou le groupe des mots représentant la notion centrale. (Cf. Figure 2);
  • démarches [4] : ce sont les suggestions de stratégies d’apprentissage concrètes que l’enseignant peut entreprendre pour son cours.  L’expression utilisée est souvent de la forme  «l’étude de cas de…. » [5];
  • Capacités : La définition des capacités se traduit sous deux formes. La première forme concerne les verbes définissant l’objectif pédagogique. Ce sont en quelque sorte les verbes d’action que nous trouvons dans la taxonomie de Bloom. La deuxième forme concerne les exemples concrets  pour atteindre tel ou tel objectif.

Voici un exemple concret d’un bloc thématique du thème « La civilisation grecque »  :

Exemple concret de l'organisation des informations dans une thématique abordée
Figure 2: Exemple concret de l’organisation des informations dans une thématique abordée

La structure de l’organisation des informations du programme scolaire, précédemment étudiée,  est un modèle officiel applicable à l’enseignement de l’histoire à tous les niveaux. La plupart des programmes scolaires comme MathématiquesPhysique-ChimieGéographieSciences de la vie et de la Terre (SVT) et Technologie ont également la même structure que celle d’histoire (thématiques à aborder, connaissances à enseigner, capacités attendues etc.). Ainsi, la méthodologie pour concevoir l’ontologie du programme d’histoire, étudiée plus en détail  dans notre article « Transformation des informations extraites du programme scolaire en ontologie » pourra être appliquée de façon générique à la plupart des matières enseignées à tous les niveaux de l’enseignement secondaire.

(Source de l’image « Bulletin officiel » : http://www.enseigner-histoire-shoah.org/activites-dans-la-classe-et-letablissement/textes-officiels.html)

————-

[1] La présentation de Rosa María Gómez de Regil (CNDP), Retour d’expérience sur le projet pilote ASPECT, Séminaire technique sur les normes et l’interopérabilité des ressources pédagogiques du 10 février 2011 (http://www.lom-fr.fr/scolomfr/communication/conferences.html). Plus d’information sur l’expérimentation de l’ASPECT > http://aspect-project.org/node/84

[2] P. Libbrecht, C. Desmoulins, C. Mercat, C. Laborde, M. Dietrich and Hendriks, « Cross-curriculum search for Intergeo, » In. Intelligent Computer Mathematics, Lecture Notes in Computer Science, vol. 5144, 2008, pp. 520-535  [ En ligne : http://link.springer.com/chapter/10.1007%2F978-3-540-85110-3_42 ]

[3]C. Desmoulins, « Construction avec des enseignants d’une ontologie des compétences en géométrie », GeoSkills. [En ligne : http://www-limbio.smbh.univ-paris13.fr/GBPOnto/data/documents/2010/5desmoulins.pdf

 [4] La démarche précise des entrées dans le thème ou des études de cas qui permettent d’éviter l’exhaustivité en se fixant sur des objets précis, afin de faire acquérir aux élèves les connaissances et les capacités qui constituent les objectifs à atteindre. [Cf : http://bit.ly/VgiFaR ]

[5] Il est important de noter que l’étude de cas n’est qu’une des stratégies d’apprentissage. Il existe une typologie des stratégies d’apprentissage classées de façon plus générique proposée par F. Chacón. In. Fabio Chacón, Ph. D., Mind-Mapping for Web Instruction and Learning. Nous utilisons  cette classification pour concevoir une ontologie générique de « Stratégie d’apprentissage » ou Stratégie pédagogique. Cette ontologie sera également importée dans l’ontologie du programme scolaire.

Usage de la librairie RDFaParser

Lyon_librairie_083
Librairie à Lyon
(Auteur: Frachet, Source : Wikimédia )

La librairie Javascript rdf-lib.js permet d’exploiter des marquers RDFa introduits dans des pages. Dans cet article, nous allons présenter comment l’utiliser.

rdf-lib.js permet de retrouver tous les attributs rdfa présents dans une page web.

Exemples basé sur une page HTML simple (disons person.html)

<!DOCTYPE html>
<html prefix="dc: http://purl.org/dc/terms/ schema: http://schema.org/">
<head>
<meta charset="UTF-8" />
<link property="profile" href="http://www.w3.org/1999/xhtml/vocab" />
<title>Nxhoaf's Home Page</title>
<base href="http://example.org/nxhoaf/" />
<meta property="dc:creator" content="Hoa Nguyen" />
<link rel="foaf:primaryTopic" href="#me" />
</head>
<body about="http://example.org/nxhoaf/#me"
prefix="foaf: http://xmlns.com/foaf/0.1/">
<h1>Nxhoaf's Home Page</h1>
<p>My name is <span property="foaf:nick">nxhoaf</span> and I like
<a href="http://www.amazon.com/" property="foaf:interest"
lang="en">Amazon</a>.
</p>
<p>
My
<span property="foaf:interest" resource="urn:ISBN:978-0321356680">
favorite <br>
<span resource="urn:ISBN:978-0321356680">
book is the inspiring <br>
<cite property="dc:title">Effective Java</cite> by
<span property="dc:creator">Joshua Bloch</span>
</span>
</span>
</p>
</body>
</html>

En premier lieu, rdf-lib.js dépend de la librairie jQuery, aussi nous devons inclure jQuery par exemple avec ces lignes:

<head>
<meta charset="UTF-8" />
<title>Nxhoaf's Home Page</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="./rdf-lib.js"></script>
</head>

Maintenant, nous avons intégré jQuery, nous pouvons l’utiliser pour attendre l’évènement « ready ». Lorsque la page est prête, nous pouvons réaliser les actions suivantes:

  • Retrouver les préfixes rdfa utilisés dans la page.

  • Retrouver les attributs rdfa.

  • Obtenir les triplets associés à un élément HTML cliqué.

Pour cela, nous créons a nouvel objet rdf:

var rdfLib = new RdfLib();

Retrouver les préfixes rdfa

Tous les préfixes rdfa peuvent être retrouvés avec l’appel:

var prefixes = rdfLib.getAllPrefixes(html);

Le résultat est la table prefeixes contenant tous les préfixes rdfa contenus dans la page. Dans notre exemple, nous aurons:

prefixes[dc] = "http://purl.org/dc/terms/";
prefixes[schema] = "http://schema.org/";
prefixes[foaf] = "http://xmlns.com/foaf/0.1/";

Pour boucler sur tous les préfixes, nous pouvons utiliser le code suivant:

for (var prefix in prefixes) {
console.log(prefix + ": " + prefixes[prefix]);
}

Retrouver les attributs rdfa

Maintenant, nous pouvons obtenir tous les attributs rdfa contenus dans la page avec le code suivant:

var triples = rdfLib.getAllTriples(html);

triples est une table de triplets. Chaque triplet est une structure composée de trois champs:

triple.subject
triple.predicate
triple.object

dans lequel chacun des champs {subject, predicate, object} associe deux valeurs {key, value} où key est le nom associé à une valeur représentés par  value:

subject.key
subject.value

predicate.key
predicate.value

object.key
object.value

Ici, nous avons un exemple d’une façon de parcourir la structure rdfa pour afficher tous les triplets. Supposez que dans notre page, nous avons un élément ‘div’ avec l’id « log »:

html = document.getElementsByTagName("html")[0];
var triples = rdfLib.getAllTriples(html);
output += "<b>All attributes: </b><br>";
for (var i = 0; i < triples.length; i++) {
triple = triples[i];
if (triple.subject != null) {
output += "subject: " + triple.subject.key + ":" + triple.subject.value;
output += "<br>";
}

if (triple.predicate != null) {
output += "predicate: " +  triple.predicate.key + ":" + triple.predicate.value;
output += "<br>";
} else {
output += "predicate: null";
output += "<br>";
}

if (triple.object != null) {
output += "object: " +  triple.object.key + ":" + triple.object.value;
output += "<br>";
}
output += "------------------------------<br>";
}
var log = document.createElement("div");
log.id = "log";
$('body').append(log);
$("#log").html(output);

Ci-dessous figure un extrait du résultat obtenu sur notre exemple  example html:

subject: about:http://localhost:8888/OwlProject/rdfa/person.html
predicate: property:profile
object: href:http://www.w3.org/1999/xhtml/vocab
------------------------------
subject: about:http://localhost:8888/OwlProject/rdfa/person.html
predicate: property:dc:creator
object: content:Hoa Nguyen
------------------------------
subject: about:http://localhost:8888/OwlProject/rdfa/person.html
predicate: rel:foaf:primaryTopic
object: undefined:#me
------------------------------
subject: about:http://example.org/nxhoaf/#me
predicate: property:foaf:nick
object: literal:nxhoaf
------------------------------
subject: about:http://example.org/nxhoaf/#me
predicate: property:foaf:interest
object: href:http://www.amazon.com/
------------------------------

Obtenir les triplets associés à un élément HTML cliqué

La librairie rdfalib fournit un moyen d’obtenir les triplets rdfa associés à un élément HTML cliqué. Nous avons deux possibilités:

  1. L’élément cliqué n’a pas de sujet explicite; par exemple <span property= »dc:creator »>Joshua Bloch</span>

  2. L’élément cliqué a un sujet; par exemple <span resource= »urn:ISBN:978-0321356680″>

Dans les deux cas, nous essayons d’obtenir un triplet dans la zone cliquée:

var triple = rdfLib.getTriple(event.target);

Si la zone cliquée ne contient aucun triplet, rien ne se passe:

if (triple == null ||
((triple.predicate == null) && (triple.subject == null))) {
return;
}

Sinon, nous poursuivons…

* si l’élément cliqué n’a pas de sujet explicite:

Dans ce cas, nous obtenons le sujet de la façon suivante:

var subjectTriple = rdfLib.getSubjectTriple(event.target);
triple.subject = subjectTriple.subject;

rdfLib.getSubjectTriple() est une fonction récursive, qui parcours l’arbre DOM de bas en haut pou retrouver un sujet. Si elle remonte jusqu’à la racine de l’arbre sans trouver de sujet, c’est l’url de la page courante qui constitue le sujet par défaut.

C’est ce qui fait que certains triplets de notre exemple ont le sujet suivant:

subject: about:http://shadok.enst.fr/ilot/OwlProject/rdfa/person.html

Une fois obtenu le sujet, nous afficons le triplet. Le code pour afficher le résultat est le même que précédemment.

Consider an example, when you click on <span property= »dc:creator »>Joshua Bloch</span>, rdfLib.getSubjectTriple() will go up and then find out that <span resource= »urn:ISBN:978-0321356680″> is the subject of the current triple:

<span resource="urn:ISBN:978-0321356680">
book is the inspiring <br>
<cite property="dc:title">Effective Java</cite> by
<span property="dc:creator">Joshua Bloch</span>
</span>

 As a result, we have:

subject: resource:urn:ISBN:978-0321356681
predicate: property:dc:creator
object: literal:Joshua Bloch

 * si l’élément cliqué a un sujet

Lorsque l’élément cliqué a un sujet, il est la base d’un triplet.

Nous parcourons alors l’arbre DOM vers le bas pour trouver tous les fils de cet élément qui permettent de compléter des triplets.

en utilisant l’appel

rdfLib.getAllTriples(event.target);

Supposez que nous cliquons sur l’élément <span resource= »urn:ISBN:978-0321356680″>, l’affichage des triplets pourra être obtenu ainsi:

var triples = RdfLib.getAllTriples(event.target);
for (var i = 0; i < triples.length; i++) {
triple = triples[i];
if (triple.subject != null) {
output += "subject: " + triple.subject.key + ":" + triple.subject.value;
output += "<br>";
}

if (triple.predicate != null) {
output += "predicate: " +  triple.predicate.key + ":" +
triple.predicate.value;
output += "<br>";
}

if (triple.object != null) {
output += "object: " +  triple.object.key + ":" + triple.object.value;
output += "<br>";
}
output += "------------------------------<br>";
}

 alors le résultat sera:

-----------------------
subject: resource:urn:ISBN:978-0321356681
predicate: property:dc:title
object: literal:Effective Java
------------------------------
subject: resource:urn:ISBN:978-0321356681
predicate: property:dc:creator
object: literal:Joshua Bloch
------------------------------

Noter que lorsque utilisé sur la racine de l’arbre DOM, l’appel RdfLib.getAllTriples(event.target) listera tous les triplets définis dans la page.

Ignorer certains triplets

La spécification  RDFa prime specification indique que lorsque nous avons un élément contenant les attributs ‘rel’ et ‘href’ simultanément,

le contenu de l’attribut ‘rel’ doit être considéré comme prédicat (predicate) et l’attribut ‘href’ doit être considéré comme object.

Malheureusement, il y a des execptions. Pae exemple, la déclaration d’un css externe répond à ces règles:

<link rel="stylesheet" type="text/css" href="http://link/to/file.css">

 Evidemment, cela n’est pas ce que nous voulons. La librairie fournit une manière d’éviter ces résultats inappropriés.

Tout ce dont nous avons besoin est de déclarer une table contenant les éléments que nous souhaitons ignorer:

var ignoreArray = [
"stylesheet",
"an element with space",
"other-element",
"yetAnotherElement",
];

où « stylesheet », « an element with space » sont les valeurs de prédicat qui doivent être ignorés. Nous passons la table ignoreArray à la fonction addToIgnoreArray

rdfLib.addToIgnoreArray(ignoreArray);

 Cette fonction doit être appelée avant d’utiliser d’autres fonctions de la librairie.

Voir person.html pour plus de détails sur l’exemple.

(Source d’image : http://commons.wikimedia.org/wiki/File:Lyon_librairie_083.JPG )

Enrichir des documents pédagogiques grâce à DBPedia

 Lod-cloud-2011

Depuis plusieurs années, DBpedia donne une représentation formalisée des contenus de Wikipedia, donnant ainsi un accès manipulable par des algorithmes des données de Wikipedia. Le marquage sémantique d’éléments de contenus permet d’enrichir considérablement la recherche et l’exploitation de contenus.

Dans cette optique de marquage,  après avoir exploité des marquages RDFa dans les pages Web, fin 2012, Google a introduit le knowledge graph pour les utilisateurs français. Au même moment, une initiative soutenue par le Ministère de la Culture et Wikimédia a annoncé un effort accru pour une branche française de DBpedia, nommée SemanticPedia.

Nous allons voir ici comment ces initiatives peuvent contribuer à l’enrichissement de ressources pédagogiques. Les résultats présentés ici sont des ébauches pour introduire l’idée.

Ressources pédagogiques

Nous allons prendre comme support de travail un extrait d’un livre scolaire produit par lelivrescolaire.fr, disponible en ligne ici. Il s’agit d’un livre d’histoire-géographie, correspondant au programme de 6ème en France en 2013.

La méthode proposée peut se décliner sur le programme d’histoire-géographie d’autres classes ou d’autres documents sur le même programme, mais aussi sur d’autres disciplines comme les sciences de la vie. L’adaptation à des disciplines comme le français ou les mathématiques demandera probablement plus de réflexion. Pour la géométrie, un important travail a déjà été fat par le projet GeoSkills.

Nous allons utiliser le langage SPARQL. Il s’agit d’un langage d’interrogation de données liées -Linked Data- publiées dans un triple store.

Données sur les lieux

L’idée de départ est de récupérer des données sur les lieux et les événements cités.

Pour les lieux, nous pouvons nous intéresser à leur localisation géographique exacte, afin de les localiser sur une carte, à leur appartenance administrative -ex: la Bourgogne est une région de France-, à quelques données factuelles comme le nombre d’habitants ou le type de production le plus significatif en ce lieu.

Nous allons commencer par la localisation géographique.

Web sémantique et données culturelles

Nous voyons que le livre d’histoire aborde les pyramides de Gizeh. Nous pouvons aisément trouver la page correspondante de dbpedia: Gizeh

Observons les différents champs disponibles sur cette page et proposons quelques utilisations. Le lien contient la chaîne ‘resource’ et pointe vers une représentation exploitable automatiquement. Ce lien exploité dans un navigateur renvoie vers une page HTML présentant les mêmes données sous forme d’une page web.

La propriété dbpedia-owl:wikiPageWikiLink permet de récupérer un ensemble de liens vers des pages de Wikipedia relatives à Gizeh. Nous pouvons présenter une partie de ces liens comme sources d’informations complémentaires. Il serait surement utile de filtrer un peu cette liste; ce besoin sera l’objet d’un prochaine billet: filtrage automatique ou humain? effectué au niveau de l’ontologie de programme ou collaborativement par les enseignants?…

Les propriétés prop-fr:latitude et prop-fr:longitude nous donnent la position géographique. Cela peut aisément nous permettre de proposer des compléments grâce à une recherche par la position. Le complément le plus évident est l’affichage d’une carte, par exemple avec l’API de Google Maps.

Ce qui serait intéressant, par exemple, c’est trouver où il y d’autres pyramides afin de situer ce type d’architecture dans le temps et dans l’espace.

Que faire pour y arriver?

http://fr.dbpedia.org/page/Pyramides_d’%C3%89gypte

Dans cette page, on trouve des liens vers différentes pyramides, mais au milieu d’autres liens dans la propriété

dbpedia-owl:wikiPageWikiLink

qui prend par exemple la valeur

dbpedia-fr:Sékhemkhet

et

http://fr.wikipedia.org/wiki/Localisation_des_pyramides_%C3%A9gyptiennes

Nous voyons là qu’il y a des ressourceson peut imaginer une interface qui propose ces ressources et permet à un humain de faire une sélection. il est probablement beaucoup plus difficile de concevoir un processus automatique qui sélectionne de façon pertinente des ressources qui répondent à une attente précise.

Que faire encore?

Nous avons supposé qu’un lien était proposé entre le contenu d’une partie du livre et l’Egypte antique. Un scénario simple est celui où un utilisateur humain établi ce lien. Nous aborderons dans un prochain billet la question d’identifier dans le livre d’histoire les mots qui constituent probablement des références à des lieux, afin d’automatiser la recherche complémentaire de données sur ces lieux tel que nous venons de la voir.

[source d’image : http://semhpst.hypotheses.org/17 ]