[Standards] Entity Capabilities Woes

Pedro Melo melo at simplicidade.org
Sat Mar 17 14:23:09 UTC 2007


On Mar 17, 2007, at 9:19 AM, Daniel Noll wrote:

> On Saturday 17 March 2007 14:10, Peter Saint-Andre wrote:
>> Why??? Just make each ext mean the same thing and change the ext  
>> string
>> if the feature changes. Better to change the ext string than the node
>> string!
> I didn't like the idea of having to invent N ext strings for N  
> protocol-level
> features, basically.

I think that this might part of the problem. I think you are assuming  
that this ext strings have meaning or should be clear in some way.  
They do not. They are mere key parts that, when joined to a node, map  
to a set of protocol namespaces. There is no semantic meaning in the  
ext string.

> If you're going to keep the meaning of an ext string over multiple  
> versions of
> one application, you might as well share it across all applications  
> and save
> even more space in the cache.  Or at least that's how it seems from  
> here.

The ext itself does not have meaning. Its an opaque part of a key.

sharing ext strings between clients? Sure, go ahead: join with other  
client developers, decide which string ext maps to each set of  
protocol namespaces, and then you all use the same node.  Nothing  
basically wrong with that.

It doesn't even requires a central registry, just loose teams that  
decide to work together.

> It's true that we might have namespacing issues when two people  
> invent a
> custom extension at the same time, but we already have that problem  
> right now
> if two people develop a plugin for the same client and happen to  
> name their
> ext string the same.  Or is it possible to have multiple top-level cap
> containers so that plugins can namespace themselves away from the  
> namespace
> of the client's caps?

I don't think we can avoid a central registry. The thing is, you  
don't need a single central registry. You can have one for each  
client, or, if they agree, for a set of clientes. Each registry has  
his node string, and decides which ext maps to each protocol.

Best regards,
Pedro Melo
Blog: http://www.simplicidade.org/notes/
Jabber ID: melo at simplicidade.org
Use Jabber!

More information about the Standards mailing list