1. A computer-implemented method for improving keyword searches for enterprise services, the method comprising: receiving user input; processing, by one or more processors, the user input to provide a set of terms, the processing comprising: identifying one or more incoming concepts based on the user input; processing each of the one or more incoming concepts to identify one or more paths, each path being associated with at least one of the one or more incoming concepts; populating a first matrix based on the one or more paths; populating a second matrix based on probabilities associated with the one or more paths; generating a third matrix based on the first matrix and the second matrix, the third matrix comprising one or more potential concepts; ranking the one or more potential concepts; identifying one or more outgoing concepts based on the one or more potential concepts based on the ranking; and defining a second set of facts based on the one or more outgoing concepts; querying, by the one or more processors, a knowledge base based on each term of the set of terms to define a first set of facts, each fact of the first set of facts corresponding to a term in the set of terms and comprising instance data associated with a concept; selectively processing, by the one or more processors, a set of concepts selectively provided based on the user input to provide a set of ranked concepts; generating a query based on one or more of the first set of facts, the second set of facts and the set of ranked concepts; processing, using the one or more processors, the query to generate search results, the search results comprising one or more enterprise services stored in an enterprise service repository; and transmitting information associated with each of the one or more enterprise services for display to a user.
1. A computer-implemented method for improving keyword searches for enterprise services, the method comprising: receiving user input; processing, by one or more processors, the user input to provide a set of terms, the processing comprising: identifying one or more incoming concepts based on the user input; processing each of the one or more incoming concepts to identify one or more paths, each path being associated with at least one of the one or more incoming concepts; populating a first matrix based on the one or more paths; populating a second matrix based on probabilities associated with the one or more paths; generating a third matrix based on the first matrix and the second matrix, the third matrix comprising one or more potential concepts; ranking the one or more potential concepts; identifying one or more outgoing concepts based on the one or more potential concepts based on the ranking; and defining a second set of facts based on the one or more outgoing concepts; querying, by the one or more processors, a knowledge base based on each term of the set of terms to define a first set of facts, each fact of the first set of facts corresponding to a term in the set of terms and comprising instance data associated with a concept; selectively processing, by the one or more processors, a set of concepts selectively provided based on the user input to provide a set of ranked concepts; generating a query based on one or more of the first set of facts, the second set of facts and the set of ranked concepts; processing, using the one or more processors, the query to generate search results, the search results comprising one or more enterprise services stored in an enterprise service repository; and transmitting information associated with each of the one or more enterprise services for display to a user. 4. The method of claim 1 , wherein the one or more incoming concepts are identified based on the user input.