Skip to content

UrlDesign

henrik edited this page May 3, 2007 · 12 revisions

PageOutline(2)

URL Design

Good URLs have a number of qualities. The basic reference for this is Tim Berners-Lee's "Cool URIs don't change", but there are plenty of others who have written well about this, as well as collected lists of writings about this.

Please read (or re-read) at least "Cool URIs don't change", and comment on the ideas below with the points made there in mind.

Hackable URLs

I'd like our URLs to be 'hackable' - which means that you should be able to make a good guess at how to modify the URL you're at, in order to get to where you want to be, without necessarily having to navigate there by clicking links.

Making the URLs short and memorable also helps hackability. Short and memorable is also good -- eh, for memorability :-). Short is also good to avoid links being broken across lines in emails or documents.

Unique Document Tags

I'd like access of each identifiable document (in a broad sense) to have not only a unique and easily guessable URL, but actually even have a unique URN in the IETF universe. That means that in analogy with drafts being uniquely identified as draft- unique-name, and RFCs being uniquely identifiable as RFCunique-rfc-number, we probably should think about referring to IPR statements as ipr- unique-ipr-number, IESG minutes as maybe iesg-minutes- unique-iesg-minute-number or

minutes-iesg-unique-iesg-minute-number (which can be extended to working group minutes also). And so on.

Here's a document I started to write some time ago about unique document tags: [attachment:draft-ietf-tools-document-tags-00.b.txt], for more on this topic.

A bit of this philosophy has been used on http://tools.ietf.org/, where it's possible to go to http://tools.ietf.org/html/ document-name and get a HTML version of the draft, RFC, STD, ion etc., while if you go to http://tools.ietf.org/pdf/ document-name you'll get a PDF version of the same document. This is easy to do because each of the documents handled there already has a unique tags.

Index Pages

Let's assume that the path to view a particular IPR disclosure is simply something like http://www.ietf.org/ipr/ipr-765. In that case, I'd like the parent URL to be an index page for all IPR disclosures; so you can easily type in just http://www.ietf.org/ipr/ to get the list of them.

In order to see IPR disclosures by year, you'd go to for instance http://www.ietf.org/ipr/2005, and so on.

Additional information pages with static content would have URLs like for instance http://www.ietf.org/ipr/about

Every parent path to a meaningful URL should have meaningful content - there should be no "you're not permitted to view this page" messages if you try to hack the URLs...

URL Components

  • Only lowercase letters

  • Numbers

  • Years are 4 digits. Months are 3 letters. Days are 2-digits. (Please don't use numbers for month, or only 2 digits for the year. Here is the same date in a few different common notations. Can you be sure what the actual date is? For more, see http://en.wikipedia.org/wiki/Calendar_date.

    • 020511 (Sweden, 1970-2000 especially, but still in use)
    • 11/05/02 (100+ countries, world-wide)
    • 05/11/02 (5 countries)
    • The following format is an ISO standard, but still won't communicate in an obvious manner to everybody: 2002-05-11.
    • These, however, probably will be interpreted correctly by most: 11/may/2002, 2002-may-11, may.11.2002, 2002/may/11.
  • Don't mix dash and underscore -- and since we already have dashes in for instance the draft names, don't use underscores at all in new URLs.

Attachments

Clone this wiki locally