• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

Crediting Sources

Page history last edited by Chris Messina 14 years, 1 month ago

Description

A popular feature of activity stream aggregators (popular among tool makers as well!) is to provide credit to the tool, application, web service, or source that was used to generate an activity. 

Atom already features two attributes that would, at a glance, seem suited for this purpose — namely, "generator" and "source". However, according to the Atom spec, these attributes are intended to indicate the "agent used to generate a feed, for debugging and other purposes" and to provide a bucket in which to copy the elements from an original, source feed into an aggregated feed (relatively speaking). Therefore, Atom itself provides no mechanism to create the service or app that was used to generate the activity.

For the purpose described above and shown in the example below, we propose the use of the atom:generator element, on a per-entry basis:

<feed>
  <generator>Cliqset</generator>
  <entry>
    <generator uri="http://tweetie.com" version="1.2">Tweetie</generator>
    <atom:source>
      <title>Mart's Twitter feed</title>
      <link rel="alternate" type="text/html" href="/http://twitter.com/mart" />
      <generator uri="http://twitter.com">Twitter</generator>
    <atom:source> 
  </entry>
</feed>

Discussion

There are three particular roles that need to be considered in crediting sources:

  1. Original service providers with incoming APIs (i.e. Twitter.com, FriendFeed, etc)
  2. Aggregators of externally generated activities (like FriendFeed, Facebook, or Google Buzz)
  3. Syndicators or hubs (like ping.fm or Superfeedr)

[need to discuss the use of the "service provider" for each case]

See also the discussion on the mailing list.

Examples

Related work

Martin Atkins has proposed the crossposting extension in order to deal with the syndication of entries between social networks

and the service provider Atom extension to capture metadata about service providers.

Status

This document is a rough draft and should not be considered final.

The content of this document is subject to change.

Comments (2)

Monica Wilkinson said

at 10:49 pm on Mar 1, 2010

I still think atom:source makes sense for this http://tools.ietf.org/html/rfc4287#section-4.2.11 we should extend it atomSource =
element atom:source {
atomCommonAttributes,
(atomAuthor*
& atomCategory*
& atomContributor*
& atomGenerator?
& atomIcon?
& atomId?
& atomLink*
& atomLogo?
& atomRights?
& atomSubtitle?
& atomTitle?
& atomUpdated?
& extensionElement*)
}

Rob Dolin said

at 9:54 am on Mar 4, 2010

Since many services (Facebook, MySpace, Twitter, Windows Live) have a unique Application/Service ID for each of their partners, we should consider including an <atom:id> element within the <atom:source> or <activity:service> element.

You don't have permission to comment on this page.