Synchronizing data between disparate schemas using composite version
First Claim
Patent Images
1. A method of synchronizing data between a repository and handheld devices, comprising the steps of, in a synchronization server:
- receiving repository data objects;
maintaining a repository version identifier for each repository data object;
converting the repository data objects into interim data objects and then converting the interim data objects into handheld data objects suitable for sending to the handheld devices;
maintaining a version identifier for each converted handheld data object, the version identifiers being derived from the repository version identifiers of the repository data objects from which the handheld data objects were converted;
sending handheld data objects to the handheld devices;
maintaining a handheld version identifier for each handheld data object sent to a handheld device;
receiving a synchronization request on the synchronization server;
identifying one or more handheld data objects and corresponding repository data objects in the repository for synchronization;
checking version identifiers of the data objects to be synchronized;
determining handheld data objects that need to be updated based on a comparison of the version identifiers;
sending the determined handheld data objects, updated from repository data objects, to the handheld device; and
updating the version identifiers of the updated handheld data objects.
7 Assignments
0 Petitions
Accused Products
Abstract
In synchronizing a plurality of handheld devices with a repository, versions of the information in the repository and on the handheld devices are tracked and used to determine the need for updating information in the repository or the handheld device. Data objects are converted from repository data objects into handheld data objects for downloading to the handheld and vice versa for the uploading of data to the repository.
65 Citations
12 Claims
-
1. A method of synchronizing data between a repository and handheld devices, comprising the steps of, in a synchronization server:
-
receiving repository data objects; maintaining a repository version identifier for each repository data object; converting the repository data objects into interim data objects and then converting the interim data objects into handheld data objects suitable for sending to the handheld devices; maintaining a version identifier for each converted handheld data object, the version identifiers being derived from the repository version identifiers of the repository data objects from which the handheld data objects were converted; sending handheld data objects to the handheld devices; maintaining a handheld version identifier for each handheld data object sent to a handheld device; receiving a synchronization request on the synchronization server;
identifying one or more handheld data objects and corresponding repository data objects in the repository for synchronization;checking version identifiers of the data objects to be synchronized;
determining handheld data objects that need to be updated based on a comparison of the version identifiers;sending the determined handheld data objects, updated from repository data objects, to the handheld device; and updating the version identifiers of the updated handheld data objects. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A synchronization server for synchronizing data front plural databases to plural handheld devices comprising:
-
repository data objects obtained from the plural databases; handheld data objects converted from the repository data objects; data associating version identifiers with repository data objects and version identifiers with the handheld data objects and mapping repository data objects to handheld data objects, the handheld data object version identifiers being derived from the repository data object version identifiers; a program for synchronizing repository data objects with data objects stored on handheld devices including the steps of; identifying repository data objects to be seat to a handheld device; comparing version identifiers of the handheld data objects with version identifiers of the repository data objects from which the handheld data objects were derived to determine whether the handheld data objects need to be updated; converting repository data objects into interim data objects and then converting the interim data objects into updated handheld data objects; and transferring updated handheld data objects, converted from repository data objects, to a handheld device when it is determined that the handheld data objects need to be updated.
-
-
9. The synchronization server as claimed on 8 wherein handheld data objects derived from the repository data objects include handheld data objects derived from plural repository data objects.
-
10. The synchronization server as claimed on 8 wherein the version identifiers are maintained in tables that map repository data objects to handheld data objects.
-
11. The synchronization server as claimed on 8 wherein the repository data objects are only converted to handheld data objects if it is determined that the handheld data objects need to be updated after a synchronization request.
-
12. The synchronization server as claimed on 8 that maintains a handheld version identifier for each handheld data object sent to a handheld device.
Specification