Names or identifiers are ways for us to identify or differentiate between things.
Addresses are ways for us to find things.
Simple enough, however we must remember that for most purposes an address is also a name.
The book on the table by the bed is an address while ISBN:9780733320187 or "The Tao of Poo" are names.
In my case all three are names, because I have access to the table where the book is.
For most people who don't have access to the private namespace of my bedroom, the later names are far more useful.
We can see that while having a name may let us refer to or discuss a thing it may not let us find the thing.
Now let us consider Uniform Resource Identifiers (URI) we have:
http://Thread-Safe.net/
This is a name in that it identifies my blog. It is also an address in that a program that understands URLs can retrive the named object.
In the early days of the web we referred to this simply as a web address.
Now we call it a Uniform Resource Locator (URL) because it tells us how to locate the named object.
All URI begin with a scheme, in this case http: to indicate the resource is accessed through the HyperText Transfer Protocol (HTTP).
This is fallowed by the hierarchical part, this contains an authority beginning with "//" and a path beginning with "/".
So in the case of "http://Thread-Safe.com/index.php" we have (RFC2616):
1. Scheme: http (the method of finding the resource)
2. Authority: Thread-Safe.net (what host do we contact)
3. Path: index.php (the thing we are looking for)
So the web browser uses the HTTP protocol to ask Thread-Safe.net for index.php.
Another URL is tel:+1-604-555-1212 (RFC3966) this is both a name and a address.
There are a number of scheme not all are supported by every web browser.
Examples are ftp, file, http, https, mailto, sip.
All URLs encode where to find the resource.
They are also a name for the resource in the namespace of the scheme being used.
The phone number namespace used by tel: is separate from the DNS namespace used by http: and ftp:.
So when is a URI not a URL?
The simple answer is it is not a URL if it is only a name and not an Address.
There is a type of URI called Uniform Resource Name (URN) that are not also addresses.
An example of a URN would be our book. A URN for my book in the isbn namespace is:
urn:isbn:9780733320187
So if we pull our URN appart, we get:
1. Scheme: URN
2. Namespace Identifier: ISBN
3. Namespace Specific String: 9780733320187
So the URN only encodes the What in the context of some namespace. In this case the ISBN namespace.
Any valid URI that doesn't begin with URN: is an address and can be considered a URL.
When I next get to it, I will discuss the details of the XRI: scheme, and how it builds on URIs.
=jbradley
Addresses are ways for us to find things.
Simple enough, however we must remember that for most purposes an address is also a name.
The book on the table by the bed is an address while ISBN:9780733320187 or "The Tao of Poo" are names.
In my case all three are names, because I have access to the table where the book is.
For most people who don't have access to the private namespace of my bedroom, the later names are far more useful.
We can see that while having a name may let us refer to or discuss a thing it may not let us find the thing.
Now let us consider Uniform Resource Identifiers (URI) we have:
http://Thread-Safe.net/
This is a name in that it identifies my blog. It is also an address in that a program that understands URLs can retrive the named object.
In the early days of the web we referred to this simply as a web address.
Now we call it a Uniform Resource Locator (URL) because it tells us how to locate the named object.
All URI begin with a scheme, in this case http: to indicate the resource is accessed through the HyperText Transfer Protocol (HTTP).
This is fallowed by the hierarchical part, this contains an authority beginning with "//" and a path beginning with "/".
So in the case of "http://Thread-Safe.com/index.php" we have (RFC2616):
1. Scheme: http (the method of finding the resource)
2. Authority: Thread-Safe.net (what host do we contact)
3. Path: index.php (the thing we are looking for)
So the web browser uses the HTTP protocol to ask Thread-Safe.net for index.php.
Another URL is tel:+1-604-555-1212 (RFC3966) this is both a name and a address.
There are a number of scheme not all are supported by every web browser.
Examples are ftp, file, http, https, mailto, sip.
All URLs encode where to find the resource.
They are also a name for the resource in the namespace of the scheme being used.
The phone number namespace used by tel: is separate from the DNS namespace used by http: and ftp:.
So when is a URI not a URL?
The simple answer is it is not a URL if it is only a name and not an Address.
There is a type of URI called Uniform Resource Name (URN) that are not also addresses.
An example of a URN would be our book. A URN for my book in the isbn namespace is:
urn:isbn:9780733320187
So if we pull our URN appart, we get:
1. Scheme: URN
2. Namespace Identifier: ISBN
3. Namespace Specific String: 9780733320187
So the URN only encodes the What in the context of some namespace. In this case the ISBN namespace.
Any valid URI that doesn't begin with URN: is an address and can be considered a URL.
When I next get to it, I will discuss the details of the XRI: scheme, and how it builds on URIs.
=jbradley

