1. A system for processing a query comprising: a knowledge base database having an index on at least one document; a query processor configured to receive a query and convert the query into a modified query of at least two terms that is in a format that is compatible with the index; a matching engine configured to match and retrieve one or more documents from the knowledge base database based on the modified query and applying the modified query to at least two matchers; a ranking engine configured to rank the retrieved documents according to a scoring mechanism and an indication of which of the at least two matchers identified the document; and an output component configured to provide the ranked documents to a user for selection.