1. A method for providing search results for a search query, comprising: receiving a search query including an entity and entity type; parsing the entity into semantic components; generating variants based on input from auxiliary information and user configuration information for each of the semantic components; recomposing the entity in different morphological forms from different variants of the semantic components; and presenting at least one morphological form for the entity as a search result.