While I am reading amqp0-9-1.pdf, I get two questions about  AMQP protocol&#39;s marshalling/unmarshalling: <div><br><div>4.2.5.3 Strings: </div><div>Short strings, stored as an 8-bit unsigned integer length followed by zero or more octets of data. Short strings can carry up to 255 octets of UTF-8 data, but may not contain binary zero octets.</div>
<div><br></div><div>=======</div><div>Question: What does &quot;binary zero octets&quot; mean ? Why can they not be contained in shortstr ?</div><div>=======
</div><div><br></div><div>4.2.5.5 field Tables</div><div>... The name-value pairs are encoded as short string defining the name, and octet defining the values type and then the value itself.</div><div><br></div><div>=======
</div><div>Question: By the definition, there should be an octet used for defining the values type. So where can we know the detailed definition for each value type (e.g, 1 --&gt; octet, 2 -&gt; short, 3-&gt; long, 4 -&gt; longlong, 5 -&gt; shortstr, 6-&gt; longstr, 7-&gt;table, ...) ? I can not find the corresponding definition in AMQP&#39;s documents(amqp0-9-1.xml, amqp0-9-1.pdf)</div>
<div>=======
</div><div><br></div><div>Thanks in advance!</div></div>