rel="enclosure"

From Microformats Wiki
Jump to navigation Jump to search

This document represents a draft microformat specification. Although drafts are somewhat mature in the development process, the stability of this document cannot be guaranteed, and implementers should be prepared to keep abreast of future developments and changes. Watch this wiki page, or follow discussions on the #microformats IRC channel to stay up-to-date.

rel-enclosure is a simple, open, format for indicating files to cache which is embeddable in (X)HTML, Atom, RSS, and arbitrary XML. relEnclosure is an elemental microformat, one of several microformat open standards.

Draft Specification 2005-06-21

Author

Kevin Marks, Technorati, Inc.

Copyright

This specification is (C) 2004-2024 by the authors. However, the authors intend to submit (or already have submitted, see details in the spec) this specification to a standards body with a liberal copyright/licensing policy such as the GMPG, IETF, and/or W3C. Anyone wishing to contribute should read their copyright principles, policies and licenses (e.g. the GMPG Principles) and agree to them, including licensing of all contributions under all required licenses (e.g. CC-by 1.0 and later), before contributing.

Patents

This specification is subject to a royalty free patent policy, e.g. per the W3C Patent Policy, and IETF RFC3667 & RFC3668.

Abstract

relEnclosure is one of several microformats. By adding rel="enclosure" to a hyperlink, a page indicates that the destination of that hyperlink is intended to be downloaded and cached. E.g. with the following hyperlink:

<a href="http://homepage.mac.com/kevinmarks/wwdc2005.mov" rel="enclosure">WWDC 2005 Keynote with chapters</a>

the author indicates that the movie should be downloaded.

Multiple Enclosures

Multiple such rel="enclosure" hyperlinks indicate that several media items should be downloaded.

Question: What if there are several alternative formats, such as high- and low-bandwidth recordings? Since <link rel="alternate" href="..."> is already defined in XHTML for that purpose, so how should it interact with this new rel tag?

Response: rel="alternate" is defined in the HTML spec:

Designates substitute versions for the document in which the link occurs.

In the case of enclosure links "alternate" is not suited, because the media file is not a substitute version of the document in which the link occurs - it is a substitute version of another link on the document in which the link occurs.

Proposal: Multiple instances of the same enclosure (i.e. same video with different formats, size/resolution, bitrates, etc) could be grouped in a class="enclosure" block with multiple rel="enclosure" links. This would be analogous to <media:group> in MRSS

reply

  • "In the case of enclosure links "alternate" is not suited, because the media file is not a substitute version of the document in which the link occurs "
    • That's not necessarily the case; the linked file may be an audio reading of the text on the page, for instance. Andy Mabbett 02:37, 5 Oct 2007 (PDT)

XMDP profile

<dl class="profile">
 <dt id="rel">rel</dt>
 <dd><p>
   <a rel="help" href="http://www.w3.org/TR/html401/struct/links.html#adef-rel">
     HTML4 definition of the 'rel' attribute.</a>  
   Here is an additional value.</p>
  <dl>
   <dt id="enclosure"> enclosure </dt>
   <dd>Indicates that the referred resource is intended to be downloaded and cached</dd>
  </dl>
 </dd>
</dl>

Examples in the Wild

This section is informative.

The following sites have implemented rel-enclosure, and thus are a great place to start for anyone looking for examples "in the wild" to try parsing, indexing, organizing etc. If your site is marked up with rel-enclosure, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page.

  • Huffduffer uses rel-enclosure on links to audio files marked "download".

Implementations

This section is informative.

The following implementations have been developed which either generate or parse rel-enclosure links. If you have a rel-enclosure implementation, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page.

  • FeedBurner: the SmartCast service looks for the rel="enclosure" microformat and converts it to an enclosure in the feed.
  • ODEO publishes rel-enclosure links for user podcast MP3s.
  • Video Pop-Up Link Maker: generates code for rel-enclosure links for videobloggers. Also generates Javascript to launch a pop-up window with the video embedded. (Also available at embedthevideo.com)

References

Normative References

Informative References

  4.  The value "enclosure" signifies that the IRI in the value of the
      href attribute identifies a related resource which is potentially
      large in size and might require special handling.  For atom:link
      elements with rel="enclosure", the length attribute SHOULD be
      provided.


See also