10. A computer-implemented method for querying a knowledge based database having documents that have been indexed, the computer-implemented method being performed by one or more processors, and the computer-implemented method comprising: receiving a query, the query containing a plurality of terms comprising at least a camel case term and a value type term; processing the query to obtain a modified query, the modified query including a constituent term at a position corresponding to the camel case term, and a generic term at a position corresponding to the value type term; identifying documents in a knowledge base database that proximately match the modified query; for each identified document, determining a distance for the one or more terms in the modified query; removing from the identified documents any documents which contain any of the one or more terms that have a distance that exceeds a predetermined distance; applying a scoring formula to the identified documents to obtain a score for each of the identified documents; ranking the identified documents based on the score obtained for each of the identified documents; and outputting the identified documents according to the ranking.
14. The method of claim 10 further comprising: determining that the received query exists in a cache of preexisting queries; and outputting a ranking of documents for the query from the cache when the query exists in the cache.