Bddictionnairique Phase 1 Y. Stroppa Ly F. Badin
Sommaire Introduction Analyse Méta-catalogue Décomposition syllabique
Introduction Ce document permet de décrire les fonctionnalités de l’application remplissage_tables. De décrire les différentes opérations qui permettent d’alimenter la base de données en « méta-catalogues », de décrire les mécanismes de décomposition syllabiques.
Analyse Le projet Remplissage_table a deux fonctions : générer les méta-catalogues et d’effectuer la décomposition syllabique. Les méta-catalogues: Liens_dict et categories_lien Lien_dict permet de formaliser les liens entre les différents dictionnaires. En effet, chaque mot est défini dans un ou plusieurs dictionnaires et il est nécessaire pour des raisons de performance de pouvoir lors de l’exploitation à partir de l’application bddictionnairique connaître rapidement la localisation d’un même mot dans les différents dictionnaires. Catégories_lien permet d’établir les liens entre les mots et les catégories, en effet si un mot à plusieurs catégories définies dans les dictionnaires cette table nous permet de les conserver et on ajoute un ordre ( reste à définir le rôle de cet ordre)
Analyse Remplissage_tables Phase 1 Phase 2 Headword_EPD Headword_LPD Headword_MCQ Liens_dict categories_MCQ categories_MCQ categories_MCQ Remplissage_tables Liens_dict.csv Categories_lien.csv Remontée manuelle via les commandes mysqlimport Remontée manuelle via les commandes mysqlimport
Description de la production du Méta-donnees Méthode : remplirTableLiensDict appel du main() Extraction de contenu de chaque table headword_EPD, headword_LPD et headword_MCQ et de le stocker dans une collection de type List associé. Pour chaque mot de la liste EPD On cherche si il est présent dans les deux autres listes On ajoute un élément dans le vector commun List_liensdict avec la référence des trois listes sous la forme id_epd, id_lpd et id_mcq Pour chaque mot de la liste LPD absent de list_liensdict On cherche si il est présent dans la liste MCQ On ajoute un élément dans le vector commun List_liensdict de la forme 0, id_lpd, id_mcq …. Pour chaque mot de la liste MCQ absent de list_liensdict On ajoute un élément dans le vector commun list_liensdict de la forme 0, 0, id_mcq .... On écrit l’ensemble du vector List_liensdict dans le fichier Liens_dict.csv
Description de la production du Méta-donnees Méthode : remplirTableLiensDict appel du main() A priori on recharge dans cette deuxième partie la table lien_dict qui doit être chargée au préalable (????) . Donc il y a encore une particularité dans cette étape. Une fois cette table chargée dans un vecteur de type LiensDict on charge l’ensemble des tables catégories des trois dictionnaires dans des objets de type List. Ensuite l’étape consiste à regarder quels sont les types de chaque entrée de lien_dict dans les listes catégories et de les stocker dans un objet list liste_categorieslien. On adaptera en fonction de la présence dans un ou plusieurs dictionnaires à l’aide du flag_cat qui sera réactulisé.
Description de la décomposition syllabique Méthode : remplirTableDecompositionGraphique appel du main() On charge tous les mots issus de la table lien_dict de la base de données : idEpd, idLpd, idMcq,var1var5, flaglien, flagcat Pour chaque mot s présent dans cette liste Si plusieurs parties dans s On traite chaque partie (split) eclaterMot(partie) Sinon eclaterMot(s) syllabes On traite syllabes : remplacerVoyellesMuettes() On ecrit dans le fichier decomposition_syllabiques()
Description de la décomposition syllabique Méthode : eclaterMot(s, index) On alloue un vecteur : syllabes On parcourt le mot caractère par caractère à partir de index Si separer(s,i) On note la nouvelle syllabe dans une liste syllabes Fin du parcourt Retourne syllabes
Description de la décomposition syllabique Méthode : separer (s, index) On recherche dans le mot s la première voyelle que l’ on marque et on continue jusqu’à la prochaine voyelle. Une fois trouvée on regarde les éléments qui la précède à index-1 et index-2 Si index-1 on a y ou Y On ne sépare pas Si index-1 on a u ou U Si index-2 on a Q,q ou g,G On ne sépare pas Si on n’est sur l’avant-dernier caractères et que la voyelle trouvée est un e,E et que le dernier caractère est une consonne alors on ne sépare pas
Description de la décomposition syllabique La fonction remplacerVoyellesMuettes(s)
Exemples de découpage syllabique aardvark : aadv ark zymogen : zym og en * :première voyelle on ne découpe * Deux parties : zygomatic process : zyg om at ic pr oc ess