When you prepare a website for the first time, the address bar string can look like one undifferentiated block of characters. Breaking that string into named parts helps you describe your site accurately to collaborators, check your own work, and avoid confusion between the domain you chose and the full addresses your pages will actually use.
What a Domain Name Answers and What a Full URL Answers
Suppose you are planning a small personal project and you sketch out an address on paper: https://example.org/notes/first-page?view=compact#intro. This address is purely hypothetical and is used here only as a string to take apart; it does not point to a real page or a live server. Looking at it, you can already see that the string does more than name a single machine on the network.
A domain name answers the question “which server or host am I talking to?” Domain names are a key part of the Internet infrastructure because they provide a human-readable address for any web server available on the Internet, replacing numeric IP addresses that computers handle easily but people find hard to remember. In our example, the domain portion is example.org. That portion alone identifies the host without specifying any particular page, file, or display preference on that host.12
A full URL answers a more detailed question: “which specific resource on that host, under which conditions, and starting at which point?” A URL is the address of a unique resource on the internet and is one of the key mechanisms used by browsers to retrieve published resources such as HTML pages, CSS documents, and images. The full string in our example includes not just the host but also a path, a query, and a fragment, each adding a layer of specificity that the domain name alone does not carry.3
Labeling Each Part of the Example Address
Write the example string on a blank line and mark each boundary. The first segment, https, is the scheme. It indicates the protocol the browser must use to request the resource. The separator :// follows the scheme and introduces the authority section. In this example the authority contains only the domain example.org with no explicit port, which means the standard HTTPS port is implied.3
After the authority comes the path /notes/first-page. The path identifies which resource on the server is being requested. A question mark then introduces the query string view=compact. Query parameters are extra key-and-value pairs provided to the web server, and the question mark is the character that signals the start of that section. Finally, a hash sign introduces the fragment intro. The fragment acts as a bookmark inside the resource itself, giving the browser directions to show content located at that bookmarked spot. Notably, the fragment identifier is never sent to the server with the request.3
Summarizing the boundaries: the scheme ends at the colon before the double slashes; the domain ends where the first single slash after the authority begins; the path ends at the question mark; the query ends at the hash sign; and the fragment runs from the hash sign to the end of the string. Each delimiter character serves as a clear, unambiguous separator, so you can locate every part by scanning for these characters in order.3
Same Host, Different Paths and Queries
Keep the host portion example.org fixed and change only the path. Compare https://example.org/notes/first-page with https://example.org/notes/second-page. The domain and scheme are identical, but the path differs in its final segment. These two strings point to different resources on the same host. You can observe this purely from the text of the strings without needing to load either page or know how the server is configured.
Now keep the path fixed and change the query. Compare https://example.org/notes/first-page?view=compact with https://example.org/notes/first-page?view=full. The path is the same in both, so both strings reference the same resource location. The query differs, which means the server may receive different instructions about how to present that resource. Whether the server actually honors the view parameter, ignores it, or treats unknown parameters in some other way is a question about server behavior that the URL string itself cannot answer.
Finally, change only the fragment. Compare https://example.org/notes/first-page?view=compact#intro with https://example.org/notes/first-page?view=compact#summary. Everything before the hash sign is identical. Because the fragment is never sent to the server, these two strings produce the same request from the browser to the server. The difference affects only where the browser scrolls or positions the display after the resource loads. This distinction is useful when you are deciding whether two addresses share a link target or merely differ in their on-page starting point.
Building an Address Description Card
Record the purpose of your hypothetical project in one sentence. For this exercise, write something like: a personal notes page that displays a compact reading view and starts at the introduction section. This sentence captures the intent behind the address and gives you a reference point when you later check whether the string matches what you planned.
Below the purpose sentence, list each part of the full address on its own line with a label. Write the scheme and note that it specifies a secure connection. Write the domain and note that it identifies the host. Write the path and note that it points to a specific page within a notes section. Write the query and note that it requests a compact display mode. Write the fragment and note that it marks the introduction as the starting scroll position. This list is your address description card.
The card does not need to be elaborate. A plain text file, a note in a project wiki, or even a sticky note beside your monitor all work. The value comes from having the breakdown written down in one place so that you or a collaborator can review it without re-deriving each part from memory. If your project eventually uses multiple addresses, you can add one card per address and keep them together.
Verifying the Card by Hand
Manual verification catches typos and mislabeled boundaries that are easy to miss when you glance at a string. The following steps are author suggestions based on a straightforward copy-and-label approach; they do not come from any external specification or tool requirement.
If any label does not match what you wrote on the card, correct the card rather than the original address string, then repeat the check. This keeps your reference accurate without altering the address you intend to use.
Check that the fragment label on your card matches the text after the last hash sign in the copied string. If your address contained no hash sign, write “no fragment” explicitly so a future reader knows the absence was intentional rather than an oversight.
Step 1
Copy the full address string exactly as you intend to use it and paste it into a fresh text line. Do not retype it from memory.
Step 2
Underline or highlight each delimiter in order: the colon-slash-slash after the scheme, the first single slash that begins the path, the question mark, and the hash sign.
Step 3
Write the label for each segment directly above or below the copied string, matching it against your description card one item at a time.
Step 4
Compare every label on the card with the segment you just marked. Confirm that the scheme, domain, path, query, and fragment each match in both spelling and boundary position.
Keeping the Record for Future Use
Store the completed card alongside your other project planning documents. If you later write documentation, share the address with a collaborator, or troubleshoot a link that seems wrong, the card gives you a ready-made breakdown. You can point to the specific part that changed rather than pasting the entire string and asking someone to figure out what is different.
You may find that your preferences for how detailed the card should be change over time. Some people record only the domain and path; others include every query parameter and fragment. Neither choice is wrong. The important point is that the level of detail you record matches the level of detail you will need when you revisit the address later. If your project grows to include several pages with different query parameters, the more detailed cards will save you from having to reverse-engineer the differences.
This practice also helps when you hand the project to someone else. A new collaborator can read the card and understand which part of the address controls the host, which controls the page, and which controls display preferences, without needing to consult external references first. The habit of labeling address parts before launch builds a small but durable piece of project documentation that costs almost nothing to maintain.
Frequently asked questions
Does changing the fragment in a URL create a different page?
No. The fragment is never sent to the server, so changing only the fragment does not request a different resource. It only tells the browser where to scroll or position the view within the same page after it loads.3
Can I tell from a URL string alone whether the server will honor the query parameters?
No. The URL string shows what parameters are included in the request, but whether the server uses, ignores, or handles them in some other way depends on the server's own configuration. The string itself cannot confirm server behavior.
Is the domain name the same thing as the full URL?
No. The domain name identifies the host, while the full URL adds a scheme, and may also include a path, query, and fragment to point to a specific resource on that host. The domain is one component within the larger URL string.13
What is a Domain Name? - Learn web development | MDN. Retrieved 2026-11-01. ↩︎ ↩︎
IP Address - Glossary | MDN. Retrieved 2026-11-01. ↩︎
What is a URL? - Learn web development | MDN. Retrieved 2026-11-01. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎