wbM2MXML Binary Encoding Specification - Draft

1. About This Document

Revision History

Releases of this document will be versioned using the following scheme: major.minor.revision with the following definitions:

major: A large change to the protocol, possibly breaking backwards compatibility.

minor: A small change to the protocol, preserving backward compatibility.

revision: Changes made to the document only, no changes to the actual protocol.

This document has the following release history:
DateDescriptionAuthor Version
  Initial Release Byron K. Appelt  

2. Protocol Specification

M2MXML may be encoded using a compact binary representation based upon the wireless binary XML format (wbXML). This format maintains the overall structure of the XML, but uses single byte binary tokens to represent tags, attributes and common attribute values.

2.1 Tag Tokens

This specification defines a set of simgle-byte tokens corresponding to all of the tags found in M2MXML. All of these tokens are defined within code page zero. The following table lists the tokens, all numbers are in hexadecimal.

Tag Name Token
M2MXML
05
Percept
06
PerceptBundle
07
Command
08
Response
09
Exception
0A
Property
0B

2.2 Attribute Tokens

This specification defines a set of single-byte tokens represeting the attribute names and common values used in M2MXML. All of these tokens are defined in code page zero. The following two tables list the attribute names and values. All numbers are in hexadecimal.

 

Attribute Name Token
ver 05
address 06
perceptType 07
timestamp 08
entryType 09
value 0A
seq 0B
note 0C
name 0D
TTL 0E
resultCode 0F
message 10
exceptionCode 11
Attribute Value Token
requestPercept
85
turnOn
86
turnOff
87
setStringOutput
88
setAnalogOutput
89
reboot
8A
queryConfiguration
8B
setConfiguration
8C
reportConfig
8D
analog
8E
digital
8F
location
90
string
91
complex
92
1.0
93
1.1
94