[standards-jig] Checking for implementations

DJ Adams dj.adams at pobox.com
Tue Apr 16 13:56:52 UTC 2002


I was just catching up on the council mailing list, where I came across
an interesting snippet of conversation in the thread on JEP-0011 [1], 
when talking about the jabber:iq:browse JEP, and whether a new namespace
should be used for the slightly modified browse spec, so as not to 
break current usage.

The gist of it goes like this:

  "Do we use a new namespace or not? There are people currently using
  browse as it is now..."

  "Well, here's a short list: jabberd, JabberCOM, Winjab (etc)"

  "Here are some more implementations..."

Ok, but isn't this a little dangerous? There's no way that you can
build a complete list of 'implementations' of iq:browse, or anything
else for that matter. Consider Jabber libraries such as jabber.org's
libxode, jabberpy's xmlstream, or Jabber::Connection's NodeFactory::Node.
Each of them are intentionally low level enough to allow you to 
implement whatever you need to in the Jabber protocol, without having
to have 'baked-in' support in the library for a specific namespace. 
Programs using these libraries can also be using the current browse 
specification, but you'd never know by tracing a list like the one in
the above discussion, as these libraries explicitly and intentionally
don't offer the user high-level 'classes' that represent these namespaces.

I'm not trying to find fault with any of the council discussions here,
nor am I suggesting that there's a viable alternative; I'm just pointing
out that trying to build a finite list of 'implementations' is potentially
flawed and should be done with that caveat in mind :-)

(just thinking out loud here)

[1] http://mailman.jabber.org/pipermail/council/2002-April/000250.html

More information about the Standards mailing list