1. A system, comprising: one or more computer processors; and a memory containing a program which when executed by the one or more computer processors performs an operation comprising: identifying, from a plurality of terms of a received query, a plurality of sensitive terms based on: (i) user input received with the query, (ii) an inverse document frequency (IDF) score of each term of the query, and (iii) a location of a respective node associated with each term of the query in an ontology; referencing the ontology to identify a set of generalized terms corresponding to the plurality of sensitive terms of the query; generating a plurality of subqueries, including a first subquery, a second subquery, and a third subquery based on the sensitive terms, a sensitivity score of each of the sensitive terms, and the set of generalized terms, wherein a first sensitive term of the plurality of sensitive terms is not one of the set of generalized terms and is excluded from each of the plurality of subqueries, wherein the third subquery is disassociated with the query, wherein the sensitivity scores are based on a predefined frequency threshold; executing each of the plurality of subqueries to retrieve a result set for each respective subquery; identifying, in a first result set corresponding to the first subquery, the first sensitive term; determining that the first sensitive term is not present in a second result set corresponding to the second subquery; applying a greater weight to the first result set corresponding to the first subquery relative to the second result set corresponding to the second subquery based on the first sensitive term being present in the first result set and not in the second result set; and filtering the result sets using the plurality of terms of the query, including the plurality of sensitive terms, to produce a final result set responsive to the query.