SyncML
SyncML (ang. Synchronization Markup Language) – protokół synchronizacji danych stworzony przez organizację Open Mobile Alliance (OMA). Wiadomości SyncML przesyłane są w formacie XML.
SyncML definiuje aż 7 sposobów synchronizacji danych. Jeden z nich ma charakter roboczy i służy jedynie na potrzeby protokołu. Pozostałe zaś związane są z metodami organizacji informacji. Podstawowym modelem wymiany danych w SyncML jest synchronizacja dwukierunkowa, gdzie informacje są przesyłane pomiędzy klientem i serwerem. Istnieje też synchronizacja jednokierunkowa (dane przepływają albo od klienta do serwera albo od serwera do klienta), synchronizacja wolna (gdy nie można ustalić daty ostatniej aktualizacji danych, przesyła się wszystkie rekordy umieszczone w bazach danych urządzeń) oraz synchronizacja odświeżająca (wszystkie dane z jednego urządzenia przesyłane są do drugiego, a w odpowiedzi dostaje się potwierdzenie wykonania zadania).
SyncML może funkcjonować w środowisku przewodowym oraz bezprzewodowym, radiowym lub w podczerwieni. Zastosowanie protokołu SyncML pozwala na komunikację między urządzeniami komórkowymi i terminalami przenośnymi typu notebooki, komputery PC, palmtopy, a także pomiędzy urządzeniami stacjonarnymi, które posiadają moduł Bluetooth. SyncML ułatwia także komunikację między terminalami a oddalonym serwerem przy pomocy bezprzewodowej technologii WAP i GSM.
SyncML znalazł olbrzymie zastosowanie w telefonii komórkowej, ale także w oprogramowaniu komputerów stacjonarnych (tj. jak baza danych IBM DB2, systemy Pocket PC i Palm OS, a nawet MS Outlook). Wiele firm pracuje nad jego rozwojem, jednak producenci telefonów są najaktywniejsi.