[Standards] JID Escaping
mridul at sun.com
Mon Jul 30 18:57:55 UTC 2007
Peter Saint-Andre wrote:
> Chris Mullins wrote:
>> PSA Wrote:
>>> Perhaps it would help for us to define a "profile"
>>> of characters that we think are reasonable in
>>> native XMPP bare JIDs?
>> Down that route leads an insane array of international headaches! We may
>> be it right in English, but how about in Chinese? Or Arabic? Or Russian?
>> Hebrew? Korean? Esperanto?
> Well by "characters" I meant from among the short list of prohibited
> characters, that is:
> * U+0020 (" " or SP)
> * U+0022 (")
> * U+0026 (&)
> * U+0027 (')
> * U+002F (/)
> * U+003A (:)
> * U+003C (<)
> * U+003E (>)
> * U+0040 (@)
> Everything else is fair game!
IMO, (un)escaping should only be done by the entities which need to do
so - we should not mix a routing construct with display.
A client wishing to display contact should not use this xep - there are
better ways to obtain what is to be displayed, and unescaping node is
not the right way to go about showing 'who' the contact is.
The only real usecase I can see with this xep from clients point of view
is to construct a jid for authorization when the node would otherwise
contain prohibited characters.
For the server, this xep is required since its user population could
include users which have these prohibited characters in the uid .. and
so requires it to identify the backend user (hence need to standardize)
From a gateway's point of view - even if there is some other encoding
(urlencoding, etc), it does not matter - the rest of the system does not
depend on how the gateway encodes or decodes - ofcourse it helps to
standardize so that implementations dont end up with illegal nodes.
More information about the Standards