There is an increasing amount of data in the world that is distributed over many machines. Some of this data may be relatively static. However, certain types of data may be changing frequently. Client applications may be interested in changes that are made to a small subset of the data. Notification of such changes allows a client to be made aware of changes that are made by another client appl...