17. A computer readable medium comprising computer readable program code embodied therein for causing a computer system to: receive a first search phrase for a search within a domain of a product; evaluate the first search phrase based on the domain of the product, wherein evaluating the first search phrase comprises: obtaining a plurality of user-submitted keywords from the first search phrase, querying a keyword repository with at least two user-submitted keywords of the plurality of user-submitted keywords to obtain a derivative keyword of a plurality of derivative keywords, wherein the keyword repository relates each of the plurality of user-submitted keywords to at least one of the plurality of derivative keywords, identifying a facet from a facet repository using the derivative keyword, wherein the facet is a term that is contextually related to the plurality of user-submitted keywords based on historical usage by multiple users of the user-submitted keywords when searching in the domain of the product, and wherein the facet, the derivative keyword, and the plurality of user-submitted keywords are used to obtain a plurality of search terms, applying a backward filter to revise the plurality of search terms into a second search phrase, and identifying a previously submitted question based on the facet, the derivative keyword, and the plurality of user-submitted keywords; and display the second search phrase and the previously submitted question.
17. A computer readable medium comprising computer readable program code embodied therein for causing a computer system to: receive a first search phrase for a search within a domain of a product; evaluate the first search phrase based on the domain of the product, wherein evaluating the first search phrase comprises: obtaining a plurality of user-submitted keywords from the first search phrase, querying a keyword repository with at least two user-submitted keywords of the plurality of user-submitted keywords to obtain a derivative keyword of a plurality of derivative keywords, wherein the keyword repository relates each of the plurality of user-submitted keywords to at least one of the plurality of derivative keywords, identifying a facet from a facet repository using the derivative keyword, wherein the facet is a term that is contextually related to the plurality of user-submitted keywords based on historical usage by multiple users of the user-submitted keywords when searching in the domain of the product, and wherein the facet, the derivative keyword, and the plurality of user-submitted keywords are used to obtain a plurality of search terms, applying a backward filter to revise the plurality of search terms into a second search phrase, and identifying a previously submitted question based on the facet, the derivative keyword, and the plurality of user-submitted keywords; and display the second search phrase and the previously submitted question. 20. The computer readable medium of claim 17 , wherein the facet is the term that is contextually related to the plurality of user-submitted keywords when a regulation from a legal authority relates the facet to a keyword of the plurality of user-submitted keywords.