On Mon May 16 17:05:51 2011, Joe Hildebrand wrote:
On 5/12/11 12:22 AM, "Mark Rejhon" <[email protected]> wrote:
> -- Using numbered sufix "urn:xmpp:rtt:0"
> ADVANTAGE: Versioning by incrementing the final number;
> DISADVANTAGE: Many parser libraries make it difficult to provide
> forward/backward compatibility because they look for an exact
xmlns value.
> (Example: Smack Java library). I.e. an application would only
work with a
> specific exact 'xmlns'
That is a feature. If the version number gets incremented, your
implementation will need to process the protocols independently if
you want
to have both active at the same time. If you're able to share code
between
them, that's an implementation detail, but as far as XMPP is
concerned, they
are effectively two completely separate protocol extensions.
Right - you can (and should, where possible) avoid incrementing the
version number, such as when an update is a superset of the original
protocol, or unchanged.
But when required syntax or behaviour changes to the point where
interoperability would fail, you can avoid tricky situations by
minting a new namespace from within a parent metanamespace[1], and so
avoid any experimental protocol leakage or "deployed base" issues
from having any serious effects.
Dave.
[1] - Yes, I did just make that up. I can only apologise.
--
Dave Cridland - mailto:[email protected] - xmpp:[email protected]
- acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
- http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade