a/. Cỏc phần tử chứa thụng điệp
Cỏc phần tử chứa thụng điệp (Message Container Elements) phục vụ cho việc đúng gúi cỏc thụng điệp trao đổi. Cú 3 phần tử đƣợc sử dụng để phõn tỏch phần đầu thụng điệp, dữ liệu thụng điệp hoặc dữ liệu đồng bộ [6].
* SyncML:
Bộ chứa thụng điệp SyncML là phần tử gốc của định nghĩa đặc tả DTD SyncML. Nú gồm hai phần tử SyncHdr và SyncBody.
* SyncHdr:
Chứa thụng tin về thụng điệp, tƣơng tự nhƣ địa chỉ trờn phong bỡ thƣ. SyncHdr chứa thụng tin nhƣ: nơi thụng điệp định chuyển tới (target), thụng điệp chuyển từ nơi nào (source), phiờn bản của giao thức đặc tả, và giao thức đồng bộ đang sử dụng. Thờm vào đú, SyncHdr chứa thụng tin mụ tả (meta) về khả năng của thiết bị, cũng nhƣ kớch thƣớc lớn nhất của thụng điệp cho phộp.
* SyncBody:
Đõy là thõn của thụng điệp SyncML. SyncBody chứa một tập cỏc cõu lệnh và cỏc phần tử quản lý giao thức.
b/. Cỏc phần tử quản lý giao thức
Trạng thỏi: đƣợc sử dụng để biểu diễn kết quả của cõu lệnh. Mỗi cõu lệnh cú một trạng thỏi, và chỳng phải cú trỡnh tự giống nhƣ cỏc cõu lệnh trong SyncML yờu cầu.
c/. Cỏc phần tử mụ tả dữ liệu
Data: là dữ liệu SyncML
Item: chứa dữ liệu
Meta: đƣợc sử dụng để xỏc định thụng tin mụ tả về phần tử cha.
d/. Cỏc phần tử cõu lệnh:
Cỏc cõu lờnh đƣợc sử dụng để tạo ra cỏc tỏc vụ trờn phần nhận thụng điệp SyncML. Phần tử chứa cõu lệnh phần lớn đều chứa dữ liệu, hoặc là chứa hạn chế cõu lệnh, hoặc truyền dữ liệu (payload). Dữ liệu đụi khi là sự liờn lạc, hoặc sự kiện, hoặc thụng tin email. Cỏc phần tử cõu lệnh cú thể đƣợc chia thành 3 nhúm cục bộ:
Cỏc phần tử cõu lệnh dữ liệu
Thờm (add): Thờm một hoặc nhiều dữ liệu vào kho dữ liệu
Sao chộp (copy): tạo một bản sao chộp của dữ liệu đó cú
Xúa (delete): loại bỏ phần tử khỏi kho dữ liệu
Get: lấy một phần tử, thụng tin thiết bị
Ánh xạ (map): đƣợc sử dụng bởi mỏy khỏch để thụng bỏo cho mỏy chủ về một kho dữ liệu, mà đó cú phần tử mới đƣợc tạo bởi cõu lệnh thờm.
Put: sẽ gửi một phần tử, thụng tin thiết bị
Thay thế (replace): sử dụng để cập nhật phần tử đó cú với thụng tin mới.
Cỏc phần tử cõu lệnh kho dữ liệu
Cảnh bỏo (alert)
Kết quả (results)
Tỡm kiếm (search): tỡm kiếm trong mỗi kho dữ liệu
Đồng bộ (Sync): là cõu lệnh đƣợc sử dụng để đồng bộ 2 kho dữ liệu
Cỏc phần tử cõu lệnh tiến trỡnh xử lý
Nguyờn tử (atomic): cỏc yờu cầu mà tất cả cỏc cõu lệnh con đƣợc thực hiện.
Liờn tục (sequence): yờu cầu cỏc cõu lệnh đƣợc thực hiện theo trỡnh tự xuất hiện.
e/. Cỏc phần tử chung
Cỏc phần tử chung xuất hiện nhƣ là cỏc phần tử con trong hầu hết cỏc cõu lệnh và cỏc phần tử SyncHdr nờn chỳng cũng đƣợc đặt tờn. Cỏc phần tử này sử dụng để cung cấp cỏc chức năng chung và trợ giỳp làm giảm số lƣợng cỏc luật phõn tớch cỳ phỏp cỏ biệt. [6]
Chal (short for Challenge): đƣợc sử dụng cho mục đớch xỏc thực.
Cmd: Chứa tờn ASCII của cõu lệnh
CmdID: chứa định danh của cõu lệnh trong thụng điệp SyncML
CmdRef: là định danh của cõu lệnh đang đƣợc tham chiếu trong trạng thỏi.
Cred: chứa tập cỏc ủy nhiệm (credentials) theo định dạng xỏc định. SyncML chỉ yờu cầu hỗ trợ định dạng cơ bản hoặc MD5
Final: là cờ chỉ định kết thỳc một gúi dữ liệu
Lang: cho phộp yờu cầu ngụn ngữ cho quỏ trỡnh truyền tải (payload)
LocName: chứa tờn hiển thị đọc đƣợc đối với địa chỉ
LocURI: chứa địa chỉ xỏc định
MoreData: thụng bỏo cho ngƣời nhận biết dữ liệu vẫn chƣa đƣợc gửi hết.
MsgID: định danh của thụng điệp hiện tại
MsgRef: định danh của thụng điệp đang đƣợc tham chiếu
NoResp: cờ xỏc định khụng cú phản hồi cho cõu lệnh trƣớc đú
NoResults: cờ chỉ định kết quả từ cõu lệnh Get, Search phải đƣợc lƣu trữ trong vựng đệm phục vụ cho cõu lệnh sau.
NumberOfChanges: chỉ đƣợc sử dụng trong cõu lệnh Sync, thụng bỏo cho ngƣời nhận biết cú bao nhiờu phần tử đƣợc gửi từ một nguồn xỏc định.
RespURI: là URI sử dụng để phản hồi cho thụng điệp hiện tại
SessionID: định danh của phiờn làm việc hiện tại
Source: chỉ định nguồn định tuyến hoặc thụng tin ỏnh xạ.
Target: chỉ định đớch ỏnh xạ hoặc định tuyến
VerDTD: chỉ định phiờn bản của giao thức đặc tả SyncML