It’s almost a tongue twister to say them all. Do you know what they all mean?
Let’s take URI one step at a time and at the end, you’ll understand how best to describe where information such as web pages can be found. The whole point though about this is that it applies beyond just web pages. You’ll have a solid understanding of how to describe where almost anything can be found.
The first part is Uniform. This means that you can describe completely different kinds of resources that might have very different mechanisms. Just take web pages vs. emails as an example. The URI document describes a uniform way to represent these and other types.
But types of what though? Here’s where things get really vague. We’re talking about resources and these can be almost anything. A web page is a resource. But so is an online service that provides high scores for a game. And you can even describe resources that are in the real world and have nothing to do with computers at all, such as a library book.
If you thought that was vague, the term identifier is even more so. This is whatever is needed to uniquely refer to one thing vs. something else. It can change depending on what type of thing you’re trying to identify. And it might not even be a single thing. Maybe it can identify a group of things where the group itself is important somehow. But probably the strangest part of an identifier is that there doesn’t actually have to be anything located or found at whatever is identified. It could just be an idea or a concept. All that really matters is that it has some kind of identity, whatever that means.
URIs are interpreted consistently no matter where you are but that doesn’t mean that they provide the same result. The RFC 3986 document describes http://localhost as an example. No matter where you are in the world, this always means the same thing. It refers to the computer itself. Each computer will interpret this URI to mean itself. The way that URIs are able to handle such variety is because they start out with what’s called a scheme. The “http” in http://localhost is the scheme. This says that what follows should adhere to rules specifying valid http addresses.
If you wanted to represent a phone number as a URI, then it would begin with “tel:” And an email address would begin with “mailto:”
Make sure to listen to the entire episode to understand what are URLs and URNs as well as when to use them.