[standards-jig] JEP-0102

Evan Prodromou evan at prodromou.san-francisco.ca.us
Wed Jul 2 17:57:49 UTC 2003


>>>>> "RB" == Rachel Blackman <rcb at ceruleanstudios.com> writes:

    RB> That used to be the approach.  Look at JEP-0008, however.
    RB> Never advanced past 'EXPERIMENTAL' but so many people wanted
    RB> it that they all implemented it.  Now we have many clients
    RB> that do avatars, using this method...and then the JEP was
    RB> retracted.  There was rather a bit of kerfluffle on the lists
    RB> about that, because not everyone was happy with the decision
    RB> to retract 0008.

So, you know, if it were me, and I gave a crap about avatars, I'd put
up a Web page with a copy of the old protocol, and change the
XML namespace to something outside the "jabber:*" name hierarchy.

And, in the future, I'd make sure that any protocol I published had an
associated namespace that meant _this_ version of _this_ protocol,
which may or may not become "jabber:iq:whatever" or
"http://jabber.org/protocol/whatever".

We've got an excellent mechanism -- XML Namespaces -- for using
multiple protocols on the same network, without conflict. We've got
the infrastructure in place -- disco -- so that nodes on the Jabber
network don't have to guess what protocols other nodes can handle.

With that kind of great design, Jabber developers should _never_ have
to worry about forward or backward compatibility with a Jabber
protocol. If you see a protocol somewhere, you should be able to
implement it _right_now_, and never worry about it causing problems on
the network now or in the future. If you implement the protocol right,
it should just work.

We're not there yet, of course. There's unfortunately a tendency to
try to fit _everything_ into the "jabber:*" hierarchy, and to use the
same namespace for versions 0.0017 and 100.7 of a protocol
document. And to kind of worship the "jabber:*" hierarchy as the
be-all and end-all of Jabber protocols.

Rational management of a multiplicity of protocols is one of our
_major_ strengths as a network. The variety can be hard for a new
developer to grasp, but I think the work on XMPP and Jabber IM Basic
1.0 really fixes that.

Anyways, my two cents.

~ESP

-- 
Evan Prodromou
evan at prodromou.san-francisco.ca.us






More information about the Standards mailing list