1. A system for retrieving documents related to a concept from a text corpus comprising: a computer comprising non-transitory storage media which stores: a set of at least four semantic classes, each including at least five keywords, which classes are combinable in different combinations thereof according to predefined syntactic rules to express the concept, a set of user-selected keywords for each of the semantic classes to be used in searching documents in the text corpus, each of a plurality of the sets of user-selected keywords including a plurality of user-selected keywords, at least some of the semantic classes including keywords which are used in relevant expressions in retrieved text when the constituent notion is being conveyed and including keywords having different meanings from other keywords of the same semantic class and which are not synonymous with the other keywords of the same semantic class, and a plurality of the syntactic rules to be applied to identified text portions which include one or more of the user-selected keywords, each of the syntactic rules identifying a pair of semantic classes comprising a respective first of the semantic classes and a respective second of the semantic classes, whereby different rules identify different pairs of semantic classes, the rule being satisfied when any first keyword from the first of the pair of semantic classes and any second keyword from the second of the pair of semantic classes are in any one of a plurality of syntactic relationships; and a concept matching module, which accesses the memory, and which identifies text portions within the text corpus which include one or more of the keywords and which applies each of the syntactic rules to the text portions and identifies those text portions which each satisfy at least one of the syntactic rules, and retrieves documents which include at least one of the identified text portions.