Patent ID: 7756825

Claim:
A method for synchronizing data comprising the steps of: providing a partial participant, the partial participant having a data store and a knowledge store, the data store storing a set of data retrieved during a synchronization process with a first full participant, the knowledge store storing a set of knowledge about the data in the data store, wherein the set of knowledge represents changes to the data that the first full participant is aware of, wherein the partial participant does not understand the set of knowledge, and wherein the partial participant is responsible for tracking what changes the partial participant makes to the set of data in the data store, wherein the knowledge is stored as a vector pair that represents a participant identifier and a sequence identifier of a last change the partial participant has seen for a device associated with the participant identifier; receiving a request from a user of the partial participant to change a particular record in the set of data in the data store; and updating the particular record in the data store upon receiving the request from the user, wherein the updating includes storing information identifying a source of the change as the partial participant.