×

Method and system using reusable state information for synchronization and maintenance of data

  • US 7,730,026 B2
  • Filed: 07/01/2004
  • Issued: 06/01/2010
  • Est. Priority Date: 07/01/2004
  • Status: Active Grant
First Claim
Patent Images

1. A method of maintaining meta data regarding user activity for synchronization of related data items based on reusable state descriptions, the reusable state descriptions comprising indications of state transitions of one or more data items based on user actions affecting versions of the one or more data items and user action history reflecting user actions affecting versions of the one or more data items, the method comprising the steps of:

  • making a first meta data activity association between a first reusable state description and a related first version of a first data item stored on a first device, wherein the first reusable state description reflects a first state transition of the first version of the first data item, based on a user action affecting the first version of the first data item and comprises user action history reflecting the user action affecting the first version of the first data item;

    storing an indication of the first meta data activity association on the first device;

    making a second meta data activity association between the first reusable state description and a second data item stored on the first device, after the second data item has undergone the first state transition based on the user action affecting the second data item;

    storing an indication of the second meta data activity association on the first device;

    storing a second reusable state description on the first device, the second reusable state description being distinct from the first reusable state description and reflecting a state transition of a third data item and comprises user action history reflecting user action affecting the third data item;

    storing a third reusable state description on the first device, the third reusable state description being distinct from the first reusable state description and distinct from the second reusable state description, the third reusable state description reflecting a state transition of a fourth data item and comprises user action history reflecting user action affecting the fourth data item;

    using the first reusable state description, the second reusable state description, and the third reusable state description to facilitate synchronizing a synchronization data item stored on the first device;

    determining synchronization of the synchronization data item to be in conflict, and in the situation of conflict, determining whether one version of the synchronization data item is an ancestor of another version of the synchronization data item, wherein determining whether one version is an ancestor of another comprises;

    determining if the reusable state descriptions are the same for a local version of a synchronization first data item and a remote version of the synchronization data item,if the reusable state descriptions are the same then update is not required between the local version of the synchronization data item and the remote version of the synchronization data item;

    else determining from the reusable state descriptions if the local version of the synchronization data item is an ancestor of the remote version of the synchronization data item or if the remote version of the synchronization data item is an ancestor of the local version of the synchronization data item,if the local version of the synchronization data item is an ancestor of the remote version of the synchronization data item then determining that update between the local version of the synchronization data item and the remote version of the synchronization data item is required, andif the remote version of the synchronization data item is an ancestor of the local version of the synchronization data item then determining that update between the local version of the synchronization data item and the remote version of the synchronization data item is not required.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×