Two computer systems in a network each have a local store that contains a copy
of a data item that is to be synchronized. One of the computer systems may be,
for example, a mobile device while the other may be a synchronization server. In
order to determine whether to synchronize a data item, and what synchronization
mechanism to use, one of the computer systems references a flexible set of rules
that may be influenced by instructions from a network administrator or a mobile
device user. The flexible set of rules takes into consideration the value of the
data, the cost associated with synchronization, the security of the synchronization
mechanisms, the security of the mobile device, as well as the location of the mobile
user in dictating whether and how to synchronize.