1. A method of processing a continuous query on a stored data set when pertinent data in the stored data set is added or modified, the method including the steps of: receiving a query designated as a continuous query and storing a query model representing that query containing one or more atoms which are individual queries on the data set; when new data is added to the data set, or the data set is modified, checking the new or modified data against the atoms of the stored query model to determine if any part of the new or modified data matches an atom of the stored query model; if, when checking the new or modified data against the atoms of the stored query model, a match is found, checking whether the new or modified data matches the stored query model as a whole; if, when checking whether the new or modified data matches the stored query model as a whole, a match is found with the model as a whole, assigning any fixed values in the new or modified data that correspond to free variables in the query model to those free variables; in response to assigning any fixed values in the new or modified data that correspond to free variables in the query model to those free variables, processing the query resulting from said assignment on the stored data set; and in response to processing the query resulting from said assignment on the stored data set, returning the result of the query.