Web Development Core Concepts - What is Web Address?

Hello and welcome to web technology core concepts at Learning Journal. In the earlier video, I talked about a website address or a webpage's address. In this video, we will elaborate a little more on the same.
If you want to open a website or a webpage, you must know its address. However, there are multiple terms that people use to refer a website address.
A layman will always call it a web site address. And there is no confusion in that simple terminology. But if you talk a little more technically, people often use and get confused with three different terms.

  1. URI – Uniform Resource Identifier
  2. URL – Uniform Resource Locator
  3. URN – Uniform Resource Name

Difference between URI, URL and URN

Most of the people use URI, URL, and URN as a synonym. However, they are different things. Do you understand that difference? Will you be able to explain the difference clearly?
That’s the topic for this video. So let’s try to understand that.
If you carefully look at the full form of these three things, they differ in the last word.

  1. The Identifier
  2. The Locator
  3. The Name

The key to the difference lies in these three words.
Let’s start with an example. Do you like James Bond movies? What is his name, and code?

James Bond - 007

Do you think it uniquely identifies that character over time and space? If no one in the past, present, and future uses that combination in our world, we can think of it as a unique identifier for James Bond. That’s what a URI means. It’s a uniform resource identifier. So the James Bond - 007 could be a URI for James Bond.
Let me ask you another question? Using the above URI, can you locate James Bond? No, Right? You cannot locate that resource because that URI doesn’t contain an address. Let’s add an address to the URI.

James Bond – 007 – No 30 Wellington Square, London

Great! Now, it becomes a URL. When we add address details to the URI, it becomes a URL. The L stands for the locator.
However, there is an important point to note here. The URL still uniquely identifies the James Bond. So it is still a valid URI.
In other words, The URL is a subset of URI.
Great! Now let’s come to the URN. The URN is like a URI that uses a special naming scheme to identify a resource uniquely. However, since web pages don’t follow that naming scheme, the URN doesn’t have enough significance regarding web technologies. So, most of us tend to ignore that term. However, a URN is also a unique identifier that uses a special name to identify a resource. But you should remember that if a URN doesn’t contain location information, then it won’t be a valid URL.

Relationship in URI, URL and URN

The diagram explains a lot.

Difference between URI, URL and URN
Fig.1-Difference between URI, URL and URN

However, let's summarize few points.

  1. A URL is always a URI.
  2. A URN is also a URI.
  3. Some URLs are also a valid URN and vice versa.
  4. A URI may or may not be a URL/URN

However, to avoid confusion, W3C - World Wide Web Consortium, which is the main international standards organization for the World Wide Web, issued a URI clarification document. The document clarifies that URI and URL are the same things. So, after all that discussion, In terms of web technologies, the URL and the URI can be used as a synonym. In a layman’s language, we call it a web address.

Example URL

Great! Let us look at an example web address.
The above example uniquely identifies a web page, and it is a URI. It also contains enough information for the browser to locate the page. Hence, it is a valid URL as well. Hope that makes sense.
Great! That`s it for this session. See you again with a new concept.
Thank you for watching learning journal. Keep learning and keep growing.

You will also like:

Function Currying

Function currying is an interesting concept in Scala. How to implement?

Learning Journal

Scala Function Basics

Start learning Scala functions from the basics and become an expert.

Learning Journal

Scala placeholder syntax

What is a scala placeholder syntax and why do we need it? Learn from experts.

Learning Journal

Higher Order functions

Scala allows you to create Higher Order functions as first class citizens.

Learning Journal