icq and jabber both offer web based messengers already which allow for user lists to become roaming profiles similar to MSN's messenger
In this instance XML can be used as the message wrapper, allowing a gateway to interpret your msg ( with xsl / xslt ) for any destination since other im systems may use proprietry formats.
Also it allows the message to be layed out, transmitted and recieved in an expected format. i.e.
<message>
<to uin=id_num address=ip_num gateway=icq />
<from uin=id_num address=ip_num gateway=icq />
<body>
this is where your message would be including possible formatting using xhtml standards
</body>
</message>
the above example is a very simple idea of how xml could be used to wrap a message.