[JDEV] namespaces in jabber server architecture
Peter Saint-Andre
stpeter at jabber.org
Fri Jan 5 11:05:01 CST 2001
Hello Hitesh,
Jabber uses so many namespaces because the beauty of XML is that it is
extensible. We can quickly add functionality using namespaces to handle
specific kinds of information. For example, if you look at the
namespaces used by Jabber (e.g., see
http://www.saint-andre.com/jabber/whitepaper/whitepaper.html#xml-namespaces),
you'll see that we use namespaces to handle vCards, file transfers,
client version queries, authentication, user database searching, contast
list management, etc. Using namespaces for these kinds of data enables
us to better manage this data by keeping track of which elements and
attributes are related to each other. It also enables us to use the same
element name in different namespaces if necessary (e.g, <item/> in the
jabber:iq:roster namespace might mean something different from <item/>
in the jabber:x:roster namespace).
In general you can think of namespaces as a way to fully specify the
meaning of a piece of information. If I tell you that I live in
Manhattan, you might assume that I live in New York City. However, it
might be that I live in Manhattan, Kansas or even Manhattan, Montana. We
can think of the state here as something like a namespace which pins
down the specific location of the town.
Hope this helps.
Peter
--
Peter Saint-Andre
stpeter at jabber.org
> Shah Hitesh Bhavanji wrote:
>
> Hi,
> I was looking at the documents at www.jabber.org site. I could not
> understand why so many namespaces are used in 'jabber' Server
> Architecture. Does this help in optimising the parsing of XML
> Document? If it does, then how? Is there any other motivation for
> keeping so many namespaces? I am new to XML and not very comfortable
> with namespaces.
>
> Thanks and Regards,
> Hitesh.
>
More information about the JDev
mailing list