4. A computer-implemented apparatus comprising a non-transitory storage medium containing instructions which, when executed, cause a processor to perform a method comprising: identifying a first plurality of documents associated with a user; identifying a plurality of search strings based on a plurality of class keywords associated with a plurality of nodes in a taxonomy, the plurality of nodes being associated with a first plurality of classes, the search string identification comprising: for each node N in a subset of the plurality of nodes: identifying a first subset of the plurality of search strings based on a branch of the taxonomy linking a root node of the taxonomy to node N; and identifying a second subset of the plurality of search strings based on a branch of the taxonomy linking node N to the root node of the taxonomy; identifying a second plurality of classes, in the taxonomy, associated with the first plurality of documents by performing a plurality of searches on the first plurality of documents using the identified plurality of search strings; and associating the second plurality of classes with the user.
4. A computer-implemented apparatus comprising a non-transitory storage medium containing instructions which, when executed, cause a processor to perform a method comprising: identifying a first plurality of documents associated with a user; identifying a plurality of search strings based on a plurality of class keywords associated with a plurality of nodes in a taxonomy, the plurality of nodes being associated with a first plurality of classes, the search string identification comprising: for each node N in a subset of the plurality of nodes: identifying a first subset of the plurality of search strings based on a branch of the taxonomy linking a root node of the taxonomy to node N; and identifying a second subset of the plurality of search strings based on a branch of the taxonomy linking node N to the root node of the taxonomy; identifying a second plurality of classes, in the taxonomy, associated with the first plurality of documents by performing a plurality of searches on the first plurality of documents using the identified plurality of search strings; and associating the second plurality of classes with the user. 6. The apparatus of claim 4 , further comprising: identifying a second plurality of documents; identifying a subset of the second plurality of documents by performing a plurality of searches on the second plurality of documents using the identified plurality of search strings; and associating the subset of the second plurality of documents with the user.