1. A method of processing descriptive queries for data sources, comprising a set of data providers, each data provider distinguished by a type of data that the data provider provides and a set of attributes, each attribute with a unique name and a particular type of value, and the data providers being grouped into named provider kinds, wherein the data providers grouped into a same provider kind provide a same type of data and have a same set of attributes, the method comprising: obtaining a descriptive query, the descriptive query comprising the name of a provider kind and a specification of a mapping from an assignment of one or more values for one or more attributes of the data provider to one of a true value and a false value; and resolving the descriptive query, the resolving comprising determining data providers in the set of data providers that belong to the provider kind specified in the descriptive query and for which the mapping specification in the descriptive query maps the one or more values of the one or more attributes of the data provider to the true value, wherein the obtaining and resolving steps are performed at least in part by a processor coupled to a memory.