- URI
-
Ein Uniform Resource Identifier (URI) (engl. „einheitlicher Bezeichner für Ressourcen“) ist ein Identifikator und besteht aus einer Zeichenfolge, die zur Identifizierung einer abstrakten oder physischen 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 oder kurz Link.
Eine Erweiterung der nur aus druckbaren ASCII-Zeichen bestehenden URIs sind die Internationalized Resource Identifiers (IRIs).
Inhaltsverzeichnis
Aufbau
Der erste Teil eines URI (vor dem Doppelpunkt) gibt den Typ des URIs an, der die Interpretation des folgenden Teils festlegt:
Schema:schemaspezifischer Teil
Viele URI-Schemata wie http oder ftp besitzen einen hierarchischen Aufbau:
Schema://[Benutzer[:Passwort]@]Server[:Port][/Pfad][?Anfrage][#Fragmentbezeichner]
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.
Das letzte Element der URI kann, abgetrennt durch ein #, ein Fragmentbezeichner sein. Ein Beispiel dafür ist der Anker in HTML.
Mit folgendem (erweiterten) regulären Ausdruck kann eine gültige URI in ihre Bestandteile zerlegt werden.[1] Die Ziffern in der zweiten und dritten Zeile zeigen die Gruppierungen der Klammern an und dienen lediglich als Verständnishilfe.
^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))? 1- -1 3- -3 5- -56- -6 8- -8 2- -2 4- -4 7- -7 9--9
Beispiele
- http://de.wikipedia.org/wiki/Uniform_Resource_Identifier
- ftp://ftp.is.co.za/rfc/rfc1808.txt
- file://C:\UserName.HostName\Projects\Wikipedia_Articles\URI.xml
- ldap://[2001:db8::7]/c=GB?objectClass?one
- gopher://gopher.floodgap.com
- mailto:John.Doe@example.com
- sip:911@pbx.mycompany.com
- news:comp.infosystems.www.servers.unix
- data:text/plain;charset=iso-8859-7,%be%fg%be
- tel:+1-816-555-1212
- telnet://192.0.2.16:80/
- urn:oasis:names:specification:docbook:dtd:xml:4.1.2
- byond://BYOND.world.123456789
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)
- xmpp – Extensible Messaging and Presence Protocol für Jabber Identifier
- pop – Mailboxzugriff über POP3
Auf der Website der IANA befindet sich 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 gleichbedeutend mit URI verwendet wird.
- Uniform Resource Names (URNs) mit dem URI-Schema urn identifizieren eine Ressource mittels eines vorhandenen 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 oder das früher den URLs zugeordnete mailto) in keine der beiden Klassen passen.
Siehe auch
- Digital Object Identifier (DOI)
- Persistent Uniform Resource Locator (PURL)
- Internationalized Resource Identifier (IRI)
Weblinks
- RFC 1630 – Universal Resource Identifiers in WWW (Status: INFORMATIONAL)
- RFC 3986 – Uniform Resource Identifier (URI): Generic Syntax (Status: STANDARD)
- Web Naming and Addressing (englisch)
- IETF URI Working Group (englisch)
- Online-Tool zur URL-Kodierung/Dekodierung gemäß RFC 3986 (JavaScript, GPL, gilt trotz der Bezeichnung auch für URIs)
Einzelnachweise
Wikimedia Foundation.