[Standards] Stanza namespaces

Artur Hefczyc artur.hefczyc at tigase.org
Tue Apr 27 20:41:31 UTC 2010

>>> Note: Because a client sends stanzas over a stream whose default
>>> namespace is 'jabber:client', if the server to which the client is
>>> connected needs to route a client-generated stanza to another server
>>> then it MUST "re-scope" the stanza so that its default namespace is
>>> 'jabber:server' (i.e., it MUST NOT send a stanza qualified by the
>>> 'jabber:client' namespace over a stream whose default namespace is
>>> 'jabber:server'). Similarly, a routing server MUST "re-scope" a stanza
>>> received over a server-to-server stream (whose default namespace is
>>> 'jabber:server') so that the stanza is qualified by the 'jabber:client'
>>> namespace before sending it over a client-to-server stream (whose
>>> default namespace is 'jabber:client').
>>> ***
>>> That might not be precise enough, and it leaves out the error handling.
>> That seems fairly definitive and, as Dave mentions, the error handling
>> is already defined elsewhere.
> It's definitive, but it might not be correct. Do we need to be so strict
> about this?

That's the question. Especially that it also applies to the external  
protocol - XEP-0114 which also uses separate namespaces (2!!) for sending
Even though XEP-0225 seems to be re-using jabber:client namespace, which in
my opinion is move in a good direction, it needs some corrections too.
As I mentioned, it doesn't have a separate namespace for the handshaking
packets, hence causing conflicts if you want to put c2s connection manager
behind the XEP-0225 component.


More information about the Standards mailing list