In the same way that the DS and DM specifications are based on a common representation and protocol, SyncML4J is built on common components for protocol handling and transport. All mandatory wire commands are supported, as are Basic and MD5 authentication and HMAC message integrity.
The DM device tree represents all manageable settings on the device. The DM specification defines how the tree is used to maintain account information for the DM agent. SyncML4J uses a similar approach to maintain account information for the DS agent; it also uses the tree to maintain a list of data sources capable of interacting with the DS agent. In this way, the developer has the option to manage the client.
The applications are loosely coupled to the agents, so there is no dependency on a particular user interface (UI) library within the base framework. A variety of UIs can be used to build an application, sharing the framework sync code.
Parent topic: Understanding SyncML development: XPD621