Wordnet et netbeans

Résolu/Fermé
mimi22 - 31 déc. 2011 à 17:43
 sarah - 19 juin 2015 à 20:23
bonjour tout le monde, je suis entrain de faire un projet qui consiste à extraire les synonymes à partir de wordnet en java mais je n'ai aucune idée comment lier wordnet à netbeans pouvez vous m'aider s'ils vous plait

15 réponses

tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
31 déc. 2011 à 20:04
Bonjour,

Je ne pense pas qu'il est possible de la lier à l'IDE, mais il y aune API à utiliser pour y accéder, vous pouvez voir cette API comme JDom qui facilité l'accès à un fichier XML mais le fichier n'est pas lié à NetBeans.

L'API s'appelle JWNL

Les importes:
import net.didion.jwnl.JWNL;
import net.didion.jwnl.JWNLException;
import net.didion.jwnl.data.IndexWord;
import net.didion.jwnl.data.POS;
import net.didion.jwnl.data.Synset;
import net.didion.jwnl.data.Word;
import net.didion.jwnl.dictionary.Dictionary;


Et le code d'accès pour le terme "exemple":
JWNL.initialize(new FileInputStream(tg.getProperties().getProperty("wordnetxml")));
IndexWord EntreeOntologie = Dictionary.getInstance().getIndexWord(POS.VERB, "exemple");


Bon Courage.
1
bonjour tarek ,je suis entrain de travailler un projet qui consiste à la detection des design pattern selon les noms de classes et des methodes (les classes du pattern) et nous allons utiliser le wordnet et java et je ne sait pas comment. svp pouvez vous me aidez et merci.
0
Bonjour Tarek,
j'ai besoin de ton aide. J'ai voulu savoir est ce que c'est possible de chercher un mot avec l'ontologie Wordnet.
Mercii.
0
Bonjour à tous,
J'ai voulu savoir est ce que c'est possible d'accéder à la liste des mots de l'ontologie Wordnet.
Mercii.
0
tabou_amine Messages postés 1 Date d'inscription samedi 27 avril 2013 Statut Membre Dernière intervention 27 avril 2013
27 avril 2013 à 01:15
Svp tarek, je me suis bloqué il me donne l'erreur : "tg cannot be resolved" et merci d'avance
0
merci tarek mais comment je peux impoter le package wordnet car quand je fait import wordnet; il me signale un erreur
0
dans mon programmme je dois faire une interface java ou je peux entrer un mot et l'application m'affiche son synonymes à partir du wordnet est ce que je dois faire un code pour chaque mots?
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
31 déc. 2011 à 22:13
Pour le package:
1. Il faut télécharger le ".jar":
https://sourceforge.net/projects/jwordnet/

2. L'ajouter à votre projet:
https://netbeans.developpez.com/faq/?page=ConfigurationProjetsStandards#ajouterJar

Pour le mot: j'ai mis "exemple" à titre d'exemple, dans le code ci-dessus et j'ai utilisé la méthode pour Nom et pas pou verbes et adjectifs (.getIndexWord) alors il faut voir la documentation pour les autres types.
Le résultat est un tableau que vous pouvez afficher dans la console ou bien dans une interface graphique (votre propre interface et non pas celle de Wordnet).
Il faut aussi signaler qu'il vous faut un fichier XML de configuration et qui va contenir le chemin vers les fichiers Wordnet. Il faut prendre son temps en lisant la documentation.
Dans ce code:
tg.getProperties().getProperty("wordnetxml")

C'est l'objet que j'ai utilisé pour sauvé le chemin du fichier XML.
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
31 déc. 2011 à 23:22
je suis demendé d'extraire les synonymes à partir de wordnet pourquoi donc j'ai besoin de type de mot tu peux m'expliquer s'il te plait je suis débutante et je comprends pas exactement qu'est ce que je suis sené faire et désolée pour le dérangement mais tu me fait un grand service si tu mexplique encore
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
31 déc. 2011 à 23:45
Pour Wordnet, il y a trois index (presque) séparés:
1. Index pour les nom,
2. Index pour les verbes,
3. Index pour les adjectifs.

Vous pouvez voir cette différence quand vous effectuez une recherche dans l'interface graphique de Wordnet.

De toute façon, vous pouvez effectuer les trois recherches et afficher les résultats séparés.

Ce code, je l'ai utilisé dans un projet, alors le code est à nettoyer parce qu'il contient plein de mes propres objets:

 

import java.util.*;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

import net.didion.jwnl.JWNL;
import net.didion.jwnl.JWNLException;
import net.didion.jwnl.data.IndexWord;
import net.didion.jwnl.data.POS;
import net.didion.jwnl.data.Synset;
import net.didion.jwnl.data.Word;
import net.didion.jwnl.dictionary.Dictionary;


public class ServiceProjection implements Projecteur{
	
	public TG tg;
	/**
	 * Installation des dictionnaires de l'ontologie WordNet.
	 * @param prop Les propriétés du projet.
	 * @throws FileNotFoundException Si le fichier de configuration de wordnet est introuvable.
	 * @throws Exception Si une erreur survient pendant l'installation.
	 */
	public void initialisation(TG _tg) throws JWNLException, FileNotFoundException
	{
		tg = _tg;
		JWNL.initialize(new FileInputStream(tg.getProperties().getProperty("wordnetxml")));
	}
	
	
	/**
	 * La projection d'un lemme.
	 * @param lemme Le lemme à prejeter.
	 * @param p le spropriétés du projet.
	 * @param parent Le système de journalisation.
	 * @throws MauvaisArgument Si le lemme est vide ou null.
	 */
    public static void ProjectionLemme(Lemme lemme, Properties p, Parent parent) throws MauvaisArgument
    {
       if(lemme == null)
          throw new MauvaisArgument("le lemme à projeter ne doit pas être null");
    	
       //ArrayList<String> lemmes = new ArrayList<String>();
    	
       IndexWord EntreeOntologie = null;
       Synset[] listeSynonymes = null;
    	
       try {
          //JWNL.initialize(new FileInputStream(p.getProperty("wordnetxml")));
       } 
           catch (Exception e) 
          {
             parent.posterMessage(new Message("Erreur", "Impossible d'initialiser JWNL", "ProjectionLemme"));
          }
    	
       try {
          if (lemme.getNature().equals("V"))
          {
             EntreeOntologie = Dictionary.getInstance().getIndexWord(POS.VERB, lemme.ValeurLemme);
          }
       	
          if (lemme.getNature().equals("N") || (lemme.getNature().equals("U")))
          {
             EntreeOntologie = Dictionary.getInstance().getIndexWord(POS.NOUN, lemme.ValeurLemme);
             lemme.setNature("N");
          }
       	
          if (lemme.getNature().equals("A"))
          {
             EntreeOntologie = Dictionary.getInstance().getIndexWord(POS.ADJECTIVE, lemme.ValeurLemme);
          }
       	
          if (lemme.getNature().equals("R"))
          {
             EntreeOntologie = Dictionary.getInstance().getIndexWord(POS.ADVERB, lemme.ValeurLemme);
          }
       	
       } 
           catch (Exception e) 
          {
             parent.posterMessage(new Message("Erreur", "Une erreur est survenue pendant l'accès à WordNet pour le lemme " + lemme.getValeurLemme(), "ProjectionLemme"));
          }
    
       try {
          listeSynonymes = EntreeOntologie.getSenses();
       } 
           catch (Exception e) 
          {
             //e.printStackTrace();
             parent.posterMessage(new Message("Lemme introuvable", "Lemme introuvable " + lemme.getValeurLemme(), "Projection"));
          }
    	
       ArrayList<String> synsets = new ArrayList<String>();
    	
       if(listeSynonymes != null)
       {   	
          for (int i = 0; i < listeSynonymes.length ; i++)
          {
             synsets.add(lemme.getValeurLemme()+"#"+lemme.getNature().toLowerCase()+"#"+(i+1));
          }
       
       }
       // la liste des concepts candidats
       lemme.setListeSynsets(synsets);
       
    	// Si un seul concept: il est choisi directement (la désanbiguisation n'est pas nécessaire)
       if(synsets.size() == 1)
          lemme.setSynset(synsets.get(0));
    		
    }
    
    /**
     * Projection d'un terme pondéré (tous les lemmes présents dans sa liste de lemmes).
     * @param tp le treme pondéré.
     * @param p les propriétés du projet.
     * @param parent le système de journalisation.
     * @throws MauvaisArgument Si le terme est vide ou null.
     */
     public static void ProjectionTermePondere(TermePondere tp, Properties p, Parent parent) throws MauvaisArgument
    {
       if(tp == null)
          throw new MauvaisArgument("le terme pondere à projeter ne doit pas être null");
    
       for(int i = 0; i < tp.getListeLemmes().size(); i++)
       {
          try{
             ProjectionLemme(tp.getLemmeAt(i), p, parent);
          }
              catch(Exception e)
             {
                parent.posterMessage(new Message("Erreur", "Un lemme est vide", "ProjectionTermePondere"));
                e.printStackTrace();
             }
       }
    }
     
 	public void Projection(ListeObjets listeTermesPonderes) throws ListeVide
 	{
 	       if((listeTermesPonderes == null) || (listeTermesPonderes.size() == 0))
 	            throw new ListeVide("la liste à désambiguiser ne doit pas être null");
 	      	
 /*	         try 
 	         {
 	            ServiceProjection.initialisation(tg.getProperties());
 	         } 
 	             catch (Exception e) 
 	            {
 	               e.printStackTrace();
 	               parent.posterMessage(new Message("ERREUR", "Impossible d'initialiser JWNL", "ProjectionLemme"));
 	            }*/
 	      	
 	         for(int i = 0; i < listeTermesPonderes.size(); i++)
 	         {
 	            try{
 	               ServiceProjection.ProjectionTermePondere((TermePondere)listeTermesPonderes.get(i), tg.getProperties(), tg.getParent());
 	            }
 	                catch(Exception e)
 	               {
 	                  ((ListeTermesPonderes)listeTermesPonderes).parent.posterMessage(new Message("ERREUR", "Un terme Pondere contient des erreurs", "Projection"));
 	                  e.printStackTrace();
 	               }
 	         }
 	}
 	
 

}




Vous voyez que j'ai gardé le type du terme et en fonction de cela je choisis l'index.

pour mieux vous aider, est ce que vous pouvez me donner plus de détails?
0
svp est ce que vous pouvez me dire comment vous avez résolu le probléme des caractéres spéciaux ! ds l'interface on a buckwalter mais je veux en code qui me permet de le faire
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
31 déc. 2011 à 23:50
voila l'enoncé exactement:
réaliser une interface java capable d'interagir avec WordNet (ceci revient à écrire un programme java capable de faire des accès à ces ontologies pour y lire des informations) merci tarek c'est trés gentil de ta part tu pe pas imaginé combien j'ai besoin de votre aide un groooooos merci
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
31 déc. 2011 à 23:58
bon wordnet doit etre insatllé sur mon pc
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
1 janv. 2012 à 00:39
Il y a pas de quoi, même moi j'étais aidé pour en arriver là et maintenant c'est mon tour.

Alors, vous allez essayer de créer une interface similaire à celle offerte par Wordnet.
Il est préférable d'utiliser la version 2.0, elle ne pose pas de problème avec la JWNL.
http://wordnet.princeton.edu/wordnet/download/old-versions/

Puis les étapes de téléchargement et d'importation du package décrite ci-dessus.

Pour le code. Vous devez séparer le code de l'interface graphique et le code d'accès à WordNet.
Pour L'interface graphique: vous pouvez créer une en toute simplicité sous NetBeans, il vous faut:
1. Un champs de recherche JTextFeild,
2. Un bouton pour rechercher JButton
3. Un élément pour afficher les résulats:
a. JTextArea comme début,
b. JTable si vous pouvez bien l'utiliser

Cela suffira comme interface (vous pouvez l'enrichir avec l'interface de configuration: le chemin vers le fichier XML de configuration).

Le fichier XML, par exemple, est:


<?xml version="1.0" encoding="UTF-8"?>
<jwnl_properties language="en">
	<version publisher="Princeton" number="2.0" language="en"/>
	<dictionary class="net.didion.jwnl.dictionary.FileBackedDictionary">
		<param name="morphological_processor" value="net.didion.jwnl.dictionary.morph.DefaultMorphologicalProcessor">
			<param name="operations">
				<param value="net.didion.jwnl.dictionary.morph.LookupExceptionsOperation"/>
				<param value="net.didion.jwnl.dictionary.morph.DetachSuffixesOperation">
					<param name="noun" value="|s=|ses=s|xes=x|zes=z|ches=ch|shes=sh|men=man|ies=y|"/>
					<param name="verb" value="|s=|ies=y|es=e|es=|ed=e|ed=|ing=e|ing=|"/>
					<param name="adjective" value="|er=|est=|er=e|est=e|"/>
                    <param name="operations">
                        <param value="net.didion.jwnl.dictionary.morph.LookupIndexWordOperation"/>
                        <param value="net.didion.jwnl.dictionary.morph.LookupExceptionsOperation"/>
                    </param>
				</param>
				<param value="net.didion.jwnl.dictionary.morph.TokenizerOperation">
					<param name="delimiters">
						<param value=" "/>
						<param value="-"/>
					</param>
					<param name="token_operations">
                        <param value="net.didion.jwnl.dictionary.morph.LookupIndexWordOperation"/>
						<param value="net.didion.jwnl.dictionary.morph.LookupExceptionsOperation"/>
						<param value="net.didion.jwnl.dictionary.morph.DetachSuffixesOperation">
							<param name="noun" value="|s=|ses=s|xes=x|zes=z|ches=ch|shes=sh|men=man|ies=y|"/>
							<param name="verb" value="|s=|ies=y|es=e|es=|ed=e|ed=|ing=e|ing=|"/>
							<param name="adjective" value="|er=|est=|er=e|est=e|"/>
                            <param name="operations">
                                <param value="net.didion.jwnl.dictionary.morph.LookupIndexWordOperation"/>
                                <param value="net.didion.jwnl.dictionary.morph.LookupExceptionsOperation"/>
                            </param>
						</param>
					</param>
				</param>
			</param>
		</param>
		<param name="dictionary_element_factory" value="net.didion.jwnl.princeton.data.PrincetonWN17FileDictionaryElementFactory"/>
		<param name="file_manager" value="net.didion.jwnl.dictionary.file_manager.FileManagerImpl">
			<param name="file_type" value="net.didion.jwnl.princeton.file.PrincetonRandomAccessDictionaryFile"/>
			<param name="dictionary_path" value="c:/program files/wordnet/2.0/dict/"></param>
		</param>
	</dictionary>
	<resource class="PrincetonResource"></resource>
</jwnl_properties>


Gardez le sous le nom "wordnet.xml" dans la racine de votre projet, sauf le chemin (si vous n'utilisez pas le chemin par défaut pendant l'installation de Wordnet 2.0): c:/program files/wordnet/2.0/dict/

La classe de traitement:

Les imports:

import java.util.*;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

import net.didion.jwnl.JWNL;
import net.didion.jwnl.JWNLException;
import net.didion.jwnl.data.IndexWord;
import net.didion.jwnl.data.POS;
import net.didion.jwnl.data.Synset;
import net.didion.jwnl.data.Word;
import net.didion.jwnl.dictionary.Dictionary;


L'initialisation:
JWNL.initialize(new FileInputStream("wordnet.xml));


Faites les trois opérations, tel que parametre est la chaine passée comme paramètre, c-à-d saisie par l'utilisateur:

IndexWord EntreeOntologieVerbe = Dictionary.getInstance().getIndexWord(POS.VERB, parametre);
IndexWord EntreeOntologieNom = Dictionary.getInstance().getIndexWord(POS.NOUN, parametre);
IndexWord EntreeOntologieAdjectif = Dictionary.getInstance().getIndexWord(POS.ADJECTIVE, lemme.ValeurLemme);


Maintenant, vous avez les résultats retournés par Wordnet.
Pour les traiter, vous utiliser la méthode getSenses() comme suit:

Synset[] sensesVerbe = EntreeOntologieVerbe.getSenses();
Synset[] sensesNom = EntreeOntologieNom.getSenses();
Synset[] sensesAdjectif = EntreeOntologieAdjectif.getSenses();


La phase finale est d'afficher ses éléments dans la JTextArea définie dans l'interface graphique. Les Synset peuvent être affichés grâce à toString().

Je pense que vous avez les éléments clés, alors à vous de jouer.

Bon Courage.
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
1 janv. 2012 à 00:42
un grooos merci tarek j'apprécie beaucoup ton effort et j'espére bien que que je pourais réussir cette application car je suis pas assez forte en java mercii
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
1 janv. 2012 à 00:48
Bon Courage et tenez nous au courant, même si c'est pas moi (des fois je ne trouve pas le temps), il y a d'autres sur le forum qui ont fait des trucs pareilles.

Bonne Continuation.
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
1 janv. 2012 à 00:50
ok merci tarek t'es gentil
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
1 janv. 2012 à 01:26
j'ai fait l'initalisation JWNL.initialize(new FileInputStream("wordnet.xml")); mais il m'aafiche une erreur:<identifier> expected

illegal start of type
----
(Alt-Enter shows hints)
c quoi le probléme
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
2 janv. 2012 à 20:21
MMMMmmmmmm,
Je pense que cette erreur est signalée par votre éditeur.
Je pense que vous avez un problème dans les "import" ou bien dans l'ajout du package à votre projet. Pourquoi?

Quand le parseur lit un code, il cherche à le comprendre en commençant par la liste des mots clés Java, puis l'API par défaut puis les packages ajoutés au projet. Quand il ne trouve pas une classe (qu'il appelle "type") avec le même nom il signale cette erreur.

Pour connaitre l'erreur exacte, suivez l'instruction: Alt+Entrer, l'éditeur va vous afficher quelques propositions, et ainsi vous saurez la cause exacte et quelle classe pose le problème.
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
2 janv. 2012 à 21:07
c bon c rsolu ce pb mais maintenat j'ai un autre erreur qui me bloque :(



run:
Exception in thread "AWT-EventQueue-0" edu.smu.tspell.wordnet.impl.file.RetrievalException: Error opening index file: .\index.sense (Le fichier spécifié est introuvable)
at edu.smu.tspell.wordnet.impl.file.SenseIndexReader.getInstance(SenseIndexReader.java:88)
at edu.smu.tspell.wordnet.impl.file.WordFormLookup.loadSynsets(WordFormLookup.java:273)
at edu.smu.tspell.wordnet.impl.file.WordFormLookup.getSynsets(WordFormLookup.java:230)
atedu.smu.tspell.wordnet.impl.file.WordFormLookup.getSynsets(WordFormLookup.java:172)
at edu.smu.tspell.wordnet.impl.file.FileDatabase.getSynsets(FileDatabase.java:87)
at edu.smu.tspell.wordnet.WordNetDatabase.getSynsets(WordNetDatabase.java:81)
at word.jButton1ActionPerformed(word.java:82)
at word.access$000(word.java:5)
at word$1.actionPerformed(word.java:31)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
atjavax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:52)
at java.awt.Component.processMouseEvent(Component.java:6504)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6269)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4860)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.io.FileNotFoundException: .\index.sense (Le fichier spécifié est introuvable)
at java.io.RandomAccessFile.open(Native Method)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:233)
at edu.smu.tspell.wordnet.impl.RandomAccessReader.<init>(RandomAccessReader.java:75)
at edu.smu.tspell.wordnet.impl.LineLocator.<init>(LineLocator.java:54)
at edu.smu.tspell.wordnet.impl.MultipleLineLocator.<init>(MultipleLineLocator.java:48)
at edu.smu.tspell.wordnet.impl.file.SenseIndexReader.<init>(SenseIndexReader.java:101)
at edu.smu.tspell.wordnet.impl.file.SenseIndexReader.getInstance(SenseIndexReader.java:83)
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
3 janv. 2012 à 01:07
La ligne la plus importante est:
opening index file: .\index.sense (Le fichier spécifié est introuvable) 

Ainsi, il y a une erreur dans l'indication du chemin.
Avant tout: vérifier que le fichier index.sense existe dans le répertoire d'installation de wordnet (par une recherche dans l'explorateur windows dans le répertoire d'installation).

Si vous ne le trouvez pas, alors la version de wordnet est incompatible avec l'API, il faut voir la documentation pour savoir qu'elle est la version adéquate.

Si vous le trouvez, alors le problème est dans le chemin passé dans le fichier XML, il faut le vérifier (je pense que ./dict/) doit apparaitre dans le chemin, mais je ne suis pas sûr.

Une bonne nouvelle, le package est bien importé et le fichier XML est bien passé, alors dès que vous passerez cette erreur la projection ne sera plus un problème.
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
3 janv. 2012 à 14:36
j'ai utlisé l'API jaws qui me parait plus qimple que JWNL et pour le chemin j'ai fait:

System.setProperty("wordnet.database.dir", "C:\WordNet-3.0\dict\");
mais le systeme toujours n'accepte pas cette instruction
c'est pour ca j'ai pas pu me connecter à wordnet c ca qui me bloque
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
3 janv. 2012 à 14:41
il y a aussi l'experssion: wordnet.database.dir=/Users/markw/temp/wordnet3/dict
mais j'a pas su ou le mettre exctement: dans le code du boutton ou dans la class main ou dans une autre calsse
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
3 janv. 2012 à 20:25
Pas la peine d'utiliser la deuxième, vous pouvez utiliser la première après sa correction:
System.setProperty("wordnet.database.dir", "C:\\WordNet-3.0\\dict\\");

ou bien:
System.setProperty("wordnet.database.dir", "C:/WordNet-3.0/dict/");
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
3 janv. 2012 à 20:34
ok super ca marche :))) mais il m'extrait une seule definition de wordnet pas toutes les définitions
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
3 janv. 2012 à 21:24
Cela revient à l'API, et à vrai dire, j'ai jamais utilisé JAWS :'(, mais je pense que ça ce sera pas si difficile, alors il faut juste vérifier la documentation et les exemples sur l'Internet.

A titre d'exemple:
https://blog.rankdynamics.com/2008/07/21/fast-easy-wordnet-java/

Ainsi, il ne vous reste qu'afficher les résultats, bon travail.
Bonne Continuation.
0
Bonjour,
j'ai un projet en java et wordnet qui déterminer les relations entre deux mots par exemple la relation synonymie etc.. (funny et droll sont similar). Mais lorsque il y a deux mots n'existe pas dans le dictionnaire du wordnet. Comment faire??
SVP aidez-moi.
Merci d'avance :)
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
3 janv. 2012 à 21:38
merciii tarek ;))
0
mimihh Messages postés 27 Date d'inscription samedi 31 décembre 2011 Statut Membre Dernière intervention 8 février 2014
22 mars 2013 à 14:27
Bonjour Tarek
j'ai télécharger un projet qui contient plusieurs méthodes implémentées, moi j'ai besoin de la méthode LSA ( latent semantic analysis)
il s'agit d'un projet maven quand je fais l'éxection il m'affiche cette erreur:

Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2:exec (default-cli) on project sspace: Command execution failed. Process exited with an error: 1(Exit value: 1) -> [Help 1]

To see the full stack trace of the errors, re-run Maven with the -e switch.
Re-run Maven using the -X switch to enable full debug logging.

peut tu m'aider stp. merci
0
sanyouch Messages postés 2 Date d'inscription lundi 13 mai 2013 Statut Membre Dernière intervention 15 mai 2013
15 mai 2013 à 00:16
bonsoir,
je fais un projet sur le WordNet qui revient à écrire un programme java capable de faire des accès à WordNet .
Merci d'avance :)
0
Bonjour à tous
je travaille sur la composition sur les services web sémantique, je suis arrivée à l'étape de mesure de similarité entre deux paramètres, c'est pour cela j'ai choisis Wordnet comme un dictionnaire de base. J'ai téléchargé les API suivants jaws-bin.jar, gtranslateapi-1.0.2.jar, ws4j-1.0.1.jar.
J'ai utilisé pas mal de code mais ça n'a pas marché. J'ai besoin de vos aides s'il vous plait
0