10. One or more non-transitory computer-readable tangible media encoding software operable when executed to: access a document stored in one or more tangible media, the document comprising a plurality of text units, a text unit comprising a plurality of words, the plurality of words comprising a plurality of keywords; perform the following for each text unit: rank the plurality of words of the each text unit according to a ranking technique; select one or more highly ranked words as the keywords of the each text unit; establish relatedness among the keywords of each text unit; and select one or more keywords according to the established relatedness as one or more candidate tags to yield a candidate tag set for the each text unit; determine relatedness between the candidate tags of each candidate tag set and the candidate tags of other candidate tag sets; and assign at least one candidate tag to the document according to the determined relatedness.
10. One or more non-transitory computer-readable tangible media encoding software operable when executed to: access a document stored in one or more tangible media, the document comprising a plurality of text units, a text unit comprising a plurality of words, the plurality of words comprising a plurality of keywords; perform the following for each text unit: rank the plurality of words of the each text unit according to a ranking technique; select one or more highly ranked words as the keywords of the each text unit; establish relatedness among the keywords of each text unit; and select one or more keywords according to the established relatedness as one or more candidate tags to yield a candidate tag set for the each text unit; determine relatedness between the candidate tags of each candidate tag set and the candidate tags of other candidate tag sets; and assign at least one candidate tag to the document according to the determined relatedness. 13. The computer-readable tangible media of claim 10 , further operable to perform the following for each text unit by: removing one or more candidate tags that are not sufficiently related to the other candidate tags.