Aller au contenu

Développement d'un dictionnaire


mandala75

Sujets conseillés

Je cherche à mettre en ligne un dictionnaire technique à raison d'une page par mot clé... mais je souhaiterai que lorsqu'une définition s'affiche, les mots qui sont définis ailleurs dans ce dic s'affichent automatiquement avec les liens hypertexte correspondant à chaque définition, à la manière de certaines encyclopédies multimédias... et ce si possible automatiquement.

Je bloque techniquement :

- est ce possible et comment faire ?

- comment gérer à l'avance les différentes formes que peuvent prendre les mots de notre langues française qui se conjugent, s'accordent etc...

Merci de vos conseils et de vos lumières

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Je vais tenter de répondre à chacune de tes questions:

_Est-ce possible : très certainement!

_Comment faire : Il y a à mon avis 2 étapes...

*Tout d'abord, dans la base de données que tu utilises pour stocker les définitions, il faudraient que tu ajoutes des champs 'Variante1', 'Variante2', ... 'VarianteN' pour avoir sous la main toutes les variantes des mots... Cela n'est pas trop compliqués pour les noms et les adjectifs mais ça devient beaucoup plus drole pour les verbes!!! Y a peut être moyen d'éviter cela en "apprenant" un peu la grammaire française à ton serveur...(pour les verbes du 1er et 2eme groupe par exemple!)

*Ensuite, parser le texte que tu affiches à l'écran en essaynt de retrouver les mots utilisés dans ta base de données... Mais ça va en faire des requêtes par affichage!!! Une bonne utilisation du cache peut réduire considérablement le nombre de requête par jour... Faudra certainement y réfléchir!!!

_comment gérer à l'avance les différentes formes que peuvent prendre les mots de notre langues française qui se conjugent, s'accordent etc...

*Réponse donnée au dessus... Certainement pas la plus efficace mais la grammaire française est tellement bizarre parfois! ;)

A+

Edit : Une autre solution possible serait de parser ta base de données de temps en temps... genre entre 3h et 5h du matin...(je dis ces heures là à tout hasard... c'est certainement le moment ou ton serveur sera le moins sollicité!)

Modifié par Bourinho
Lien vers le commentaire
Partager sur d’autres sites

Merci Bourinho...

Je t'avoue que j'arrivais à peu près aux mêmes solutions que toi. Pas simple mais sympa à mettre en oeuvre mais bon...

Maintenant une autre question pour le fun... comment exclure les homonymies...?

Ex : un mot d'une définition figure bien dans la base mais dans un contexte donné précis, il n'a pas la même signification... il conviendrait qu'il ne soit pas détecté, qu'il ne bénéficie d'aucun lien etc...

Lien vers le commentaire
Partager sur d’autres sites

Wow, ça me paraît un boulot énorme.

Est-ce que tu veux que tous les mots de la définition soit cliquables ou seulement quelques uns ? Si c'est la seconde option, tu y gagnerais certainement à rentrer les liens manuellement : si tu rentres une entrée par rouge, ça répartit la tâche et ça n'est pas très compliqué de faire les liens au fur et à mesure.

Le problème, c'est surtout quand tu saisis de nouveaux mots, il faudrait reparcourir le texte des anciennes entrées pour voir s'il faut y faire des liens... Bref, pas de réponse évidente.

En tout cas, j'ai remarqué en général que l'approche "tout automatique" est souvent très tentante au début, mais que la complexité que cela introduit ensuite justifie rarement le bénéfice apporté. Si tu prends l'exemple de http://fr.wiktionary.org/, ça fonctionne très bien et c'est un simple wiki (la gestion des liens est donc manuelle).

Vincent

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Vincent,

Comme il s'agit d'un dictionnaire technique, tous les mots ou presque auraient besoin d'être définis (hormis les articles, les auxillaires, les conjonctions, les pronoms personnels,...) !! et franchement je me vois ma faire ca à la main ! Il me faudrait au moins 3 vies ;)

Je connais très bien les systèmes adoptés par les Wiki et effectivement un mot par ci par là est lié à une autre page et cela peut donc se faire manuellement...

Je continue la réflexion et les consultations ;)

Amicalement

Lien vers le commentaire
Partager sur d’autres sites

A un moment donné, il va falloir que tu fasses un arbitrage car tu vas arriver à des définitions de termes techniques qui sont composés de plusieurs termes techniques... Comment décider quel lien attribuer?

Si je comprend ta démarche, tu vas rentrer des définitions et quand tu les affiches tu veux voir les liens vers les autres définitions.

Pour faire cela il faut distinguer plusieurs temps:

1) entrée/modification de la définition : terme + expliquation. Cette définition sera marquée comme non traitée dans la base.

2) Traitement de la définition: on morcèle la définition par mot, on enlève tous les mots vides, on traite les verbes, etc et on cherche si une définition est associée au terme, si oui on crée un lien sinon on passe au suivant. Cette étape va générer les pages html à afficher. Ce traitement peut être effectué par un serveur à part, ou via un cron toutes les nuits.

3) Recherche/Visualisation: tu fais les recherches comme tu veux et tu affiches les pages html générées.

En ce qui concerne les homonymes, les mots vides et les verbes, il y a pas mal d'algo de dispos en cherchant des infos sur les moteurs de recherche, la gestion electronique de document, etc. S'il m'en revient en tête je les posterai

Lien vers le commentaire
Partager sur d’autres sites

En ce qui concerne les homonymes, les mots vides et les verbes, il y a pas mal d'algo de dispos en cherchant des infos sur les moteurs de recherche, la gestion electronique de document, etc. S'il m'en revient en tête je les posterai

Bien volontiers, merci !

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...