Autodiscovery


ATOM feeds (RFC 4287) are an alternative representation of content flowing on a page — typically reverse-chronological posts of some sort — like blog posts. Autodiscovery of these feeds is made possible through a <link> tag in the head of the HTML document:

<link rel="alternate" type="application/atom+xml" href="/http://www.example.com/xml/index.atom" />

 

JSON feeds are discoverable in a similar mechanism:

 

<link rel="alternate" type="application/stream+json" href="/http://www.example.com/json/index.json" />

 

options

To aid in discovery of activity streams, options have been presented:

  1. <link rel="activitystream" type="application/atom+xml" href="/http://www.example.com/xml/index.atom" /> or <link rel="alternate activitystream" type="application/atom+xml" href="/http://www.example.com/xml/index.atom" />
  2. <link rel="alternate" type="application/atom+xml" href="/http://www.example.com/xml/index.atom" class="activitystream" />
  3. or just keep ATOM discovery as-is. Assume any ATOM feed may be an Activity Stream. why not?

 

Though it is possible to point to a stream for comments on a given blog post, let's say, there's no way to indicate that it's actually a comment feed (except in the human-friendly title): <link rel="alternate" type="application/atom+xml" href="/http://www.example.com/xml/comments.atom" title="Recent comments feed" />

 

On the contrary, if a post permalink page links to a feed with rel="alternate", per the definition of 'alternate', that feed can only represent what's on the *page* (e.g. a comment feed).

 

A link from a post permalink *page* to a feed for the whole *site* would have to be marked up with something like rel="home alternate". See proposal: http://microformats.org/wiki/rel-home#use_with_rel-alternate

 

It may not be necessary to call out the activitystream type of feed, but seems useful to make it easier to provide a hint to aggregators that a particular feed can be consumed as an activity stream.

This was also discussed on the mailing list. And also discussed recently in the #microformats IRC channel.

 

see also