1. A computer-implemented method for constructing a search query to execute a search of a knowledge base, the method comprising: using a processor to perform method steps comprising: parsing an input query received from a user conducting the search of the knowledge base into a plurality of sub-components; matching at least one of the plurality of sub-components to concepts represented as nodes in a semantic concept network of the knowledge base that provides an index of a plurality of documents that are target concepts linked to one or more nodes in the network; selecting from the knowledge base a set of matching concepts that match at least part of the sub-components; mapping the matching concepts to a structured set of criteria and criteria values that specify a set of constraints on and scoring parameters for the matching concepts, the criteria and criteria values being linked to nodes of the matching concepts; and executing the search of the database to retrieve a set of target concepts as search results constrained by the criteria according to a relationship between the search results and the matching concepts, the search results retrieved by matching nodes of the criteria and criteria values across the network to nodes of the target concepts using transitivity, wherein the search results are scored against each of the matched concepts and the search results are ranked based on the criteria values, the search results including one or more of the documents indexed.