User:Cpiral/sandbox/Page name

A page name is the title on the top line. Every page has a title, but not all pages are named. A named page is a wiki page that shows up in search results, and is convenient to edit and inter-connect to other wiki pages. To the MediaWiki wiki-software a page name is the database query used to construct that page name, with its various types of connections to other page names in the database.

Initially a title is chosen and the page is saved, but it is an orphan until its name is called from an another page in a link or inclusion. A page name is a convenient "handle" with which editors interconnect pages in the database. It wikilinks ( page name  ), it includes, and it categorizes (  Category:page name  ). (When content is "included" from another page, that content could be code that is executed, or could be text that is transcluded.) The focus of this page is on both the operations that use a page name to knit the wiki together, and the terminology that describes how this is done.

The terminology for describing the way editors handle pages is co-opted from the MediaWiki software that actually handles the pages. It divides the many kinds of page names into namespaces, and so a namespace is designated for all the titles in the database. (For articles, the namespace is nameless.) For example: The title on the top line is composed of a pagename which is the subject, and a namespace which narrows the subject, or The schema for any title in the database is namespace:pagename, or Any page name is a fullpagename which is the precise topic of the page. The operative terms in the descriptions of wikitext operations or administrator instructions could be for example: "A link is made with a fullpagename", "A template's documentation is at Template:pagename", and "The whole of talk space could be denoted: namespace talk." The term namespace is in common use. Pagename and fullpagename are reintroduced here.

Just as beginning editors can know "content" as "articles", and nothing about a namespace, so advancing editors can know content as the entire database, and that parts of the URL can also serve linking, including, and categorizing, just as the title does. Another subject touched upon here is how URL is used to make the same wiki connections. But there are general character encoding considerations for URLs and titles that become important, and these are explained below. Finally, what is a page name can be defined by what is not a page name, in a contrast with the kinds of pages that are "named". Pages that are not named are acquired either by number (for example, to get a page history), or by Special pages, not named as such. There is a list of the different kinds of pages below.

Namespace, pagename, and fullpagename
The particular details of a page name are stored in variables that MediaWiki software calls "magic words". The variables for the name of a page are NAMESPACE, PAGENAME and FULLPAGENAME. will magically display the page name in its place on that page. will render a pagename too, and also its namespace. In the article namespace renders no name at all.

A namespace narrows the topic of the subject. For example Help:Categories is a very basic explanation, but Wikipedia:Categories is comprehensive in order to give a full understanding of the more skilled tasks. Yet they have the same pagename: Categories, in their respective namespaces.

Basically, a page name is a pagename if it is an article in a wikilink, or a template in an inclusion, and any page name can be referred to as fullpagename, any title in the entire database. So a page name is a fullpagename is a "namespace:pagename".

The namespace of an article is nameless, so it does not display, and the terms fullpagename and pagename can become equivalent. Note the important difference between the general "page name", and the more specific "pagename" of a namespace. Note also that "fullpagename" was created by the namespace (in computer science), not by any "full page" or some "more full pagename", although we could say that fullpagename is a full page-name.

Namespace is a heavily used convenience. The default namespace is an added convenience. Linking defaults to article space. Article namespace is both a default namespace, and a nameless namespace. Talk space necessarily links to other namespaces and so eventually the need to understand what a namespace is becomes inevitable. Inclusion defaults to the Template namespace; in the pagename is any template's pagename, without the namespace shown in its title. If any inclusion is from article space, article space is designated with a ":" as in.

The magic words PAGENAME, NAMESPACE, FULLPAGENAME only apply to the page they are on. The magic variable names and the term "page name" are MediaWiki terminology, the terms namespace, pagename, and fullpagename having become also, verbalizations. In this regard namespace is more widely used than pagename and fullpagename. These three terms are a convenient way for composing the instructions describing how newly advancing editors will work with named pages.

The fullpagename schema is analogous to the filename schema in Unix shell scripting where filename is "dirname/basename". Pagename is analogous to basename, namespace is analogous to dirname, and fullpagename is analogous to filename.

Definition
A page name is basically a title that is as easy to handle as a few mouse gestures: triple-click the title line, then drag and drop into the edit box for making links, inclusions, and categories. Typing-in an initial colon is only required for categorization, for inclusions from mainspace, and to link a pagename whose first character is a "/", all of which are rare.

The definition of a page name is basically the title on a rendered page. It is also its wikitext. The two definitions are similar except for what you might have to type-in: This must be understood by the audience when the terms pagename or fullpagename are used to document linking. The definition of a page name is the title and its extendable wikitext in a link depending on the context.
 * An initial colon is always allowed in links and inclusions, where it denotes mainspace. (Use only when needed.)
 * Interwiki, interlanguage, and inter-Wikimedia prefixes are not part of a page name.

When the database is queried with a page name, that page renders directly, and is editable. This happens for searches, wikilinks, category links, and inclusions. The database encompasses all namespaces except the virtual namespaces. There is one other database called "the revisions database", that is queried with a nine-digit version number.

A page name has a title that also serves as its link name, inclusion name, or WP:categorization-link label. This knitting together of a wiki is done by connecting any two page names in the database.

A title that will show up in the list on the search results page is a page name. The search engine accepts a query and prioritizes it as a page name. If it's not a page name, it will offer a red link with a title containing every character in the query, and it will display page names with matching content.

A category page is composed of a list of links created by bots. What a bot sees a categorization link anywhere, , it goes to that category and makes the link to the page where it was discovered: fullpagename. This reverses the usual interpretation of the double square bracketing of a page name, fullpagename. Instead of a normal link's defaulting to article space, a category link on a page specifies from which Category page. The categorization link can become a normal link with an initial ":", as in Category: pagename. The terminology of categorization calls any page name "category" or "subcategory" depending the context.

Inclusions are "included" pages that refer to any transclusion, substitution, or template operation. If a page includes a template, that merge could conceivably turn the page colors or transform all letter T to letter L's, depending on that template's code, which is described in that template's documentation at Template:pagename. The inclusions in wikitext default to Template space where templates are stored in the database. If the inclusion is from article space instead of the default Template space, article space is called ":" as in. The title of an inclusion is not included, but the rest of that named page is, including any template code that processes its residing FULLPAGENAME. If the inclusion adds information it is added at that spot where the inclusion markup exists. The entire named page is included excepting for directives from its own transclusion markup tags. If the inclusion is just template code that changes information on its residing FULLPAGENAME, placement is irrelevant.

In the database happens this knitting of an intranet quickened by a wiki. A page name is a "wiki page". Outside it are the "unnamed" current status reports and histories of it. In the same way that the concept of an article need not include any namespace, so the concept of a page name need not include those reports or even necessarily the history pages. Page names are limited to a subset of namespaces, and articles are limited to zero namespaces. The "unnamed pages" are the virtual pages. The status reports of Special derive from the names database, and the raw data files of Media derive from the File namespace, which belongs to the names database as the wikitext naming and describing the raw data file.

Parts of the URL will also work the same way as a fullpagename. For articles the URL's basename is the pagename. Pagenames with subpages, such as Wikipedia:Manual of Style/Self-references to avoid will have two (or more) basenames in them.

Terminology
All pages have a title, some of these are page names, and some of those are pagenames. Fullpagename is a synonym for "page name". The three terms for the parts of titles are the common nouns of page names, while namespace is also used outside the titular context. When "namespace:pagename" is called "fullpagename" it also offers a terminology for simplifying discussions, instructions, and template documentation.

Fullpagename is "namespace:pagename".

This schema can be used to document the including, linking, and categorizing of page names. This terminology applies to "page name" in the following ways: Any page in the database can be the referent of these three common nouns. So a title is a fullpagename, or it is a pagename in a specified namespace.
 * Namespace will mean the namespaces of "the database", (and not the virtual namespaces). It narrows the topic of the subject.
 * Pagename can mean the title of an article or template. It is the subject of the page.
 * Fullpagename can mean the title of any page in the database. It is the topic, to the letter.

Namespace, pagename, and fullpagename are defined this way to make reading and writing documents about the database operations of the wikitext simpler and easier system-wide. If the namespace is obvious, fullpagename can be termed pagename, and if the namespaces are obvious, we can say pagenames. Sometimes what can be said about fullpagenames' wording and lettering can be said using "pagename", because namespace contains a few, well-known words and letters. We can also use "fullpagename" to refer to articles if we consider "the namespace is always shown", and for templates if we remember "the namespace in the title is defaulted in wikitext inclusions", thus making the term fullpagename entail pagename as well.

Where we write "page" or "page name", we might also specify "pagename" or "fullpagename", and then the shortened terms "page" for "page name" and "pagename" for "fullpagename" are an aesthetic convenience.

Some examples: (Those statements may deserve fuller descriptions elsewhere.)
 * All have a namespace that defaults to Template.
 * All pagenames in double square-brackets have a namespace that defaults to mainspace.
 * Linking and searching in mainspace is done with a pagename.
 * On article talk pages, any reference to Five pillars must use a fullpagename.
 * An oldid is the functional equivalent of fullpagename because it is unique and permanent.
 * The following are not valid pagename characters: # < > [ ] | { } _.

Terminology is an added layer of abstraction that, once learned, increases a system's accessibility, and accessibility in this case is readability for the newly advancing editors, widening their exposure and growing there knowledge of the system. In some cases, where examples serve better than an abstract description, it is better to use, it may be more readable to write Article 1 and Article 2, or page name than to write fullpagename. Still, this page offers a terminology, and like all terminology the goal is an efficiency produced by the standardization of a consistent style where possible. But there will be many pages that do not follow the Manual of style, and this terminology is just such a style.

MediaWiki
The software reality is that what is less a page name is what is more difficult to find, edit, and connect. The questions "What is wiki content?" and "How quick and easy are changes to it?", already answered by the software, have determined the usability of the title to perform search (discovery) and connectivity operations.

In reality is that the text of both a current and a past version of any page is stored in one table. Wikipedia pages are in one, MySQL database. The page table can be considered the core of the database. To fetch the wikitext of a page requires a sequence of queries into the tables of the database. It starts with the page table, keying in with page_title, and ends with the text table.

Page names are usually about as "easy" to find, edit, and connect to one another as the answer to "what is my content domain?" is clear. Main content in mainspace is easiest to find, edit, and connect with: an article, a disambiguation page, a pagename. Project pages are easy to find, edit, and link, but they require an extra awareness of policies and guidelines, and the development of collaborative skills in a process of consensus: a Project page, a WikiProject page, a Portal page, a Category page, etc. Page names are for beginning editors and researchers, to handle with the mouse, and the Special pages and the oldid are for more advanced editors to handle from the code and templates. Template pages are is easy, but requires development of abstract software concepts concerning code, transclusion, and sandboxing. System content is most difficult, requiring URL and PHP software and MySQL database concepts: linking to a history page, generating URL links, an external viewpoint of any kind to connect everything worth knowing, but is most difficult in the sense of motivation to contribute in a venue that demands a lot to learn.

What is not a page name
A virtual page is a database report that is fastened into a format fit for your web browser. Since a virtual page is not editable, does not have an associate talk page, and does not show up in search results, does not have a title you can put in a link, we say it is not a page name. It is a special page in the namespace Special. But the process of rendering a wiki page also garnishes pieces from the database, the main one being the wikitext in the text table.

A named page is stored in pieces and put together in an instant. When you see the wikitext of a page, that is as close as it gets to named page, and it is hardly comparable to the actual rendering we call a wiki page.

In fact there is no such thing as a page name. This page would have been deleted were it not for its use as a terminology and concepts document. This page was too often being confused with WP:Article titles.

The namespace is always part of the title, inseparable from the pagename when you italicize the title per the Manual of style. The link always uses a fullpagename, but there is no way not to italicize the namespace: there is no easy way to denote a link Namespace:Pagename.

MediaWiki goes here
What is "less" a page name is decidedly less user-friendly with the MediaWiki software. MediaWiki's general principle and goal is to localize the experience for all the ways people edit and read content. The skill set of a beginner is mouse driven, and so is linking the page name as it is pasted into a link. The skill set of an advanced editor involves mastering a wide variety of skills: working with the URL, and all the Special pages such as the search results page, the history page, in order to accomplish wiki administration. All these are "less than page names".

MediaWiki made "page names" convenient to edit and to connect with. What is not a page name is possible, but less convenient, to work with and find. Titles are page names, and these make it easy to link and search and edit pages but the following are not so convenient to handle.

Note that Template page names are unique in that a title displays a default namespace. Templates use as a default for (because Template space is where computer code is stored). The title is rendered as fullpagename, and that will conveniently work as the inclusion name.

Virtual page
See SET for good explanation of when a web page is indexed, when it cannot be. A virtual page is a page in the virtual namespaces: Special, and Media. A search box or link can navigate to (can render) a Special page, but not a page history or Media page. Virtual pages can be links, but not in a category or an inclusion.

Special pages are navigable even if virtually built on the fly, and most pages are more or less connectable in some way. See about "soft redirects" in Others, below.

The Special page reports have no page name, so the attendant talk page is linked in the report itself. A list of these kinds of discussion pages are at Category: Wikipedia SpecialPages discussion.

The title of a virtual page would be a fullpagename if it was a page name. See the titles in the list at Special:SpecialPages. Their pagenames have no namespace. A Special page has a title that removes its own namespace, so you have to type it in manually or get a navigable title from the URL. The Special pages are not editable, but they can be linked. Neither articles nor virtual pages display namespace in the title, but for different reasons.

Next in convenience and ease to a pagename in mainspace is a template pagename.
 * Virtual namespace pages. The list of pages at Special:AllPages fail the title criterion, and often require JavaScript. Named pages do not require JavaScript. But you can copy the name out of the URL and paste it into a link for which JavaScript supplies the user name. Pages like Special:Preferences, or Special:Watchlist work privately for every user in the audience that activates such a link.
 * search pages
 * The edit page title prepends "Edit" to the fullpagename.
 * The history page page appends "Revision history" to the title. Oldid in the URL is the "wiki page", but it is not the "page ID" created with the formation of the page originally.  Oldid is either the current revision, the previous one, or the next one, depending on which revision a comparison of an ID is being made with.  (See Diff.)
 * A diff appends "Difference between revisions" to the title.
 * Titling a red link must follow both naming conventions and the notability policy.

Page history
A page history page is only connectable by a permalink, which uses a nine-digit oldid shown in the URL. Oldid is not a page name. A page name has a permanent and unique page number called pageid, now at 0.4% capacity. A permalink gives oldid, which is not the same as pageid. Page name and oldid are closely related because each is a reference into a database that is the parameter of a query. This query results in getting the text of a page, whether that page is the latest revision, or a past revision. The latest revision of a title has an oldid too, as seen in the URL or from the permalink tool in the sidebar. The template will create a connection to either the past or the latest revisions. Although the title of a history page is there to show what the page looked like, including its title, you cannot save any edits done to an oldid, it will save itself as it was and overwrite the current fullpagename. (The only obvious indication you get of this situation is a warning below the title.)

The search engine ignores the revisions database, such as discussions that were changed or "edited out" of the database. You can search the history database withWikiblame, but it only offers an unfamiliar interface, and produces an undocumented report. A revisions page can be a URL link, but not a categorization link or a search result.

Search results page
Only one redirect per page name will show (so as to de-clutter redundant references), so a redirect is a pagename at times. The search engine lists search results for page names, or offers to create a page name, but it does not do so for the virtual namespace, redirects, or history pages. The Advanced interface of Special:Search offers a check box for redirects, which are page names, but that feature is non-functional. (It has no effect on the list.) The (JavaScript enabled) drop-down list at the search box will show Special pages and redirects, but these are quasi-search results, not the "search results" of a search results page.


 * A red link carries the responsibility of choosing a title, but it is not a page name until it's edit page is saved.
 * A WP:redirectis a page name at times.  It's editable, but it is not the title of the list item on a search results page. If it matches a search box query, it shows up in parentheses beside its target page name.
 * A disambiguation page can be a search result, but is rarely ever the target of a link, and so acceptable as orphaned content. The redirects that skirt disambiguation pages has a title that is supposed to have "(disambiguation)" appended.
 * A soft redirect does not show up in search results.

Note that using "incategory" searches to find pages will not find them if that page was categorized using a template.

Virtual pages don't show in search results, but the show up in the drop down list that happens while you type in the search box. There is no way to search a page history except for external tools accessible on the page history page.

Others
A redirect helps editors by offering several pseudo-names for a page. Redirects are pseudo-pagenames, and they are not easy to get to to edit. The advanced editors will make many links to page histories and to Special pages and will use pseudo-pagenames. A pseudo-namespace with its attendant pseudo-pagename is a combination of a redirect and a shortcut. Naming conventions do not apply to redirect page names. Another administrative aspect of a redirect is that it serves as a single point of administrative activity for when page titles or section headings are moved. A redirect can cause trouble because it thwarts the color scheme: its link is always blue, even when it should be black (the link on a pagename to itself) or red (a red-link). But a redirect is the only way now available to find what links to a section heading.

Beyond the "hard" or "classical" redirect, there is the Soft redirect template overcomes certain technical limitations to create a page that invites readers to visit another page on a different Wikimedia project. It is used for some interwiki and Special pages. The Category redirect template is very advanced because the prerequisite understanding is categorization.

Subpages names are not a page name.

The URL
Just as the entire title line at the top of a page can be copied to make a link, an inclusion, or a categorization, it is exactly the same for parts of the URL be copied letter for letter to make those same links, inclusions, or categorizations. We expect the URL to work as well as the title, only a little more selectivity is required. For example, although the main page has no title, its link can be made from that part of the page that is the string of characters in the URL after the last "/" character: the link for http://en.wikipedia.org/wiki/Main_page can be Main_page. There is also a title parameter in the edit page URL that supplies the same information as fullpagename.

The URL is also kind of a page name that will "link" different systems. Here too are standards for operating the interworking of pages. The only way to link to a history pages or their diffs is by editing the URL. A URL uses words called URL parameters. The important ones for our subject are seen in the URL as oldid and title. Template Diff requires the oldid parameter from the URL. Title will function just as its page title will, although it will use different characters. The URL is the universal title for a page of any sort on the Internet. The characters displayed in a titles are made by MediaWiki, and the characters displayed in the URL are made by the browser, and so the affective equivalence of titles and URLs is explained in terms of conversions, character encoding, and the allowances and disallowances of characters that makes system networking possible. The MediaWiki software ultimately codes and decodes the exact same character encoding for a page title as the browser for the characters in the URL.

When there is the consideration that the link should work universally, even from a mirror site, then the URL style of link are external links so they will still link to the actual page name in the real database when the database content is mirrored on an another system. (See MediaWiki.) Going to another system that is mirroring Wikipedia (there are many) for a second: say your user page is at http://en.wikipedia.org/wiki/User:Omegatron. Your user page on the mirrored system at http://mirror-site.example.com/encyclopedia/User:Omegatron. The content may be there, but the "awareness clock rate" of the real-time changes to your Wikipedia user page may be slow or dead. Similarly, our real-time policy pages are on en.wikipedia.org, not some mirror site that has retained the Wikipedia namespace for some unknowable reason.

Changing the title
A title can get a quick and simple makeover while everything else works as before, or a title can be moved and the page name will have to move, which may require a redirect as well. If all you need is to change the sorting order of a page, we show other ways to accomplish that without changing the displayed title at all. Where page titles are in alphabetical order, it is ASCII-based ordering. ASCII-based ordering is not alphabetical.

The magic variable DISPLAYTITLE will make simple changes such as character formatting and spacing which will no effect on the page naming schema. The title (the fullpagename) is changed using anywhere in the wikitext. As usual in markup, multiple spaces are made singular. The syntax for DISPLAYTITLE is . The allowed visual changes are simply: These possibilities exist because of the definition of a page name, which allows for the canonicalization of any title by copying and pasting the title into links, inclusions, and category names.
 * lower-case the initial letter of the pagename
 * change the case of any letter of the namespace
 * add an initial colon to the title (the fullpagename)
 * change any space to an underscore "_" character or any underscore character to a space
 * add any number or mixture of spaces and underscores
 * around the separator character ":" (between the namespace and pagename), or
 * between words in the pagename
 * before or after the title (where spaces alone are ignored)
 * add bold or italic character formatting to any letters in the fullpagename

DISPLAYTITLE enforces "the page name trick", so you will find that only changes that will convert to canonical form will actually change the displayed title. It is possible to preview the changed title while on the edit page. One illegal change, such as the capitalization of pagename letter after the first letter will invalidate any and all the other allowed changes.

If there is more than one instance of DISPLAYTITLE in the wikitext, the last one overrides the previous ones. This means that if the DISPLAYTITLE automatically generated by something like an info box template needs to be overridden, then an explicit DISPLAYTITLE must be placed after that template to make your version display. If all efforts to change the title (with canonicalization compliance) fail, try looking at the bottom of the page for some stray magic variable DISPLAYTITLE.

To move a page see Moving a page.

Choosing a new title
Here a page name is simply the displayed title. Page naming is decided when creating a new page or when creating a red link.

Invalid page names

 * Technicalities limit title choices. See Naming conventions (technical restrictions).

A title is invalid if it starts with a namespace name, or an interwiki, or an interlanguage prefix, which are then followed by a colon. Where such needs arise, a naming guideline|naming guideline will recommend picking from a list of desired alternatives and redirecting from there to the page name. (See also Interwiki linking and Interlanguage links).

The search engine and the wikilink ignores ":" when it is the initial character. A title beginning with ":" will not confuse a link or a search, but it will confuse an inclusion, a categorization link, or a search.

The namespace issues cause a pagename to look like a fullpagename. A pagename titled equivalent to a fullpagename has a pseudo-namespace name, and this pseudo-pagename would result in numerous malfunctions. There would be false positives in searching and navigating, and in red-links, and there could also be unwanted inclusions. The start of a title must not contain an interlanguage prefix followed by a colon such as Fr:, WP:, or WT:. Similarly for the namespace aliases, for example Project: Build Moon, or Image: Sunset. Misexamples include Wikipedia: The Big Adventure and Talk: Secrets are Bad and HELP: (or "HeLp:") and Project:A-Kon''. A misexample involving an interwiki could be Q: Are We Not Men? A: We Are Devo! because it clashes with Wikiquote.

A forward slash ( / ) is allowed in an article title, but pagename is not then guaranteed to work in all templates, or the #parameters|prefix searches. Prefix searches in namespaces known to have the subpage feature function well. Any pagename of these with a space (underscore) before or after the colon is likewise not done.

The following are not valid PAGENAME characters: Plus "+" is allowed. A title can normally contain the "%" character, however it cannot contain "%" followed by two hexadecimal digits. (See Percent-encoding.)
 * An initial lower-case letter
 * string beginning with : as an initial character, or "./" or "../"
 * string ending "/." or "/.."
 * # < > [ ] | { } _, the non-printable ASCII characters 0–31, the "delete" character 127, or HTML character codes.
 * "." or ".." or containing "/./" or "/../"
 * the 256th character or greater
 * Titles beginning or ending with a space (or underscore), or containing a string of two or more consecutive spaces (or underscores).
 * Title cannot contain 3 or more contiguous "~" tildes.

Unicode, underscore and spaces
See material in User:Hadseys/Editing/Page name

We will need some other magic words to describe the interworkings between a page names and a URL: PAGENAMEE, FULLPAGENAMEE, and NAMESPACEE. FULLPAGENAMEE mirrors the characters (data bytes) of the URL, and FULLPAGENAME mirrors what is rendered in the title.

MediaWiki uses unicode. FULLPAGENAME is rendered by MediaWiki software byte by byte, to display the title letter by letter. Wikilinks can use either spaces or underscores. Spaces are preferred in article space. The PAGENAME character "_" (underscore) becomes a space when pagename links that title, the way it renders without the space. Titles render from FULLPAGENAME, including unicode characters, for example PAGENAME unicode %C3%80, renders "À" as equivalent to its corresponding characters.

Unicode characters are interpreted in links: links %41 and %C3%80 render %41 and %C3%80. Similarly if the URL is http://en.wikipedia.org/wiki/%C3%80, the one, unique pagename is equivalently "%C3%80" or "À".

URLs decode FULLPAGENAMEE and encode a PAGENAME and a NAMESPACE. For example, for this page, renders: .

The localurl and fullurl functions generate the MediaWiki URLs of one of its pages.

Pagename unicode in PAGENAME is re-encoded by localurl or fullurl into PAGENAMEE. Localurl: PAGENAME is the first parameter, and PAGENAMEE is the second. Fullurl: FULLPAGENAME is the first parameter, and FULLPAGENAMEE is the second. For example:

Misexample: This shows how PAGENAMEE's necessary underscores for the URL would be wrongly encoded by PAGENAME's space character: