Contém informações sobre como buscar um recurso a partir de sua localização. Por exemplo:
http://example.com/mypage.html
ftp://example.com/download.zip
mailto:user@example.com
file:///home/user/file.txt
tel:1-888-555-5555
http://example.com/resource?foo=bar#fragment
/other/link.html
(Um URL relativo, útil apenas no contexto de outro URL)
Os URLs sempre começam com um protocolo ( http
) e geralmente contêm informações como o nome do host da rede ( example.com
) e geralmente um caminho do documento ( /foo/mypage.html
). Os URLs podem ter parâmetros de consulta e identificadores de fragmento.
Identifica um recurso por um nome exclusivo e persistente. Geralmente começa com o prefixo urn:
Por exemplo:
urn:isbn:0451450523
para identificar um livro pelo seu número de ISBN.
urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66
um identificador globalmente exclusivo
urn:publishing:book
- Um espaço para nome XML que identifica o documento como um tipo de livro.
URNs podem identificar idéias e conceitos. Eles não estão restritos à identificação de documentos. Quando um URN representa um documento, ele pode ser traduzido em um URL por um "resolvedor". O documento pode ser baixado do URL.
Os URIs abrangem URLs, URNs e outras maneiras de identificar um recurso.
Um exemplo de um URI que não é um URL nem um URN seria um URI de dados como data:,Hello%20World
. Não é um URL nem um URN porque o URI contém os dados. Ele não o nomeia nem informa como localizá-lo na rede.
Também existem citações uniformes de recursos (URCs) que apontam para metadados sobre um documento e não para o próprio documento. Um exemplo de um URC seria um identificador para visualizar o código-fonte de uma página web: view-source:http://example.com/
. Um URC é outro tipo de URI que não é URL nem URN.
perguntas frequentes
Ouvi dizer que não deveria mais dizer URL, por quê?
A especificação W3 para HTML diz que a href
marca de uma âncora pode conter um URI, não apenas um URL. Você deve conseguir inserir um URN como <a href="urn:isbn:0451450523">
. Seu navegador resolveria esse URN para um URL e baixaria o livro para você.
Algum navegador sabe como buscar documentos pelo URN?
Não que eu saiba, mas o navegador da Web moderno implementa o esquema de URI de dados.
A diferença entre URL e URI tem algo a ver com se é relativa ou absoluta?
Não. Os URLs relativos e absolutos são URLs (e URIs).
A diferença entre URL e URI tem algo a ver com o fato de ter parâmetros de consulta?
Não. Ambos os URLs com e sem parâmetros de consulta são URLs (e URIs).
A diferença entre URL e URI tem algo a ver com o fato de ter um identificador de fragmento?
Não. Ambos os URLs com e sem identificadores de fragmento são URLs (e URIs).
Mas o W3C agora não diz que URLs e URIs são a mesma coisa?
Sim. O W3C percebeu que há muita confusão sobre isso. Eles emitiram um documento de esclarecimento de URI que diz que agora não há problema em usar os termos URL e URI de forma intercambiável (para significar URI). Não é mais útil segmentar estritamente URIs em diferentes tipos, como URL, URN e URC.
Um URI pode ser um URL e um URN?
A definição de URN agora é mais flexível do que eu afirmei acima. A RFC mais recente nos URIs diz que qualquer URI agora pode ser um URN (independentemente de começar com urn:
) desde que tenha "as propriedades de um nome". Ou seja: é globalmente único e persistente, mesmo quando o recurso deixa de existir ou fica indisponível. Um exemplo: os URIs usados em doctypes HTML, como http://www.w3.org/TR/html4/strict.dtd
. Esse URI continuaria nomeando o tipo de documento de transição HTML4, mesmo que a página no site w3.org fosse excluída.