Qual é a diferença entre um URI, um URL e um URN?
As pessoas falam de URLs, URIs, e **URN***s como se elas'são coisas diferentes, mas parecem iguais a olho nu.
Quais são as diferenças distinguíveis entre eles?
4205
3
De RFC 3986:
Então todos os URLs são URIs (na verdade não exatamente - veja abaixo), e todos os URNs são URIs - mas URNs e URLs são diferentes, então você não pode dizer que todos os URIs são URLs.
EDIT: Eu já tinha pensado anteriormente que todas as URLs são URIs válidas, mas de acordo com os comentários:
Para que as águas fiquem mais lamacentas, infelizmente.
Se você ainda não leu a resposta de Roger Pate, eu aconselharia fazer isso também.
Eles são a mesma coisa. Uma URI é uma generalização de uma URL. Originalmente, URIs eram planejadas para serem divididas em URLs (endereços) e URNs (nomes), mas então havia pouca diferença entre uma URL e URI e URIs http eram usadas como namespaces, mesmo que não localizassem nenhum recurso.
A Wikipédia dará toda a informação que você precisa aqui. Citação a partir de http://en.wikipedia.org/wiki/URI: