Casi todo el mundo ha oído hablar del URL, la dirección que uti­li­za­mos para acceder a las páginas web por Internet. Sin embargo, pocas personas saben qué es el URI. La idea de un ide­n­ti­fi­ca­dor uniforme de recursos fue concebida por Tim Berners-Lee, el padre de la World Wide Web. Cuando el cie­n­tí­fi­co utilizó el término por primera vez en la RFC 1630, aún hablaba de un universal resource ide­n­ti­fier, o ide­n­ti­fi­ca­dor universal de recursos. Desde entonces, sobre todo debido a su uso en algunas pu­bli­ca­cio­nes del World Wide Web Co­n­so­r­tium (W3C), las siglas URI empezaron a referirse a uniform resource ide­n­ti­fier, y así es como las en­te­n­de­mos hoy en día. Su es­tru­c­tu­ra, no obstante, no ha cambiado en absoluto desde su creación.

¿Qué es el uniform resource ide­n­ti­fier?

El URI (siglas de uniform resource ide­n­ti­fier) o ide­n­ti­fi­ca­dor uniforme de recursos (por su nombre en español) sirve para acceder a un recurso físico o abstracto por Internet. De­pe­n­die­n­do de la situación, el recurso puede ser de muchos tipos: por ejemplo, un URI puede ide­n­ti­fi­car tanto una página web como al remitente o al de­s­ti­na­ta­rio de un correo ele­c­tró­ni­co. Las apli­ca­cio­nes utilizan este ide­n­ti­fi­ca­dor único para in­ter­ac­tuar con el recurso o consultar in­fo­r­ma­ción sobre el mismo.

Pro­to­co­los como HTTP o FTP funcionan gracias a esta sintaxis, ya que la forma de di­re­c­cio­na­mie­n­to se establece en base a la es­tru­c­tu­ra del URI. De este modo, el sistema ide­n­ti­fi­ca a qué in­fo­r­ma­ción debe acceder, así como dónde y cómo.

La sintaxis del URI

Un URI consta de un máximo de cinco partes, de las cuales solo dos son obli­ga­to­rias:

  • scheme (esquema): pro­po­r­cio­na in­fo­r­ma­ción sobre el protocolo utilizado.
  • authority (autoridad): ide­n­ti­fi­ca el dominio.
  • path (ruta): muestra la ruta exacta al recurso.
  • query (consulta): re­pre­se­n­ta la acción de consulta.
  • fragment (fragmento): designa una parte del recurso principal.

Los dos elementos im­pre­s­ci­n­di­bles que deben contener todos los ide­n­ti­fi­ca­do­res son scheme y path. En la es­tru­c­tu­ra del URI, los co­m­po­ne­n­tes se enumeran uno tras otro por este orden y están separados por ca­ra­c­te­res estándar.

scheme :// authority path ? query # fragment

Las dos barras después de los primeros dos puntos solo son ne­ce­sa­rias si hay contenido en la parte de authority. Asimismo, authority puede contener in­fo­r­ma­ción del usuario, que se separa del dominio mediante el signo de @, e incluir una es­pe­ci­fi­ca­ción de puerto al final, que se separa a su vez del dominio mediante dos puntos.

Como ejemplo podemos poner una dirección web común: "https://example.org/test/test1?search=test-question#part2"

  • scheme: https
  • authority: example.org
  • path: test/test1
  • query: search=test-question
  • fragment: part2

En el ejemplo, el URI di­re­c­cio­na a una parte de una página web (part2), a la que se accede mediante HTTP. Dicha parte se sitúa en un di­s­po­si­ti­vo con el ide­n­ti­fi­ca­dor “example.org” y puede en­co­n­trar­se siguiendo la ruta indicada si antes se realiza la búsqueda.

También se puede utilizar el URI para acceder a una dirección de correo ele­c­tró­ni­co, que presenta la siguiente es­tru­c­tu­ra: "mailto:user@example.org".

  • scheme: mailto
  • path: user@example.org

En este caso, el URI solo incluye los dos co­m­po­ne­n­tes obli­ga­to­rios. Otros posibles recursos a los que se puede acceder con esta sintaxis son, por ejemplo, archivos o incluso números de teléfono.

Nota

Aunque el path es obli­ga­to­rio en todos los URI, su contenido puede estar vacío. De este modo, “http://example.org/” sería un URI válido con una ruta vacía.

La IANA es la entidad que se encarga de coordinar los esquemas de los URI, es decir, la primera parte de todos los enlaces. También cabe la po­si­bi­li­dad de utilizar schemes pe­r­so­na­li­za­dos, aunque los es­ta­ble­ci­dos por esta or­ga­ni­za­ción son am­plia­me­n­te uti­li­za­dos en todo Internet. Estos son los más conocidos:

  • about: in­fo­r­ma­ción del navegador
  • data: datos in­cru­s­ta­dos
  • feed: canales web
  • file: archivos
  • ftp: file transfer protocol
  • git: control de versiones con Git
  • http: hypertext transfer protocol
  • https: hypertext Transfer Protocol Secure
  • imap: internet message access protocol
  • mailto: di­re­c­cio­nes de correo ele­c­tró­ni­co
  • news: grupos de noticias de Usenet
  • pop: POP3
  • rsync: si­n­cro­ni­za­ción de datos
  • sftp: SSH file transfer protocol
  • ssh: Secure Shell
  • tel: números de teléfono
  • urn: uniform resource name
Consejo

Puedes consultar el listado oficial con todos los esquemas de URI ha­bi­tua­les publicado por la IANA.

URI relativo y absoluto

Para no tener que escribir (y guardar) toda la in­fo­r­ma­ción que contienen los URI, algunas apli­ca­cio­nes utilizan una versión reducida de la sintaxis, que no incluye todos los elementos. Di­s­ti­n­gui­mos, por lo tanto, entre el URI absoluto, que es in­de­pe­n­die­n­te del contexto y consta al menos de los elementos scheme, authority y path, y el URI relativo, es decir, una forma más breve que prescinde de algunas partes y que solo se une al URI de base para co­m­ple­tar­lo. Como esta versión solo se anexiona, es im­pre­s­ci­n­di­ble contar con un URI de base completo que permita in­te­r­pre­tar­la co­rre­c­ta­me­n­te. Ob­via­me­n­te, el URI relativo debe en­co­n­trar­se en la misma es­tru­c­tu­ra de di­re­c­to­rio que el URI de base para ser válido.

Como el URI relativo prescinde del scheme, para poder di­s­ti­n­gui­r­lo del URI absoluto, no puede haber dos puntos en el primer segmento de la ruta, porque, en este caso, la parte que precede a los dos puntos se in­te­r­pre­ta­ría como scheme. Existen tres tipos de URI relativos, que se ide­n­ti­fi­can con un marcador al comienzo de la ruta:

  • Enlace relativo, que comienza sin barra.
  • Enlace absoluto, que comienza con una barra.
  • Enlace de red, que comienza con dos barras.

URI vs. URL vs. URN

Las siglas URI, URL y URN suelen co­n­fu­n­di­r­se, porque, aparte de sonar muy parecidas, se refieren a tres conceptos muy similares en términos técnicos. El URL o uniform resource locator se utiliza para indicar dónde se encuentra un recurso. Por lo tanto, también sirve para acceder a algunas páginas web por Internet. Por el contrario, el URN o uniform resource name es in­de­pe­n­die­n­te de la ubicación y designa un recurso de forma pe­r­ma­ne­n­te. Por lo tanto, si el URL se conoce pri­n­ci­pa­l­me­n­te como una forma de ide­n­ti­fi­car un dominio web, el URN también puede tratarse de un ISBN que ide­n­ti­fi­que un libro de manera in­de­fi­ni­da.

El URL y el URN presentan la misma sintaxis que el URI. Ambos tipos de ide­n­ti­fi­ca­do­res son, por lo tanto, su­b­ca­te­go­rías del URI. Los URL y URN son un tipo de URI. Del mismo modo, ni URL ni URN son ide­n­ti­fi­ca­do­res uniformes recursos.

Ir al menú principal