public List<IWord> getSenses(IIndexWord idxWord) { List<IWord> senses = new ArrayList<IWord>(); if (idxWord != null) { for (IWordID senseID : idxWord.getWordIDs()) senses.add(dictionary.getWord(senseID)); } return senses; }
public boolean equals(Object obj) { if(this == obj) return true; if(obj == null) return false; if(!(obj instanceof IIndexWord)) return false; final IIndexWord other = (IndexWord) obj; if(!id.equals(other.getID())) return false; if(tagSenseCount != other.getTagSenseCount()) return false; if(!wordIDs.equals(other.getWordIDs())) return false; return true; } }
public static Set<Synset> toSynset(Dictionary dict, String lexeme, boolean isCaseSensitive) throws LexicalSemanticResourceException { Set<IIndexWord> indexWords = new HashSet<IIndexWord>(); Set<Synset> resultsSynsets = new HashSet<Synset>(); for (POS pos : POS.values()) { IIndexWord indexWord = dict.getIndexWord(lexeme, pos); if (indexWord != null) { if (!isCaseSensitive) { indexWords.add(indexWord); } else { if(indexWord.getLemma().equals(lexeme)) { indexWords.add(indexWord); } } } } for (IIndexWord indexWord : indexWords) { if (indexWord != null) { List<IWordID> iwordIDs = indexWord.getWordIDs(); for (IWordID iwordID : iwordIDs) { resultsSynsets.add((Synset) dict.getSynset(iwordID.getSynsetID())); } } } return resultsSynsets; }
public Set<String> getAllWords(POS pos) { Set<String> words = new HashSet<String>(); Iterator<IIndexWord> i = dictionary.getIndexWordIterator(pos); while(i.hasNext()) { IIndexWord iw = (IIndexWord)i.next(); words.add(iw.getLemma()); } return words; }
for(Iterator<IIndexWord> i = source.getIndexWordIterator(pos); i.hasNext(); ){ idxWord = i.next(); idxWords.put(idxWord.getID(), idxWord);
public long getUsageOf(String word) throws WordNetException { IIndexWord idxWord = jwiDictionary.getJwiRealDictionary().getIndexWord(word, this.realSynset.getPOS()); return idxWord.getTagSenseCount(); }
@Override public boolean containsLexeme(String lexeme) throws LexicalSemanticResourceException { // iterate over all POS to check if there is an index word with given lexeme for (POS pos : POS.values()) { IIndexWord indexWord = dict.getIndexWord(lexeme, pos); if (indexWord != null) { if (isCaseSensitive) { if (indexWord.getLemma().equals(lexeme)) { return true; } } else { return true; } } /*if (idxWord != null) { String lemma = idxWord.getLemma(); if (lemma.equals(lexeme)) { return true; } }*/ } return false; }
/** * Returns the number of synsets of given lemma and POS. * @param lemma * @param partOfSpeech * @return * @throws WordNetException * @author Ofer Bronstein * @since June 2014 */ public int getNumberOfSynsets(String lemma, WordNetPartOfSpeech partOfSpeech) throws WordNetException { IIndexWord idxWord = jwiRealDictionary.getIndexWord (lemma, JwiUtils.getJwiPartOfSpeec(partOfSpeech)); if (idxWord==null) { return 0; } return idxWord.getWordIDs().size(); }
/** * Creates a new index word that replicates the specified index word. * The new index word replaces it's internal synset ids with synset ids * from the denoted synsets, thus removing redundant ids. * * @param old * the index word to be replicated * @return the new index word object * @throws NullPointerException * if the specified index word is <code>null</code> * @since JWI 2.2.0 */ protected IIndexWord makeIndexWord(IIndexWord old){ List<IWordID> oldIDs = old.getWordIDs(); IWordID[] newIDs = new IWordID[oldIDs.size()]; IWordID oldID; ISynset synset; for(int i = 0; i < oldIDs.size(); i++){ oldID = oldIDs.get(i); synset = synsets.get(oldID.getPOS()).get(oldID.getSynsetID()); for(IWord newWord : synset.getWords()){ if(!newWord.getID().equals(oldID)) continue; newIDs[i] = newWord.getID(); break; } if(newIDs[i] == null) throw new IllegalStateException(); } return new IndexWord(old.getID(), old.getTagSenseCount(), newIDs); }
public void getSynsetId(String word) { List<String> stems = wstem.findStems(word, null); if(stems.size() > 0) word = stems.get(0); IIndexWord idxWord = dict.getIndexWord(word, POS.NOUN) ; IWordID wordID = idxWord.getWordIDs().get(0); // 1 st meaning IWord iword = dict . getWord (wordID); ISynset synset = iword.getSynset(); System.out.println(synset.getID()); }
public void getSynsetId(String word) { List<String> stems = wstem.findStems(word, null); if (stems.size() > 0) word = stems.get(0); IIndexWord idxWord = dict.getIndexWord(word, POS.NOUN); IWordID wordID = idxWord.getWordIDs().get(0); // 1 st meaning IWord iword = dict.getWord(wordID); ISynset synset = iword.getSynset(); System.out.println(synset.getID()); }
public HashSet<String> getRelated(IIndexWord idxWord, IPointer type) { HashSet<String> seen = new HashSet<String>(); for (IWordID wordID: idxWord.getWordIDs()) { IWord word = mDict.getWord(wordID); List<ISynsetID> relList = word.getSynset().getRelatedSynsets(type); for( ISynsetID sid : relList){ List <IWord> hw = mDict.getSynset(sid).getWords(); for(Iterator <IWord > i = hw.iterator (); i. hasNext () ;){ IWord relWord = i.next(); seen.add(relWord.getLemma()); } } } return seen; }
public ArrayList<ISynset> getAllSynset(String word, POS pos) { // System.out.println(word+" "+pos); ArrayList<ISynset> syns = new ArrayList<ISynset>(); IIndexWord idxWord = null; try { idxWord = wrap.dict.getIndexWord(word, pos); // System.out.println(idxWord); } catch (IllegalArgumentException e) { } if (idxWord == null) return new ArrayList<ISynset>(); List<IWordID> senses = idxWord.getWordIDs(); for (IWordID iw : senses) { ISynset is = wrap.dict.getSynset(iw.getSynsetID()); List<IWord> words = is.getWords(); syns.add(is); } return syns; }
public ArrayList<ISynset> getAllSynset(String word, POS pos) { //System.out.println(word+" "+pos); ArrayList<ISynset> syns = new ArrayList<ISynset>(); IIndexWord idxWord = null; try { idxWord = wrap.dict.getIndexWord(word, pos); //System.out.println(idxWord); } catch(IllegalArgumentException e) { } if(idxWord==null) return new ArrayList<ISynset>(); List<IWordID> senses = idxWord.getWordIDs(); for(IWordID iw : senses) { ISynset is = wrap.dict.getSynset(iw.getSynsetID()); List<IWord> words = is.getWords(); syns.add(is); } return syns; }
public void printSynsets(String word) { IIndexWord idxWord = dict.getIndexWord(word, POS.NOUN); IWordID wordID = idxWord.getWordIDs().get(0); // 1 st meaning IWord iword = dict.getWord(wordID); ISynset synset = iword.getSynset(); List<ISynsetID> sets = synset.getRelatedSynsets(Pointer.HYPERNYM); for (ISynsetID is : sets) { System.out.println(synset); recurseSynset(dict.getSynset(is)); } }
public void printSynsets(String word) { IIndexWord idxWord = dict.getIndexWord(word, POS.NOUN) ; IWordID wordID = idxWord.getWordIDs().get(0); // 1 st meaning IWord iword = dict . getWord (wordID); ISynset synset = iword.getSynset(); List<ISynsetID> sets = synset.getRelatedSynsets(Pointer.HYPERNYM); for(ISynsetID is: sets) { System.out.println(synset); recurseSynset(dict.getSynset(is)); } }
public ArrayList<IWord> getIWords(String st, POS pos_) { List<String> stems = getStemsList(st, pos_); ArrayList<IWord> iwds = new ArrayList<IWord>(); for(String s: stems){ //System.out.println(s); for (POS pos : POS.values()) { if(pos_!=null && !pos.equals(pos_)) continue; IIndexWord idxWord = dict.getIndexWord(s, pos); //System.out.println(idxWord); if(idxWord==null) continue; List<IWordID> senses = idxWord.getWordIDs(); // 1 st meaning for(IWordID iw : senses) { //System.out.println(iw); iwds.add(dict.getWord(iw)); } } } return iwds; }
public ArrayList<IWord> getIWords(String st, POS pos_) { List<String> stems = getStemsList(st, pos_); ArrayList<IWord> iwds = new ArrayList<IWord>(); for (String s : stems) { // System.out.println(s); for (POS pos : POS.values()) { if (pos_ != null && !pos.equals(pos_)) continue; IIndexWord idxWord = dict.getIndexWord(s, pos); // System.out.println(idxWord); if (idxWord == null) continue; List<IWordID> senses = idxWord.getWordIDs(); // 1 st meaning for (IWordID iw : senses) { // System.out.println(iw); iwds.add(dict.getWord(iw)); } } } return iwds; }
public List<Synset> getSortedSynsetsOf(String lemma, WordNetPartOfSpeech partOfSpeech) throws WordNetException { List<Synset> synsets = new ArrayList<Synset>(); IIndexWord idxWord = jwiRealDictionary.getIndexWord (lemma, JwiUtils.getJwiPartOfSpeec(partOfSpeech)); if (idxWord != null) { List<IWordID> wordIDs = idxWord.getWordIDs(); for (IWordID wordID : wordIDs) { IWord word = jwiRealDictionary.getWord(wordID); if (word == null) throw new WordNetException("Internal error: got this wordID " + wordID + " from the JWI dictionary, but the dictionary didn't find a word for it"); ISynset jwiRealSynset = word.getSynset (); synsets.add(getSynset(jwiRealSynset)); } } return synsets; }