-
Notifications
You must be signed in to change notification settings - Fork 398
UrlDesign
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.
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.
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 RFC
unique-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.
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...
-
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.