//everything is wrapped in root xml element called NavMobileSync, having required
attribute salesmancode, which contains the name of the user, who is generating or receiving
<NavMobileSync salesmancode="myUser">
//The NavMobileSync xml element must contain one or more table xml elements.
//Every table element represent a table/entity which is begin synchronized and must have required attribute tablename, which contains the name of the
//entity which is being synchronized. The receiving party shall decide to which native entity/table
//it correspond. The tablename must be unique in the xml format of the sync packet
<NavMobileSync salesmancode="myUser">
<table tablename="MyTable">
//every table xml element must have one or more r xml elements, which represent the records
//being synchronized for each entity/table
//The r element must have attribute status, where it may have on of the following values:
- insert - indicates that the record/object was inserted in the source system
- update - indicates that the record/object was updated in the source system
- delete - indicates that the record/object was deleted from the source system
<NavMobileSync salesmancode="myUser">
<table tablename="MyTable">
//Each r xml element must contain one or more xml elements, where each element represents
//the value for entity/table field. Please note that if a field has value of null/undefined
//it must not be included in the sync packet
<NavMobileSync salesmancode="myUser">
<table tablename="MyTable">
<DMS_ROWID>....</DMS_ROWID>
<DMS_ROWID>...</DMS_ROWID>
//Dynamics Mobile entities has several built-in properties for each entity, which means that
//the following tags will be presented in the sync packet:
DMS_ROWID - unique primary key identifier of the record.
state - the state of the record. 1 - inserted, 2 - updated, 3 - deleted