Beispiel #1
0
 public void getSynonym(List words) {
   for (int i = 0; i < words.size(); i++) {
     IWord word = (IWord) words.get(i);
     System.out.println((new StringBuilder("\n\nFor Word:")).append(word.getLemma()).toString());
     List hypernymList = getHypernym(word.getLemma());
     for (int j = 0; j < hypernymList.size(); j++) {
       IWord hypernym = (IWord) hypernymList.get(j);
       System.out.println((new StringBuilder("Hypernym:")).append(hypernym.getLemma()).toString());
     }
   }
 }
Beispiel #2
0
  public static void main(String args[]) {
    WordnetTester wordnetTester = new WordnetTester();
    List hypernymList = wordnetTester.getHypernym("fauna");
    for (int i = 0; i < hypernymList.size(); i++) {
      IWord word = (IWord) hypernymList.get(i);
      System.out.println(
          (new StringBuilder("Hypernym is:")).append(word.getLemma().toString()).toString());
    }

    wordnetTester.getHypernym(hypernymList);
  }
Beispiel #3
0
  List keepUniqueTerms(List hypernymsList) {
    ArrayList uniqueList = new ArrayList();
    ArrayList uniqueHypernymList = new ArrayList();
    for (int i = 0; i < hypernymsList.size(); i++) {
      IWord word = (IWord) hypernymsList.get(i);
      if (!uniqueList.contains(word.getLemma().toString())) {
        uniqueList.add(word.getLemma().toString());
        uniqueHypernymList.add(word);
      }
    }

    return uniqueHypernymList;
  }
Beispiel #4
0
  public List getSynonyms(String phrase) {
    List synonymsList = new ArrayList();
    if (dict == null) {
      System.out.println("Dictionary is null");
      System.exit(0);
    }
    IIndexWord idxWord = dict.getIndexWord(phrase, POS.NOUN);
    if (idxWord != null) {
      IWordID wordID = (IWordID) idxWord.getWordIDs().get(0);
      IWord word = dict.getWord(wordID);
      ISynset synset = word.getSynset();
      List words = new ArrayList();
      IWord w;
      for (Iterator iterator = synset.getWords().iterator(); iterator.hasNext(); words.add(w))
        w = (IWord) iterator.next();

      synonymsList = keepUniqueTerms(words);
    }
    return synonymsList;
  }
Beispiel #5
0
  public boolean areSynoynyms(String word1, String word2) {
    boolean synonyms = false;
    List synoymList = getSynonyms(word1);
    List synoym1List = getSynonyms(word2);
    ArrayList word1List = new ArrayList();
    ArrayList word2List = new ArrayList();
    for (int i = 0; i < synoymList.size(); i++) {
      IWord word = (IWord) synoymList.get(i);
      word1List.add(word.getLemma());
    }

    for (int i = 0; i < synoym1List.size(); i++) {
      IWord word = (IWord) synoym1List.get(i);
      word2List.add(word.getLemma());
    }

    word1List.retainAll(word2List);
    if (word1List.size() > 0) synonyms = true;
    return synonyms;
  }
Beispiel #6
0
  public List getHypernym(String phrase) {
    List hypernymsList = new ArrayList();
    if (dict == null) {
      System.out.println("Dictionary is null");
      System.exit(0);
    }
    IIndexWord idxWord = dict.getIndexWord(phrase, POS.NOUN);
    if (idxWord != null) {
      IWordID wordID = (IWordID) idxWord.getWordIDs().get(0);
      IWord word = dict.getWord(wordID);
      ISynset synset = word.getSynset();
      List hypernyms = synset.getRelatedSynsets(Pointer.HYPERNYM);
      List words;
      for (Iterator iterator = hypernyms.iterator();
          iterator.hasNext();
          hypernymsList.addAll(words)) {
        ISynsetID sid = (ISynsetID) iterator.next();
        words = dict.getSynset(sid).getWords();
      }

      hypernymsList = keepUniqueTerms(hypernymsList);
    }
    return hypernymsList;
  }