Common rel types

In a previous article, we talked about the rel attribute,

In this entry we have a sample list of common used link relations.


Use this type to link to the preferred URI of the resource.


Use this type when providing a link to a URI for an alternative version of the same resource.


Use this type to link to a URI that clients can use to edit the resource.

Use this type to link to a related resource.


Use these types to link to the previous or next resource in an ordered series of resources. and next

first and last

Use these types to link to the first and last resources in an ordered series of resources, e.g., to the first and last resources in a collection.

HTML Supported

  • alternate
  • stylesheet
  • start
  • next
  • prev
  • contents
  • index
  • glossary
  • copyright
  • chapter
  • section
  • subsection
  • appendix
  • bookmark

HTML 5 Specific

  • archives
  • feed
  • pingback

To see full list of link relations for public use see.



Despite the amorous title, this article is about an iron law for master engineers everywhere. It is an acronym that stands for:

Keep It Simple Stupid

A typical workflow for tackling a problem it involves breaking down the problem into small chunks that the developer can easily understand then build the solutions and integrate. This is called modular design.

The problem is we typically don’t get to an appropriate level of modularity. To define the appropriate level then we must consider the quote by renowned aeronautical engineer Antoine de Saint-ExupĂ©ry

Perfection is attained not when there is nothing more to add, but when there is nothing more to remove

So there we have it, our first advantage of applying the KISS principle in cracking a programming challenge.

There are many advantages including:

  • Understand-ability: Systems designed with the principle tend to be much easier to grok.
  • Team size: Because the systems are easier to understand, developers of varying skill sets and exposure can contribute to its development.
  • Flexibility: With clear understanding of the system, it becomes much more easier to modify its components.
  • Size: The architecture allows for much bigger applications.
  • speed: It is much quicker to design simple systems than complex ones.
  • Quality: Simple systems tend to have less bugs, and bugs that occur can be detected and fixed much more easily.

There are many more advantages to this principle, even over and above engineering software.

Have you applied this principle in any of your own projects? Comment below lets keep the conversation going.


The rel attribute

The rel attribute (relation type) is among one of the most misunderstood attributes in markup languages (xml, html, xhtml etc)

The simplest way to explain it is that it provides the semantics of the link. Thus answering the questions:

  • What resource does the URI refer to
  • What is the significance of the link
  • What kind of actions can a client perform on the resource at the URI?
  • What are the supported representation formats for requests and responses for that resource

Hope this has helped you understand the attribute a bit more.

Till next time, happy linking!