Patent ID: 8527440
Filing Date: 2013-09-03
Classification: G06Q

Abstract:
1. A computer-implemented method for maintaining consistency of a data structure, the method comprising: retrieving, at a computing device, the data structure from computer-readable memory, the data structure comprising a central model provided as a tuple that comprises a plurality of objects, a function that maps objects of the plurality of objects and attribute names to value assignments, and references between objects; receiving, at the computing device, first user input indicating a set of first changes that have been applied to a first local model and that are to be applied to the central model, each change in the set of first changes comprising one or more primitive operations, each primitive operation being executable to modify the central model; applying changes of the set of first changes to the central model to provide a first modified central model; receiving, at the computing device, second user input indicating a set of second changes that have been applied to a second local model and that are to be applied to the central model, each change in the set of second changes comprising one or more primitive operations, each primitive operation being executable to modify the central model; comparing the set of first changes to the set of second changes to identify a conflicting operation; applying a first set of one or more inverse operations to the first modified central model to provide a second modified central model, the one or more inverse operations corresponding to the conflicting operation and to one or more changes occurring after the conflicting operation; removing the conflicting operation from the set of first changes; defining a subset of first changes, the subset of first changes comprising the one or more changes occurring after the conflicting operation; reconciling one or more changes in the subset of first changes based on removal of the conflicting operation to provide a reconciled subset of first changes; defining an updated central model by applying changes of the reconciled subset of first changes to the second modified central model; storing the central updated model in computer-readable memory; and transmitting the first set of one or more inverse operations and the reconciled subset of first changes to modify the first local model and a second set of one or more inverse operations and a reconciled subset of second changes to modify the second local model such that they are consistent with the central model.