A page name on differs from most web pages, in that the title can always be interpreted from the URL. A web page URL is more similar to a file name, which can be given any chosen title within the rules. Page name is also different than file name because whereas "file name" and "filename" mean the same thing, "page name" and "pagename" do not always mean the same thing. But pagename is very similar in meaning to "web page title" in that both terms reference the title of a subject, which is a variable for a given author.
The topic for a page is also called the pagename or basename. Some examples:
The term for the Main or the Template namespace conveniently defaults to what is obviously the main reason for the namespace. For example, we can link [[An article title]], but to transclude it we write {{:An article title}}. The ":" character is not part of any namespace name, but here it is as close to the mainspace name as possible. The namespace for an article is a default that is not technically writable in the page name. Although it is not technically necessary to write "Template" in the page name for a transclusion that achieves the text processing power of template code, it remains true that the markup for transclusion is "a page name in double curly brackets".
The good news is that there is one way to link that can guarantee error-free linking in all cases: render the target page, use the "copy and paste" operation from the title line of the target page, and use that for your own page. Some of the page names you will find the need to link to in discussion will be policy, guidelines, templates, and the other namespace names. So because the namespace name is in the title, the link will always work by using the title.