1. A method of making content searchable, comprising the steps of: generating, by one or more publishers, one or more search apps, each of the one or more search apps being generated by: defining one or more content sources; extracting one or more knowledge bases from each of the one or more content sources; defining on or more searchable categories of information associated with each of the one or more extracted knowledge bases; and indexing the information of the one or more content sources in accordance with the one or more searchable categories of information; accumulating the one or more search apps generated by the one or more publishers and storing the accumulated one or more search apps to a computer readable, non-transitory storage medium; providing a query entry system for receiving a user query; and answering the user query in accordance with the one or more search apps by determining one or more of the one or more data sources most likely to answer the user query, and performing the search in accordance with one or more of the one or more search apps retrieved from the computer readable, non-transitory storage medium associated with the determined one or more data sources.