rel="home"

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.

Draft Specification 2005-12-07

Editor/Author

Danny Ayers

Copyright

This specification is (C) 2005-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

Rel-Home is one of several MicroFormats. By adding rel="home" to a hyperlink, a page indicates that the destination of that hyperlink is the homepage of the site in which the current page appears. When the appropriate HTML Meta data profile is in use, the "home" type can be used alongside standard Link Types.

Example usage :

<head>
...
<link href="http://technorati.com" rel="home" />
...
</head>

The rel value may also appear wherever an anchor link may appear, e.g.

<body>
...
<a href="http://technorati.com" rel="home">Home</a>
...
</body>

the author indicates that the linked page is the homepage of the site.

The linked page SHOULD exist. Use of an absolute URI is recommended.

Scope

rel="home" is designed for site navigation purposes, as well as allowing some description of site structure to be derived from individual pages. Typical use might be in the archive pages of a weblog, pointing back to the front page.

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="home">home</dt>
   <dd>Indicates that the referred resource serves as the homepage, 
       of the site which includes the referring page.</dd>
  </dl>
 </dd>
</dl>

Examples in the Wild

This section is informative.

The following sites have implemented rel-home, 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-home, feel free to add it to the bottom of this list. Once the list grows too big, we'll make a separate wiki page.

  • the my-Warehouse shopsystem implements rel-home into the breadcrumb.
  • Sun Factory implements rel-home into the breadcrumb.
  • http://chrisruppel.com uses rel-home as a link in the <head>
  • Cleaner Today uses multiple implementations: 1) Moth Trap page uses rel-home in <head> 2) Spider Traps page uses rel="home" on Corner Logo Link & "Home" link in the footer.
  • www.jdclark.org uses rel-home on virtually all web pages within the domain and its sub-domains (for example, please see Jordan Clark's profile).
  • Tantek.com posts (e.g. Web Actions: Identifying A New Building Block For The Web) use rel="home" as part of the link to the site's alternate feed as such: <link rel="home updates alternate" type="application/atom+xml" href="http://tantek.com/updates.atom" /> to indicate that the link is an alternate for a page that is also the home for the current page, rather than an alternate for the current page.
  • fastQuotes uses rel-home on every page in multiple locations.
  • 9thCO uses rel="home" in <head>. 9thCO follows all web standards and is happy to embrace the new Rel-Home microformat specification.
  • Lol x3 implemented rel=home in the head sitewide, together with other rel's and hreflang.

Implementations

This section is informative. The following implementations have been developed which either generate or parse rel-home links.

Ed. : links to follow

References

Normative References

Informative References

Ed. : need to track down previous discussions, e.g. re. Opera


Discussions

Q&A

  • If you have any questions about rel-home, check the rel FAQ, and if you don't find answers, add your questions!

Issues

  • Please add any issues with the specification to the separate rel-home issues document.

Brainstorming

If this section gets too large (and is not just incorporated into the draft), it can be moved to rel-home-brainstorming.

use with rel-alternate

rel-alternate and type

Many blog post permalink pages have feed autodiscovery links that link from the permalink page via a link element to the feed for the site using just rel="alternate".

This is semantically incorrect as the feed is an alternate for the *site*, not the permalink page.

rel="home" could (and should) be used with rel-alternate to link from a permalink page to the feed for the site (home page). e.g. on tantek.com permalink pages (e.g. recent post), here's a simplified version of the markup:

<link rel="home alternate" type="application/atom+xml" href="../updates.atom" />

This way a feed reader / indexer / search engine knows that the link represents an alternate for the home page relative to the current page, not an alternate for the page itself.

There is one known exception which is that if the alternate link is a feed to the comments on that post, then that would make sense as an actual alternate representation of the post permalink page.

Implementations (consuming parsers) could thus treat these two types of 'alternate' links differently to provide the user a better experience, e.g. with separate buttons for:

  • Subscribe to this site
  • Subscribe to the comments on this post
rel-alternate and hreflang

It might make sense for links from pages of one language anywhere on a site when linking to the home page of another language on a site to use rel-alternate with rel-home and hreflang together.

To see if it's worth specifying that however, we'd need to document real world examples of pages linking this way first.

FAQ home alternate

Frequently asked questions about rel="home alternate" (likely merits inclusion in rel-faq).

  • Doesn't rel="home alternate" mean it's the home page and it's an alternate independently? (as asked [1], [2], [3])
    • No. That's not how rel works. Rel values combine. E.g. rel="alternate stylesheet" has worked this way for over a decade. Rel values also combine with other attributes, e.g. use rel="alternate" media="handheld" on a link to a separate mobile-specific version of a page. Tantek 20:56, 10 August 2011 (UTC)
      • This seems to contradict the spec: "if a single link element has a rel attribute with the value next stylesheet, it creates both a hyperlink (for the next keyword) and an external resource link (for the stylesheet keyword)" implying that they are independant and not related. -- Singpolyma 21:43, 10 August 2011 (UTC)
        • That's a non-normative NOTE documentation of what rel="next stylesheet" and (subsequently in a non-normative example) rel="author license" mean, and thus (being non-normative) not something you can derive any implications from. The normative language of the spec says: "exactly which and how many links are created depends on the keywords given in the rel attribute" which is precisely correct and provides us the flexibility to define combinations as having meanings. (Note that it does NOT say: create one link per rel value, which it would if the rel values were actually independent, which you can't say in general that they are.) -- Tantek 21:54, 10 August 2011 (UTC)
discuss home alternate

Go to the #microformats IRC channel to discuss rel="home alternate". Additionally if you have a specific opinion, of support/rejection/neutrality and optionally reasons why, feel free to record your (+1/-1) etc. here:

use with lang

  • Edit: Sabin Simionescu: I have a proposal:
<link rel="home" href="http://www.example.com'''/" lang="en"''' />
<link rel="home" href="http://www.example.com'''/de/" lang="de"''' />

Multilingual sites have multiple home pages. I have looked closely at this rel-home specification, and while it looks very good for SEO applications, users would benefit from a language option as well.

My proposal is to specify all ACTIVE languages of the site using rel-home.

  • Proposal misunderstands "lang" attribute. Instead of lang, use the hreflang attribute to specify the language of the destination of an href (e.g. on <link> and <a> tags). The lang attribute is only for the contents of the element itself, which in the link tag examples above, would only apply to the title attribute if any. - Tantek 01:00, 24 December 2012 (UTC)
  • This proposal is likely unnecessary. Use rel="alternate" with hreflang to link to different language versions of a page. - 01:00, 24 December 2012 (UTC)
    • Needs URLs to real world examples of such linking behavior. Using rel-alternate with rel-home and hreflang together might make sense for links from pages of one language anywhere on a site to link to the home page of another language on a site. To see if it's worth specifying that however, we'd need to document real world examples of pages linking this way first. - Tantek 01:00, 24 December 2012 (UTC)

see also