XMPP Extensions Editor wrote:
> Title: Commenting
> Abstract: This specification defines a method for commenting.
> URL: http://www.xmpp.org/extensions/inbox/commenting.html

Hi

It's nice that more people think about this aspect. I have two
objections with the proposed mechanism:

1) The specification imposes a naming scheme on Publish-Subscribe nodes.
Until now, XEP-0060 users could have assumed them to be rather
free-form.

There is a general question on how a particlar content model is
designed. First, there is the "Twitter" model: posts are aggregated in
per-user nodes and reference posts in other nodes.

On the other hand, services such as Facebook, Google+ and buddycloud
aggregate comments in the same context of the referred post. That could
mean, the whole conversation goes into a single Publish-Subscribe node.
This is what we at buddycloud do. A separate node for comments is
specified by the new Commenting XEP.

Because XEP-0060's access and publish models are flexible to allow that,
and XMPP traffic always identifies the origin of a request, the second
model can be used as well.

It might be required that a post of a non-publisher can only be a
comment to an item that actually exists. This rule must then be enforced
by the Publish-Subscribe service.


2) Discussion flow modelling has been approached by The Open Web[tm] as
well: ATOM Threading Extensions[1] and the Salmon protocol[2].

ATOM Threading Extensions indicate what parent item a comment is
referring to. They can be applied to Publish-Subscribe content nicely,
if we had a URI scheme for referencing individual items, such as:

<thr:in-reply-to
  xmlns:thr="http://purl.org/syndication/thread/1.0";
  ref="0f72afbe-a9d4-11e0-b0bc-0024bed71c0a"
  type="application/atom+xml"
  
href="xmpp:comments.example.com?pubsub;node=coffeetalk/comments;item=0f72afbe-a9d4-11e0-b0bc-0024bed71c0a"
  />

Such referencing is entirely missing from the proposed specification.

The Salmon protocol, proposed by Google and used in OStatus, allows any
resource to receive comments by indicating an endpoint URL without
mandatory naming schemes. For ATOM content, this is as simple as
<link rel="salmon" href="..."/>.

They do not call it only "comments" because, what can be seen from the
variety of ActivityStreams verbs, there are more than just comments on
social networking services: likes, reposts, rsvps, follows, invites,
tags et cetera. This is just nomenclature; /commenting/ names the
category well enough.


Stephan Maka

[1] http://tools.ietf.org/html/rfc4685
[2] http://www.salmon-protocol.org/

Reply via email to