Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Defining words using Java

Tags:

java

word-list

I was wondering if there as an API in Java that can define words and find the origins of words. I remember awhile back searching this up and seeing "apache commons" but I am not sure.

So basically, the user will be able to enter a word "overflow" then the program will be able to define the word. So I am looking for an API that can define words and find origins of words. So the word "recherche" would have an origin that is "French".

like image 427
Jeel Shah Avatar asked Apr 27 '12 14:04

Jeel Shah


2 Answers

WordNet will give you half of what you are looking for: you can look up the definition for a word. Note that there are several implementations of WordNet for Java: jwi, jaws, Dan Bikel's, WordnetAPI. Some of these might be easier to use for your purpose than jwordnet suggested by miku (I have only used jaws and jwi).

Note: WordNet will not give you origins (AFAIK). I'm not aware of a software that does.

Note: You will have to provide the lemma of a word to be able to look it up in the dictionary. This means that you will have to apply some Natural Language Processing (NLP) techniques if you want to do this automatically on a free-text document (which can contain inflected forms). If you go this route, I'd suggest the GATE project's Morph plugin.

like image 112
Attila Avatar answered Sep 30 '22 16:09

Attila


Wordnet maybe? There is a Java wrapper for it: http://sourceforge.net/projects/jwordnet/

Another list of NLP toolkits:

  • http://en.wikipedia.org/wiki/List_of_natural_language_processing_toolkits

To detect a language:

  • http://www.jroller.com/melix/entry/nlp_in_java_a_language
like image 23
miku Avatar answered Sep 30 '22 15:09

miku