Basic principles of addressability for web applications:
- Always tie your URL's to your data models.
- Use mod_rewrite as sparingly as possible. It's too flexible.
- Don't punish plurals - provide predictable redirects.
- Go for human readable URL's if at all possible.
- Provide namespaces for RESTian web services. Have an xml-based (e.g. rss) representation of every model in your application.
As always, delicious is a model of good design in this area. We're working at last.fm to improve addressability with what is a more complex data model (artist/album/track/label/user/tag).