[Standards] XEP-0277 "Microblogging over XMPP" and the Atom data format
Guus der Kinderen
guus.der.kinderen at gmail.com
Sun May 16 13:03:11 UTC 2010
Recently, I have been working on an XMPP gateway (XEP-0100 "Gateway
Interaction" style) that exposes Twitter functionality in a way compliant
with XEP-0277 "Microblogging over XMPP". While coding, a number of questions
and remarks related to this last XEP popped up.
The XEP specifies that pubsub to publish and receive microblog posts (the
XEP does indicate that for posting, an alternative interface can be used).
The pubsub items used in the examples are using an Atom-based data format.
My first question: the XEP does not specify explicitly that the Atom data
format MUST/SHOULD be used. Can other formats be used as well? I feel that
there is room for interpretation here. This can lead to implementations that
are XEP compliant, but are not compatible with other implementations. Should
the Microblogging XEP specify more exact what data format should be used?
Why was the Atom-based data format chosen? In my opinion, there are a number
of characteristics that do not make it "fit" to the purpose:
Atom requires a title for each entry. In the context of a microblog, this
requirement doesn't make much sense to me. The examples in the XEP use the
atom:title element to hold the text of the post. I would argue that this is
done more appropriately in a atom:content element instead.
Atom requires a unique identifier (atom:id) for each entry. Is this
appropriate in a use case where content is being created by a client (as
opposed to created content being distributed by the service provider)? In my
gateway implementation, I can't think of a unique identifier that I can use
when a client is generating a microblog post on the legacy service. Instead,
the unique identifier is generated by the legacy domain. I feel that this
argument holds true, even in a more generic context than my Legacy Gateway
implementation: it is not uncommon for service providers to generate and add
a unique identifier to an object created as a result of a user request. By
using the Atom data format, the XEP is less flexible.
Atom requires an author for each entry. This appears redundant to me - the
pep service itself is related to the author, and posts on a microblog are
not likely to be authored by someone else than the owner of the blog.
Nonetheless, Atom spec requires this element to exist.
That's what I ran into so far. I'd be happy to receive your insights,
comments and remarks.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Standards