I am working on a project in which user adds some text into Database, and while saving also adds tags to his/her entry, so that others can search using those tags.
EXAMPLE:
TEXT: "Next Formula 1 race is in Spain"
TAGS: "Formula 1", "race", Spain"
if any user will search for these tags will get this entry in the results.
But i want users who search for "Sports" or "Motor Sport" or "Europe" should also get this entry, although these tags were not explicitly tagged into the entry, but are related because "Formula 1" is type of "Motor Sport" which is a type of "Sport" and "Spain" is in "Europe".
At the moment on my submission form, users write their text in one text box, and then write their tags into the second text box below, and submit.
these tags are later then categorized manually by the admin. So in the above case the admin will manually put "Spain" as the child element of "Europe". (MS SQL Server Hierarchy Column)
I think this can be achieved using some Ontologies software. dotNetRdf, OWL ... but am not sure. I just go to know about this side of the world few days back, and I am not sure how these can help me. Is this the solution, or am I looking into completely wrong thing? Any suggestions to achieve the above?
Also, before doing the categorization, I would want to automatically pick tags from the text and fill in to the lower text box as Tags.
For this I guess I'll have to use some NLP service? Any ideas which one to use, or any other suggestion?