2.2.6.6.2 A-SQM Property

An A-SQM property is a key-value pair. Each key within the property set MUST be unique. The key-value is an SQM-enabled application-defined value. All key-value pairs are treated as null-terminated Unicode strings (16-bit character units).

The size of the property, in bytes, is computed: 0x8 + PropertyKeyLength + PropertyValueLength.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

PropertyKeyLength

PropertyValueLength

PropertyKey

...

PropertyValue

...

PropertyKeyLength (4 bytes): A 32-bit unsigned integer specifying the length of the PropertyKey, in bytes.

PropertyValueLength (4 bytes): A 32-bit unsigned integer specifying the length of the PropertyValue, in bytes.

PropertyKey (variable): An array of bytes specifying a null-terminated Unicode string (16-bit character units). Each PropertyKey within the PropertySet MUST be unique.

The PropertyKey is aligned on an 8-byte boundary so it is possible for the byte length to be larger than the null-terminated Unicode string requires.

PropertyValue (variable): An array of bytes specifying a null-terminated Unicode string (16-bit character units).

The PropertyValue is aligned on an 8-byte boundary so it is possible for the byte length to be larger than the null-terminated Unicode string requires.