A computer system comprising: one or more computing devices configured to store a template repository; search templates stored in the template repository, each of the search templates comprising at least: field specification data that specifies fields for obtaining search input data, and query specification data that specifies how to generate structured queries based on the search input data obtained from one or more of the fields, wherein structured queries provide logical relationships between values within the query; a field generator, in the one or more computing devices, that is configured to generate fields indicated by the field specification data; a template loading module, coupled to the template repository, that is configured to identify one or more available search templates in the template repository; a user interface generator, coupled to the field generator and template loading module and in the one or more computing devices, that is configured to generate a user interface comprising template selection controls that are configured to select available search templates that are identified by the template loading module; wherein the template loading module is configured to receive template selection input via the template selection controls; wherein the user interface generator is configured to update the user interface to include particular search fields generated by the field generator for a particular search template selected by the template selection input; wherein the particular search template comprises data source specification data that specifies a plurality of searchable data sources; wherein the user interface generator is further configured to update the user interface to include data source selection controls (331, 332, 333) generated based on the data source specification data; wherein the user interface is configured to receive particular search input via the particular search fields, and to cause generation of a particular structured query based on the particular search input and on particular query specification data in the particular search template, receive user data source selection input via the data source selection controls that selects which one or more data sources in the plurality of searchable data sources specified by the template are to be searched, and request performing one or more searches, based on the particular structured query, against the selected one or more data sources by sending the structured query to one or more search modules. one or more computing devices configured to store a template repository; search templates stored in the template repository, each of the search templates comprising at least: field specification data that specifies fields for obtaining search input data, and query specification data that specifies how to generate structured queries based on the search input data obtained from one or more of the fields, wherein structured queries provide logical relationships between values within the query; a field generator, in the one or more computing devices, that is configured to generate fields indicated by the field specification data; a template loading module, coupled to the template repository, that is configured to identify one or more available search templates in the template repository; a user interface generator, coupled to the field generator and template loading module and in the one or more computing devices, that is configured to generate a user interface comprising template selection controls that are configured to select available search templates that are identified by the template loading module; wherein the template loading module is configured to receive template selection input via the template selection controls; wherein the user interface generator is configured to update the user interface to include particular search fields generated by the field generator for a particular search template selected by the template selection input; wherein the particular search template comprises data source specification data that specifies a plurality of searchable data sources; wherein the user interface generator is further configured to update the user interface to include data source selection controls (331, 332, 333) generated based on the data source specification data; wherein the user interface is configured to receive particular search input via the particular search fields, and to cause generation of a particular structured query based on the particular search input and on particular query specification data in the particular search template, receive user data source selection input via the data source selection controls that selects which one or more data sources in the plurality of searchable data sources specified by the template are to be searched, and request performing one or more searches, based on the particular structured query, against the selected one or more data sources by sending the structured query to one or more search modules.