13. A computer program product for selectively delivering an article, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for: receiving a user preference; receiving a document; identifying a plurality of textual representations included in the document; determining a plurality of entity pairs each comprising a concept included in a concept taxonomy and a textual representation of the plurality of textual representations, each concept having a corresponding category vector including nodes adjacent to the concept in a taxonomy; computing a document vector (dv) for the document as a sum of the category vectors for the plurality of entity pairs selecting a subset of concepts from the plurality of concepts of the entity pairs according to a comparison of a document vector to the category vectors of the plurality of concepts by: calculating a similarity score ds for each concept according to ds=dv·cv, where dv is the document vector and cv is a concept vector; selecting the subset of concepts as concepts having similarity scores ds with respect to the document vector higher than a threshold, categorizing the document based at least in part on the subset of concepts; determine that the selected subset of concepts corresponds to the user preference; and in response once to determining that selected subset of concepts corresponds to the user preference, notifying a user associated with the user preference of the document.
13. A computer program product for selectively delivering an article, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for: receiving a user preference; receiving a document; identifying a plurality of textual representations included in the document; determining a plurality of entity pairs each comprising a concept included in a concept taxonomy and a textual representation of the plurality of textual representations, each concept having a corresponding category vector including nodes adjacent to the concept in a taxonomy; computing a document vector (dv) for the document as a sum of the category vectors for the plurality of entity pairs selecting a subset of concepts from the plurality of concepts of the entity pairs according to a comparison of a document vector to the category vectors of the plurality of concepts by: calculating a similarity score ds for each concept according to ds=dv·cv, where dv is the document vector and cv is a concept vector; selecting the subset of concepts as concepts having similarity scores ds with respect to the document vector higher than a threshold, categorizing the document based at least in part on the subset of concepts; determine that the selected subset of concepts corresponds to the user preference; and in response once to determining that selected subset of concepts corresponds to the user preference, notifying a user associated with the user preference of the document. 14. The computer program product of claim 13 , further comprising pruning concepts according to ambiguity resolution by comparing similarity scores corresponding to ambiguous entity pairs.