Next, the user's client computes the SHA1 hash of the avatar image data itself (not the base64-encoded version) in accordance with &rfc3174;. This hash is then included in the user's presence information as the XML character data of the <photo/> child of an &X; element qualified by the 'vcard-temp:x:update' namespace, as shown in the following example:
+Next, the user's client computes the SHA1 hash of the avatar image data itself (not the base64-encoded version) in accordance with &rfc3174;. This hash is then included in the user's presence information. This is done by putting the hash encoded as hexadecimal digits as the XML character data of the <photo/> child of an &X; element qualified by the 'vcard-temp:x:update' namespace, as shown in the following example:
Note that while XML Schema defines the canonical representation of hexadecimal values to be upper-case, the historical use throughout the XMPP ecosystem has established lower-case use. Entities need to be able to process both and may prefer to emit lower-case for compatibility.
The user's server then broadcasts that presence information to all contacts who are subscribed to the user's presence information.