1. A method of processing e-communication data by a computer system to identify one or more themes within the communication data, the method comprising: accessing, by a processing system of a computer system, a set of communication data stored in a storage system of the computer system; identifying, by the processing system, terms in the set of communication data, wherein a term is a word or short phrase; defining, by the processing system, relations in the set of communication data based on the terms, wherein a relation is a pair of terms that appear in proximity to one another; calculating, by the processing system, a relation score for each relation based on a frequency that the terms of the relation appear together in the set of communication data, the number of letters in the terms of the relation, and/or the proximity of the terms to one another, wherein relations that appear relatively frequently in the set of communication data and/or have terms with more letters are given a higher score, wherein the score is lowered for those relations whose terms appear relatively far apart in the set of communication data, wherein scoring each relation includes multiplying a number of times that the terms of the relation appear in the set of communication data by a number of total characters in the terms of the relation, and dividing by 1+an average distance between the terms of the relation as it appears in the set of communication data; identifying, by the processing system, themes in the set of communication data based on the relations, wherein a theme is a group of one or more relations that have similar meaning; and storing, by the processing system, the terms, the relations, and the themes in a database.