SyncML

SyncML

SyncML (Synchronization Markup Language) is the former name (currently referred to as: Open Mobile Alliance Data Synchronization and Device Management) for a platform-independent information synchronization standard. Existing synchronization solutions have mostly been somewhat vendor-, application- or operating system specific. The purpose of SyncML is to change this by offering an open standard as a replacement. Several major companies such as Motorola, Nokia, Sony Ericsson, LG, IBM and Siemens AG already support SyncML in their products, although LG do not support it in all their phone models, preferring to use their own proprietary syncing protocols such as LG Sync SPP. Philippe Kahn was instrumental in the founding vision for synchronization with Starfish Software, later acquired by Motorola. The founding vision as expressed by Kahn was: "Global synchronization and integration of wireless and wireline devices".

SyncML is most commonly thought of as a method to synchronize contact and calendar information (personal information manager) between some type of handheld device and a computer (personal, or network-based service), such as between a mobile phone and a personal computer. The new version of the specification includes support for push email, providing a standard protocol alternative to proprietary solutions like BlackBerry.

Some products are now using SyncML for more general information synchronization purposes, such as to synchronize project task information across a distributed group of team members. SyncML can also be used as a base for backup solutions.

Problem areas

* A fairly intricate and vague protocol specification has meant that in general there are major interworking problems with different servers against different clients.
* In addition to the server address, user name and password, SyncML requires a database name to be specified for opening a connection. This database name is not standardized, and different servers use different names for the same service. E.g. one server might use card while another ./contacts for the contact database.
* Only the over-the-air (OTA) interface has any degree of standardization (e.g. OMA CP 1.1, OTA 7.0) whereas synchronization over a local interface is not standardized, and requires specific solution for any device, if available at all.