[Standards] Stanza namespaces

Kevin Smith kevin at kismith.co.uk
Tue Apr 27 20:30:56 UTC 2010


On Tue, Apr 27, 2010 at 9:18 PM, Peter Saint-Andre <stpeter at stpeter.im> wrote:
> On 4/27/10 3:00 AM, Dave Cridland wrote:
>> In XMPP, each stream has a default namespace. Stanzas are the elements
>> with local-name "message", "presence", or "iq", qualified by that
>> default namespace. Streams also have other, specifically documented,
>> top-level elements, such as those for SASL, or TLS negotiation - these
>> being explicitly signalled as being acceptable. Other unknown top-level
>> elements will cause the connection to be dropped.
>
> Sometime yesterday (before you sent your message to the list) I wrote
> the following text in my working copy of 3920bis:
>
> ***
>
> 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.
/K



More information about the Standards mailing list