[jdev] Proposal for a solution to transport rosters

maqi at jabberstudio.org maqi at jabberstudio.org
Sat Sep 4 04:44:16 CDT 2004


On Sat, 4 Sep 2004, Bart van Bragt wrote:

> As far as I can see James solution doesn't break anything if
> clients/transports/servers don't implement his solution, if a transport
> and a client have implemented his (and Tijns) changes then this will
> immediately improve the enduser experience a _lot_ and this can happen
> within a few months... When a better solution arrives this can
> effortlessly replace/supersede James' 'workaround'.

I second.

> In short: Hip, hip, hurray for James' proposal and lets start thinking
> about a better roster management schema. IMO there are a few more things
> to be improved in the roster department, for instance I really don't
> like the fact that I have all my 300 contacts available when I'm using
> Jabber on my Palm over a GSM connection. Shared groups would be great,

Just an idea, one could get VERY much functionality by providing a RDF
representation of the roster. Of course, this needs heavy work on the
server and client side, but I think it's worth the hassle. I'll explain:

RDF is basically a way of describing graphs (that nodes-and-edges thing
;-) in XML. Imagine the nodes being URIs/JIDs and the edges being
relations such as "is-subscribed-to", "has-access-to-roster-of",
"is-member-of-group", or "is-present-in-roster". Then we can easily say

"(me) is-subscribed-to a at jabber.org"
"(me) is-subscribed-to aim.jabber.org"
"aim.jabber.org has-access-to-roster-of (me)"
"aim.jabber.org is-present-in-roster (PalmRoster)"

without having to invent much custom XML. Also, as RDF parsers and query
engines are already available, for example queries such as "Retrieve
roster: I only want items with satisfy [is-present-in-roster
(PalmRoster)]" are trivial. We don't need to invent another query
language.

There are also many other kinds of server-side XML/RDF storage along with
query engines. For example, this can be used for server-side message log
storage without *any* need for complex server-side support as RDF storage
and query engines are already available. Or imagine FOAF RDF
(http://www.foaf-project.org/) stored in the user's personal RDF
repository on his Jabber server. :-)

That's just an idea and certainly needs some more thoughts. However, this
seems to be much more powerful but relatively cheap with regards to the
need for server-side code in the long run.

Want to contribute?
http://www.jabber.org/wiki/index.php/ServerSideDataStorage
http://www.jabber.org/wiki/index.php/Shared%20Roster%20Groups

Regards



More information about the JDev mailing list