Hi Sergei!

Sergei Golovan schrieb:
Then I would like to ask who should escape JIDs and when? I don't
think that users will read XEP and escape desired characters.

Well escaping will mostly be done by transports. Consider the case of the well known msn transport: MSN has addresses of the form [EMAIL PROTECTED] as well. So the transport when it maps this address to a Jabber ID it has to do something with the @ sign in this address. Traditional transports did map it to the % character. While a transport using XEP-0106 would map it to: [EMAIL PROTECTED]

Clients will normally not unescape this address when displaying it. It would only be unescaped by the client, if this client would have a different interface for MSN messaging (a multi-IM like GUI hiding the details that all is routed over the Jabber network for example), where it will then just display the [EMAIL PROTECTED] again.

But no Jabber client always tried to display the JIDs generated by the msn transport as "[EMAIL PROTECTED]@msn.example.com".

One possible question is: user's client during registration process.
And user will be surprised looking at his new brand escaped JID.

Why would a client do escaping during registration? It should just not allow the user to enter characters not allowed in the node part of a JID when asking it which account it wants to create.

Remember that this XEP is not made to allow new characters to be used in user names, but to define a possible way to map addresses, that cannot be mapped directly. I gave you one example with XML, another one is in URLs when you add parameter values to it (http GET request).

http://example.com/script.php?param=user%40domain

You would also not expect your web browser to display this unescaped in the address line. This escaping is just there to be able to transport the @ character in value of a request.

The same way XEP-0106 is not about allowing nice new characters and displaying them animated in high color and blinking. It is just for the case a character has to be transported and cannot be used directly. Any use of escaping should be avoided when possible, you only do it if you have to.


Matthias

Reply via email to