I want to implement a python based semantic search over a set of keywords (mainly hobbies, latest news, etc which people might be interested to talk about). I want to know if there exist an ontology database(s) for the same and open source search algorithms/implementations for the same.
Eg. My set = {talking,drinking,tweeting,Katrina Kaif,Katrina cyclone,rock collecting,coin collecting}
So, on searching "accumulate" I might get rock collection and coin collecting as the output.
Edit : The terms can have multiple words. That is "President. Barack Obama of United States" is a valid query.