Uniform Resource Identifier
Ein Uniform Resource Identifier (URI) (engl. „einheitlicher Bezeichner für Ressourcen“) ist eine Zeichenfolge, die zur Identifizierung einer abstrakten oder physikalischen Ressource dient. URIs werden zur Bezeichnung von Ressourcen (wie Webseiten, sonstigen Dateien, Aufruf von Webservices, aber auch z. B. E-Mail-Empfängern) im Internet und dort vor allem im WWW eingesetzt.
Ursprünglich führte Tim Berners-Lee den Begriff 1994 im RFC 1630 als Universal Resource Identifier ein. Erst später tauchte dann in offiziellen W3C-Dokumenten die Auflösung Uniform auf. Aus diesem Grund wird Universal gelegentlich – selbst in der Fachliteratur – als erster Namensbestandteil genannt.
URIs können als Zeichenfolge (kodiert mit einem Zeichensatz) in digitale Dokumente, insbesondere solche im HTML-Format eingebunden oder auch von Hand auf Papier aufgeschrieben werden. Einen Verweis von einer Webseite auf eine andere nennt man Hyperlink.
Eine Erweiterung der nur aus druckbaren ASCII-Zeichen bestehenden URIs sind die Internationalized Resource Identifiers (IRIs).
Aufbau
Der erste Teil eines URI (vor dem Doppelpunkt) gibt den Typ des URIs an, der die Interpretation des folgenden Teils festlegt:
<Schema>:<Schema-spezifischer Teil>
Viele URI-Schemata wie http oder ftp besitzen einen hierarchischen Aufbau:
<Schema>://[<Benutzer>[:<Passwort>]@]<Server>[:<Port>]/[<Pfad>][?<Anfrage>][#<Fragment>]
<Server> gibt hierbei bei Schemata, die ein TCP- oder UDP-basiertes Protokoll verwenden, den Domainnamen oder die IP-Adresse des Servers an; <Port> den TCP-Port (optional und nur anzugeben, wenn vom Standardport des Protokolls abweichend). <Benutzername> und <Passwort> werden meistens nicht gebraucht, können aber z. B. beim Dienst FTP zur Authentisierung benutzt werden. Das bedeutendste Schema ist http für das Hypertext Transfer Protocol.
Hierarchische URIs können ferner relativ zu einem Basis-URI angegeben werden. Hierbei werden Schema, Server und Port sowie gegebenenfalls Teile des Pfades weggelassen.
An URIs kann, abgetrennt durch #, auch ein Fragmentbezeichner angehängt werden. Eine Kombination aus URI und Fragmentbezeichner wird als URI-Referenz bezeichnet.
Schemata
Unter anderem sind folgende Schemata definiert:
- data – direkt eingebettete Daten
- doi – Digital Object Identifier
- file – Dateien im lokalen Dateisystem
- ftp – File Transfer Protocol
- http – Hypertext Transfer Protocol
- ldap – Lightweight Directory Access Protocol
- mailto – E-Mail-Adresse
- news – Newsgroup oder Newsartikel
- sip – SIP-gestützter Sitzungsaufbau, z. B. für IP-Telefonie
- tel – Telefonnummer
- urn – Uniform Resource Names (URNs)
Auf der Website der IANA findet sich unter http://www.iana.org/assignments/uri-schemes.html eine vollständige Liste (englischsprachig).
URIs, URLs und URNs
Es werden folgende Unterarten von URIs unterschieden:
- Uniform Resource Locators (URLs) identifizieren eine Ressource über ihren primären Zugriffsmechanismus, geben also den Ort (engl. location) der Ressource im Netz an. Beispiele hierfür sind http oder ftp. URLs waren ursprünglich die einzige Art von URIs, weshalb der Begriff URL oft als gleichbedeutend zu URI verwendet wird.
- Uniform Resource Names (URNs) mit dem URI-Schema urn identifiziert man eine Ressource mittels eines vorhanden oder frei zu vergebenden Namens, z. B. urn:isbn oder urn:sha1.
Ursprünglich sollte jeder URI in eine dieser beiden Klassen (oder weitere noch zu definierende) eingeteilt werden. Diese strenge Aufteilung wurde jedoch aufgegeben, da sie unnötig ist und einige Schemata (wie data) in keine der beiden Klassen passen.
Manche Schemata (wie mailto), die früher als URL bezeichnet wurden, sind heute keiner der beiden Klassen zuzuordnen.
Siehe auch
Weblinks
- RFC 1630 – Universal Resource Identifiers in WWW (Status: INFORMATIONAL)
- RFC 3986 – Uniform Resource Identifier (URI): Generic Syntax (Status: STANDARD)
- http://www.w3.org/Addressing/ – Web Naming and Addressing (englisch)
- http://ftp.ics.uci.edu/pub/ietf/uri/ – IETF URI Working Group (englisch)