h-feed: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(has had stable consensus on properties and content for a while, time to make this a formal microformats draft, note implementations Shrewdness and Bridgy)
(more spec details)
Line 1: Line 1:
{{stub}}
<entry-title>h-feed</entry-title>


'''<dfn>h-feed</dfn>''' is a [[microformats2]] draft for marking up a top level feed object that contains [[h-entry]] posts.
<dfn style="font-style:normal;font-weight:bold">h-feed</dfn> is a [[microformats2]] draft for marking up a top level feed object that contains [[h-entry]] posts.
 
h-feed is the [[microformats2]] update to [[hAtom]]'s "hfeed".
 
{{cc0-owfa-license}}
 
== Properties ==
h-feed properties, inside an element with class '''h-feed'''. All properties are optional.


root class name: h-feed
root class name: h-feed


properties:
properties:
* p-name - name of the feed
* '''<code>p-name</code>''' - name of the feed
* p-author - author of the feed, optionally embed an [[h-card]] {{main|h-card}}
* '''<code>p-author</code>''' - author of the feed, optionally embed an [[h-card]] {{main|h-card}}
* u-url - URL of the feed
* '''<code>u-url</code>''' - URL of the feed
* u-photo - representative photo / icon for the feed
* '''<code>u-photo</code>''' - representative photo / icon for the feed


children:
children:
* nested [[h-entry]] objects representing the items of the feed
* nested [[h-entry]] objects representing the items of the feed
== Status ==
'''h-feed''' is a microformats.org draft specification. Public discussion on h-feed takes place on [[h-entry-feedback]] and the #microformats [[irc]] channel on irc.freenode.net.
h-feed is ready to use and implemented in the wild, but for backwards compatibility you should also mark h-feed up as a classic [[hAtom]] "hfeed".


== Use Cases ==
== Use Cases ==
Line 34: Line 46:
=== Readers ===
=== Readers ===
* Shrewdness
* Shrewdness
* http://notenoughneon.com/feed.php


=== Proxies ===
=== Proxies ===

Revision as of 19:15, 14 January 2015

<entry-title>h-feed</entry-title>

h-feed is a microformats2 draft for marking up a top level feed object that contains h-entry posts.

h-feed is the microformats2 update to hAtom's "hfeed".

Per CC0, to the extent possible under law, the editors have waived all copyright and related or neighboring rights to this work. In addition, as of 2024-04-25, the editors have made this specification available under the Open Web Foundation Agreement Version 1.0.

Properties

h-feed properties, inside an element with class h-feed. All properties are optional.

root class name: h-feed

properties:

  • p-name - name of the feed
  • p-author - author of the feed, optionally embed an h-card
    Main article: h-card
  • u-url - URL of the feed
  • u-photo - representative photo / icon for the feed

children:

  • nested h-entry objects representing the items of the feed

Status

h-feed is a microformats.org draft specification. Public discussion on h-feed takes place on h-entry-feedback and the #microformats irc channel on irc.freenode.net.

h-feed is ready to use and implemented in the wild, but for backwards compatibility you should also mark h-feed up as a classic hAtom "hfeed".

Use Cases

  • Named feeds
    • IndieWeb Readers are consuming home page feeds marked up with h-feed and using the name of the h-feed in their user interfce.
  • Generate an Atom feed
    • This seems like a legacy use-case, not sufficient to actually justify h-feed.
  • Feed per channel of content - needs a name
    • "I will have a feed per tag (channel) so I want to name them." - Sandeep Shetty in #indiewebcamp
    • It appears there is some desire to create separate feeds for an indieweb site for separate subsets of content, and name them explicitly accordingly. This presents a need for a container object for the h-entry elements, where the container itself can have a name. This is a potential interesting use-case for an explicit 'h-feed'.

Examples in the wild

Add any examples in the wild that you find to the top of this list.

  • ...
  • http://sandeep.io/ uses h-feed with p-name and p-author properties and child h-entry posts. In particular using h-feed on the <html> element allows using p-name on the <title> element and re-using the visible window title of the HTML page as the name of the feed, neatly avoiding a DRY violation.
  • http://tantek.com/ uses h-feed with p-name and p-author properties and child h-entry posts.

Implementations

Readers

Proxies

  • Bridgy

Converters

Parsing

When parsing a page for an h-feed, do so per microformats2.

Fallback:

If there is no explicit "h-feed" element, implementations may:

FAQ

How do I avoid duplicating the page title

I want to use the name (title) of my page as the name of my feed, how do I avoid duplicating the page title somewhere invisibly on the page as the feed name?

If you want re-use the <title> of your page as the name of your feed, you can do so by putting the h-feed root class name on the <html> element, and the p-name property class name on the <title> element, e.g. here's a snippet showing how those tags would look:

<html class="h-feed"><title class="p-name">sandeep.io</title>

Real world example:


What should a subscriber do with a page with multiple feeds

What do I do when a user subscribes to a URL with multiple distinct h-feeds?

A feed reader should subscribe to the first h-feed it finds at a URL.

Related: http://indiewebcamp.com/reader

See Also