Excessivly verbose XMPP

The XMPP community often hears from mobile developers, that XMPP is to “chatty”. We do not think so really, but we had put much effort to make XMPP smaller - compression and EXI are very effective.

Today it struck me hard, why exactly they may think that XMPP is overloaded.

Do you know BlackBerry? These fine pieces of handy hardware apparently have an XMPP client.
Have you seen XMPP it produces? Let’s take a look at its presence packet:

<ns30:presence
xmlns:ns3='urn:ietf:params:xml:ns:xmpp-stanzas'
xmlns:ns4='urn:ietf:params:xml:ns:xmpp-streams'
xmlns:ns5='jabber:iq:auth'
xmlns:ns6='jabber:iq:roster'
xmlns:ns7='google:roster'
xmlns:ns8='jabber:iq:privacy'
xmlns:ns9='urn:ietf:params:xml:ns:xmpp-tls'
xmlns:ns10='urn:ietf:params:xml:ns:xmpp-sasl'
xmlns:ns11='urn:ietf:params:xml:ns:xmpp-bind'
xmlns:ns12='vcard-temp'
xmlns:ns13='vcard-temp:x:update'
xmlns:ns14='jabber:x:event'
xmlns:ns15='http://jabber.org/protocol/caps'
xmlns:ns16='http://jabber.org/protocol/muc#user'
xmlns:ns17='http://jabber.org/protocol/commands'
xmlns:ns18='google:nosave'
xmlns:ns19='google:subscribe'
xmlns:ns20='http://jabber.org/protocol/disco#info'
xmlns:ns21='http://jabber.org/protocol/disco#items'
xmlns:ns22='google:shared-status'
xmlns:ns23='google:jingleinfo'
xmlns:ns24='jabber:x:delay'
xmlns:ns25='google:domain'
xmlns:ns26='http://www.google.com/session'
xmlns:ns27='http://www.google.com/session/share'
xmlns:ns28='http://www.google.com/transport/p2p'
xmlns:ns29='urn:ietf:params:xml:ns:xmpp-session'
xmlns:ns30='http://jabber.org/protocol/chatstates'
type='unavailable' from='someone@googlemail.com/BlackBerry855C02AD' to='somenumber@gg.chrome.pl'/>

(Some spaces was replaced by newlines for readability.)

Well… Not much to comment, really…


About this entry