[standards-jig] Essence of Jabber
dizzyd at jabber.org
Fri Mar 8 14:47:23 UTC 2002
On 3/8/02 2:00 AM, "Mike Lin" <mikelin at MIT.EDU> wrote:
> While we're on this topic, can someone explain, clearly, succinctly, and
> with references to the XML Namespaces recommendation, precisely what, if
> anything, makes the Jabber XML stream noncompliant with XML Namespaces?
> We should really write something about this as an informational JEP,
> since the issue comes up so much.
Well..I'll make a go at it. :) I'm in the process of writing a new client
that has a fully namespace capable DOM...
To begin with, when you open a connection to Jabber, you typically send:
<stream:stream xmlns:stream='http://etherx.jabber.org' xmlns='jabber...
Obviously, the basic syntax is namespace safe -- but server-side the actual
code doesn't actually _understand_ namespaces. So, let's say that you wanted
to have a different namespace as the default namespace (i.e. Instead of
jabber:client). To do this you would send something like...
<stream xmlns='http://etherx.jabber.org/streams' xmlns:xn0='jabber:client...
Now, whenever you send a packet in the jabber:client namespace you could
<xn0:message xn0:to='...' ...
And that would be perfectly valid from a namespace standpoint. Ideally, the
server should still understand that you're sending a jabber:client message
and be able to deal with that message appropriately.
In summary, while Jabber's protocol is namespace correct, the actual server
implementation doesn't make an attempt to parse data in a namespace aware
That's just a simple example. Let's start there :)
More information about the Standards