1. A method comprising: receiving, by a processing device, a corpus of textual listings; identifying, by the processing device, main concept words and attribute words in the corpus by repeating until a termination condition is reached: for each listing in the corpus, tagging at least one word as a head noun word based on at least one previously identified main concept word or a head noun identification rule; for each listing in the corpus for which a head noun word has been tagged, tagging remaining nouns as at least one modifier word; assigning one word of the at least one head noun word as a main concept word and one word of the at least one modifier word as an attribute word; and providing, by the processing device, the main concept words and the attribute words as at least a portion of a semantic model.