1. A method of issuing a query comprising at least one data source reference to a data source using a set of data source mappings and a set of query operators comprising at least one single-item query operator and at least one multiple-item query operator, the method comprising: transforming the query into an expression tree; identifying the query as one of a single-item query and a multiple-item query; upon identifying a single-item query, selecting at least one single-item query operator applying the query to a single item of the data source; upon identifying a multiple-item query, selecting at least one multiple-item query operator applying the query to at least two items of the data source; invoking selected query operators to: map the data source references of the expression tree to respective aspects of the data source using the data source mappings, and translate the expression tree into a translated query in a query language; and sending the translated query to the data source.