2009-04-07 8 views
31

Es wurde mir mehrmals erklärt, dass alle URLs URIs sind, aber nicht alle URIs URLs sind. Kann jemand ein Beispiel für etwas geben, das eine URI ist, aber keine URL?Beispiel für einen URI, der keine URL ist?

+0

[Daten URI] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) ist ein Beispiel für eine URL, die nicht URL. Beispiel: 'data:, Hallo% 2C% 20World!' –

Antwort

6

Ein Uniform Resource Name (URN) ist ein URI, der eine Ressource anhand ihres Namens in einem bestimmten Namespace identifiziert. Ein URN kann verwendet werden, um über eine Ressource zu sprechen, ohne ihren Standort oder den Zugriff darauf anzugeben. Zum Beispiel kann die URN urn: ISBN: 0-395-36341-1 ist ein URI

Aus: Wikipedia: http://en.wikipedia.org/wiki/Uniform_Resource_Identifier

+1

das sind auch URLs http://en.wikipedia.org/wiki/File_URI_scheme – zak23

0

Ein häufiger Fall wäre ein URN sein, die eine URI des Formats ist urn:namespace-id:resource-id . Per Wikipedia:

Defined 1997 in RFC 2141, als persistent, standortunabhängige Identifikatoren dienen URNs bestimmt waren, die einfache Zuordnung von Namensräumen in einem einzigen URN-Namensraum zu ermöglichen. Die Existenz von solch ein URI impliziert nicht die Verfügbarkeit der identifizierten Ressource, aber solche URIs müssen global eindeutig und persistent bleiben, auch wenn die Ressource nicht mehr existiert oder nicht mehr verfügbar ist.

Beide Arten von Ressource-Referenz (URL und URN) wurden später unter dem Begriff des URI kombiniert, aber sie bleiben als dienen verschiedene Zwecke (Hervorhebung von mir) anerkannt:

Ein Uniform Resource Name (URN) kann mit dem Namen einer Person verglichen werden, , während eine Uniform Resource Locator (URL) mit ihrer Straße Adresse verglichen werden kann. Mit anderen Worten, eine URN identifiziert ein Element und eine URL bietet eine Methode zum Auffinden von es.

+0

Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile einzubeziehen der Antwort hier und stellen Sie den Link als Referenz zur Verfügung. Nur-Link-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. - [Aus Bewertung] (/ review/low-quality-posts/13353109) –

+0

@ Vini.g.fer Guter Punkt, und es ist jetzt aufgeräumt. Ich muss jedoch zugeben, dass die Frage selbst geradezu nach Links-Antworten verlangt - vielleicht ist es eine Frage der Qualität? –

29

Beispiel von here gestohlen (wo es auch eine Beschreibung der Unterschiede):

URL  http://www.pierobon.org/iis/review1.htm 
URN  www.pierobon.org/iis/review1.htm#one 
URI  http://www.pierobon.org/iis/review1.htm.html#one 
+1

einfach, kurz & süß –

+2

Ich fühle mich wie das ist falsch. Ist das URI-Beispiel hier nicht auch eine URL? Es findet sicher eine Ressource und identifiziert sie. – romnempire

3

XML-Schema mit einem oft identifiziert URI und während sie möglicherweise ähnlich formatiert sind, gibt es keine Garantie, dass dort etwas ist, weil es keine URL ist.

Die Fähigkeit, das richtige XML-Schema zu identifizieren, ist erforderlich, wenn Sie eine XML-Datei validieren müssen. Ein Identifikationsmittel muss zwischen dem Inhalt und den Autoren des Schemas ausgetauscht werden, bevor eine erfolgreiche Validierung etwas Nützliches bedeuten kann. URIs füllen dieses Bedürfnis so gut wie alles andere. Beachten Sie, dass das Schema nicht unbedingt benötigt wird, um die XML-Datei zu verwenden. Daher muss es nicht universell lokalisierbar oder verfügbar sein, es muss einfach identifizierbar sein. Die Semantik eines URIs vermeidet die Implikation, dass die Ressource "hier" lokalisiert sein muss, wie es bei einer URL der Fall wäre, und das aus gutem Grund. Ein solches Detail ist für die Aufgabe der Identifizierung irrelevant.

Schema-Publisher basieren die URI oft auf einer URL, deren Eigentümer sie sind. Ich kann mir vorstellen, dass es viele Gründe dafür gibt, aber zum einen hilft es, Konflikte ohne einen Vermittler zu benennen.Wenn Sie eine solche Konvention verwenden, ist es schwierig, der Definition der Definition an dem Ort zu huldigen, auf den der URI verweisen würde, wenn er eine URL hätte. Obwohl bekanntlich notwendig ist, glaube ich, dass dies eine geschätzte Anstrengung darstellt und ein Beispiel für eine gute Informationsarchitektur ist, aber diese Tatsache steht in keinem Zusammenhang mit Anforderungen, die durch einen URI erfüllt werden.

Verwandte Themen