Help:Page name

From Meta, a Wikimedia project coordination wiki
(Redirected from Page name)
Jump to: navigation, search
MediaWiki Handbook: Contents, Readers, Editors, Moderators, System admins +/-

The canonical form of a full page name is shown in large font as the page header. Another type of canonical form is what is in URLs generated by the system, for this page "Help:Page_name" with an underscore. Alternative names for this page (on most projects) are help:page name, help:Page name, Help:page name and Help:Page name, but not Help:Page Name; the alternative names for this page on this project are the bolded ones. For details, see below.

Terms

The terms "full page name" and "full pagename" include the namespace prefix; the terms "page name" and "pagename" are somewhat ambiguous for pages outside the main namespace as they may or may not include the namespace prefix. To avoid ambiguity one can use "full pagename" and "pagename without namespace prefix".

Variables and parser functions

  • "{{FULLPAGENAME}}" → "Help:Page name" [1]

Converting a page name to canonical form (see also below):

  • "{{FULLPAGENAME::project:abc  def__ghi&j / k}}" gives "Meta:Abc def ghi&j / k" [2] - leading colon is removed, the first letter of the namespace and that of the remaining page name is capitalized (and the generic namespace name is replaced by the actual one), underscores are replaced by spaces, consective spaces are replaced by a single one
  • "{{FULLPAGENAME:abc:def}}" → "Abc:def" [3] - ditto
  • "{{FULLPAGENAME:abc:def:}}" → "Abc:def:" [4] - ditto
  • "{{FULLPAGENAME:help:def}}" → "Help:Def" [5] - since "Help" is a namespace name, the d is also capitalized
  • "{{FULLPAGENAME:ab:cdef}}" → "ab:cdef" [6] - since "ab" is an interwiki prefix it is not capitalized; the rest of the name is not changed because that would depend on the local settings of that wiki
  • "{{FULLPAGENAME:ab:}}" → "ab:" [7] - refers to the main page of the other wiki, returns the same
  • "{{FULLPAGENAME:a[b}}" → "" [8] - if it is not a valid page name the empty string is returned
  • "{{FULLPAGENAME:help:abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz}}" → "" [9] - ditto (the maximum for the pagename without namespace is 255 bytes)
  • "{{FULLPAGENAME:}}" → "" [10] - ditto
  • "{{FULLPAGENAME:help:}}" → "" [11] - ditto, a namespace name with colon is not a valid page name

With the extra E spaces are replaced by underscores and some characters are percent-encoded, for use in a URL:

  • "{{FULLPAGENAMEE:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}" → "Abcdefghijklmnopqrstuvwxyz%7E_!%22$%27()*,-./0123456789:;%3D%3F@ABCDEFGHIJKLMNOPQRSTUVWXYZ%5C%5E_%C2%B1%C3%97%E2%80%A2%C3%A9" [12], compare:
    • "{{urlencode:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}" → "abcdefghijklmnopqrstuvwxyz%7E+%21%22%24%27%28%29%2A%2C-.%2F0123456789%3A%3B%3D%3F%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5C%5E_%C2%B1%C3%97%E2%80%A2%C3%A9" [13] (more encodings; space becomes +, underscore is preserved)
    • "{{anchorencode:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}" → "abcdefghijklmnopqrstuvwxyz.7E_.21.22.24.27.28.29.2A.2C-..2F0123456789:.3B.3D.3F.40ABCDEFGHIJKLMNOPQRSTUVWXYZ.5C.5E_.C2.B1.C3.97.E2.80.A2.C3.A9" [14]
  • "{{NAMESPACE}}" → "Help" [15]

Extracting the namespace:

  • "{{NAMESPACE:abc:def}}" → "" [16]
  • "{{NAMESPACE:help:def}}" → "Help" [17]
  • "{{NAMESPACE:ab:help:def}}" → "" [18] - empty, would depend on the local settings of the other wiki
  • "{{NAMESPACE:ab:}}" → "" [19] - refers to the main page of the other wiki, returns the same
  • "{{NAMESPACE:help:a[b}}" → "" [20] - if it is not a valid page name the empty string is returned
  • "{{NAMESPACE:}}" → "" [21] - ditto
  • "{{NAMESPACE:help:}}" → "" [22] - ditto, a namespace name with colon is not a valid page name
  • "{{PAGENAME}}" → "Page name" [23]

Removing the namespace:

  • "{{PAGENAME:abc:def}}" → "Abc:def" [24]
  • "{{PAGENAME:help:def}}" → "Def" [25]
  • "{{PAGENAME:ab:help:def}}" → "help:def" [26] - removes the interwiki prefix only; removing the namespace would depend on the local settings of the other wiki
  • "{{PAGENAME:help:a[b}}" → "" [27] - if it is not a valid page name the empty string is returned
  • "{{PAGENAMEE:help:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}" → "Abcdefghijklmnopqrstuvwxyz%7E_!%22$%27()*,-./0123456789:;%3D%3F@ABCDEFGHIJKLMNOPQRSTUVWXYZ%5C%5E_%C2%B1%C3%97%E2%80%A2%C3%A9" [28]

Removing the namespace, and, for namespaces in which the subpage feature is enabled, going up one level:

Return the name after the last slash for namespaces in which the subpage feature is enabled, remove only the namespace in other namespaces:

The namespace and title of the associated content page:

  • "{{SUBJECTPAGENAME:help:a b}}" → "Help:A b" [71]
  • "{{SUBJECTPAGENAME:help talk:a b}}" → "Help:A b" [72]
  • "{{SUBJECTPAGENAMEE:help:a b}}" → "Help:A_b" [73]
  • "{{SUBJECTPAGENAMEE:help talk:a b}}" → "Help:A_b" [74]

The namespace and title of the associated talk page:

  • "{{TALKPAGENAME:help:a b}}" → "Help talk:A b" [75]
  • "{{TALKPAGENAME:help talk:a b}}" → "Help talk:A b" [76]
  • "{{TALKPAGENAMEE:help:a b}}" → "Help_talk:A_b" [77]
  • "{{TALKPAGENAMEE:help talk:a b}}" → "Help_talk:A_b" [78]

Page titles containing certain characters, such as single quotes (') or asterisks *, may produce unexpected results when handled with these magic words, e.g. {{PAGEINSCATEGORY:{{PAGENAME}}}}. See bugs 14779, 16474.

Restrictions

Special characters

The following characters (the configuration is made in "$wgLegalTitleChars") are not allowed in page titles:

# < > [ ] | { }

The non-printable characters with values 0 through 31, and the "delete" character 127 in ASCII are also not allowed.

The reasons for disallowing these characters include:

  • [, ], {, }, and | have special meaning within MediaWiki's syntax, which are processed before the pagename is determined. For example, {{tc}} refers to Template:Tc, not a page called {{tc}}, and [[tc]] is a link to page Tc, not a page called [[tc]].

Testing whether a page name is allowed can be done by trying to create a link to it (see also below):

  • "[[a{b]]" → "[[a{b]]" [79]
  • "[[a}b]]" → "[[a}b]]" [80]
  • "[[a[b]]" → "[[a[b]]" [81]
  • "[[a]b]]" → "[[a]b]]" [82]
  • "[[a<b]]" → "[[a<b]]" [83]
  • "[[a>b]]" → "[[a>b]]" [84]
  • "[[a#b]]" → "a#b" [85] (link to anchor b on page a)
  • "[[#b]]" → "#b" [86] (link to anchor b on the current page)
  • "[[a|b]]" → "b" [87] (piped link to page a)
  • "[[a+b]]" → "a+b" [88]
  • "[[a\b]]" → "a\b" [89]
  • "[[a%b]]" → "a%b" [90]
  • "[[a%2f]]" → "a/" [91] (%2f is the code for a slash, therefore a page name containing it is not possible)
  • "[[:/b]]" → "/b" [92] (the page name /b is allowed, but the link requires a colon)
  • "[[.]]" → "[[.]]" [93]
  • "[[..]]" → "[[..]]" [94]
  • "[[a]]" → "a" [95]
  • "[[.a.]]" → ".a." [96]
  • "[[./]]" → "[[./]]" [97]
  • "[[a./]]" → "a./" [98]
  • "[[a_b]]" → "a_b" [99] (underscore and space are equivalent)
  • "[[a  b]]" → "a b" [100] (no consecutive spaces in page names, in links they are ignored)

In the default setup for MediaWiki prior to version 1.8.3., the + character is also not allowed in page titles. It allows '+' by default as of 1.8.3. For older versions, the '+' can be added to $wgLegalTitleCharshttp://www.mediawiki.org/wiki/Manual:$wgLegalTitleChars with

$wgLegalTitleChars .='+';

in LocalSettings.php

The backslash (\) gives problems: depending on where the pagename is used, the backslash may or may not be converted to a slash (/).

See also Wikipedia:Naming_conventions_(technical_restrictions), and the {{DISPLAYTITLE}} magic word.

Forward slash (/)

Depending on the namespace and the settings, a forward slash in the pagename provides special functionality: see subpage feature.

Due to the subfeature for linking to a subpage, linking from a namespace where the subpage feature is enabled to a page in the main namespace with a name starting with "/", requires a workaround: put a colon in the link, between "[[" and the pagename.

Namespace prefixes

The first part of a page name may not coincide with a generic namespace name with colon that is automatically converted to another prefix. As an example, the name "Project: A-Kon" is not possible, for it will be automatically linked to "Meta:A-Kon".

If the first part of a page name coincides with a namespace prefix that is not converted, this page is in the corresponding namespace, and a space after the colon is automatically removed, so it is not possible to have a page with this name in the main namespace, or to have a space after the colon. For example, an article in the English Wikipedia about the film Help: A Day in the Life has to be called Help:A Day in the Life, and similarly for an article about the book called Wikipedia: The Missing Manual or about a book called Talk: Secrets are Bad. Also, in those cases the pages are in the wrong namespace, which may be inconvenient in searching or displaying a list of pages, and in displaying recent changes or user contributions etc. in a particular namespace. In addition, in the last case there is no link to the Talk page about the article, for the page itself is a Talk page. (As explained above, such names will not work on projects where they are converted into a different name; e.g. in the German Wikipedia the second page name will be converted to "Diskussion:Secrets are Bad".) As a workaround a page title can be prefixed with "&nbsp;", displayed as a blank space.

Prefixes referring to other projects or pseudo-namespaces

A page name cannot start with a prefix that is in use to refer to another project, including language codes, e.g. "en:" (see Wikimedia wikis), or one of the pseudo-namespaces "Media:" and "Special:".

Thus e.g. an article about the album "Q: Are We Not Men? A: We Are Devo!" or the movie Species: The Awakening can not have that exact name. Attempts to create the articles, whether by a link or putting a URL in the address bar, leads to Wikiquote or Wikispecies, respectively. Again, as a workaround the title can be prefixed with "&nbsp;", displayed as a blank space.

With regard to using the prefix of the project itself there is no consistency: a name like en:a cannot be used on en: (try w:en:a and w:en:en:a), while "Q: Are We Not Men? A: We Are Devo!" can exist on Wikiquote: q:Q: Are We Not Men? A: We Are Devo!.

Maximum page name length

The maximum page name length for new uploads is 240 bytes (excluding the namespace prefix). Be aware that non-ASCII characters may take up to four bytes in UTF-8 encoding, so the total number of characters you can fit into a title may be less than 240 depending on the language it's in.

Note that the limit was 255 bytes until late 2011 - see bugzilla:30202. Existing filenames may be up to 255 bytes, but new uploads are restricted to 240.

First character

The first character of a page name cannot be a colon (:), space ( ), or underscore (_). A slash gives a mild complication, see above. A percent sign (%) gives complications because depending on what follows in a link, the link may not work or interpret the sign together with some following characters as a code for a character: % and %1 work normally (but perhaps there are complications with such page names), while [[%23]] gives #, [[%234]] gives #4 and [[%2542]] gives [[%2542]] (see also below).

Spaces vs. underscores

In page names a blank space is equivalent with an underscore. A blank space is displayed in the large font title at the top of the page, the URLs show an underscore. See also below.

Case-sensitivity

If two cases exist for the letters used in a page name, as in the case of letters of the Latin, Greek, Cyrillic, and Armenian alphabets, the following applies.

Namespace prefixes

All characters of namespace prefixes are case-insensitive. The canonical#canonical form, shown in large font as page header, and in URLs generated by the system, is often with one capital; exceptions are e.g. MediaWiki and Hilfe Diskussion.

Case-sensitivity of the first character

The first character of the page name (after the namespace prefix, if applicable) may or may not be case-sensitive, depending on the project, but in some namespaces it's always case-insensitive, in particular special pages and usernames (see mw:Manual:$wgCapitalLinkshttp://www.mediawiki.org/wiki/Manual:$wgCapitalLinks). [[Help:page name]] gives on this project: Help:page name. If the first character of the page name is case-sensitive this is a link (to a different page), otherwise it is bold (a self link to this page). Any result of Special:Export shows <case>case-sensitive</case> or <case>first-letter</case>, respectively.

On Wikimedia projects currently the first character of the page name is case-insensitive, except in all Wiktionaries. Compare e.g. wikt:de:A and wikt:de:a.

Where the first character is case-insensitive, the canonical form is with a capital.

Note that this only applies to the first character of the page name. In the case of a "prefix" that is not defined for the software, the case-insensitivity does not apply to the first character after this "prefix", e.g. Template:H:h Help and Template:H:H Help are distinguished.

Case-sensitivity of the file name extension of an image

Note that even the file name extension of an image is case-sensitive: compare image:Stop_sign_us.jpg and image:Stop_sign_us.JPG

Ignored spaces/underscores

Spaces/underscores which are ignored:

  • those at the start and end of a full page name
  • those at the end of a namespace prefix, before the colon
  • those after the colon of the namespace prefix
  • duplicate consecutive spaces

Some show up in the link label, e.g. [[___help__ :_ _template_ _]] becomes ___help__ :_ _template_ _, linking to Help:Template.

However, a space before or after a "normal" colon makes a difference, e.g. MediaWiki User's Guide: Editing overview and MediaWiki User's Guide : Editing overview, and MediaWiki User's Guide:Editing overview are all distinguished, because "MediaWiki User's Guide:" is a pseudo-namespace, not a real one.

Coding of characters

A page name cannot contain e.g. %41, because that is automatically converted to the character A, for which %41 is the code. [[%41]] is rendered as A. Similarly %C3%80 is automatically converted to the character À. [[%C3%80]] is rendered as À. The URL of the page is http://meta.wikipedia.org/wiki/%C3%80. One can argue what is the real name of the page, %C3%80 or À (a user will say the latter), but anyway there can not be distinct pages with these names.

Canonical form

  • "{{FULLPAGENAME::project:abc  def__ghi&j / k}}" gives "Meta:Abc def ghi&j / k" [101] - leading colon is removed, the first letter of the namespace and that of the remaining page name is capitalized (and the generic namespace name is replaced by the actual one), underscores are replaced by spaces, consective spaces are replaced by a single one

The inclusion tag for a non-existing page shows a link with the canonical form of the page name:

Compare with ordinary links:

These work like piped links, e.g. [[Qwsazx|qwsazx]]; in this case the conversion shows up on the referring page only when pointing at it: in the pop-up and in the status bar (if applicable for the browser); whether the target is a redirect, and what the final target is, is not shown at all.

An attempt to include a page from another project results in just displaying the wikitext, e.g. {{en:qwsazx}}; ordinary interwiki links do not show existence and do not show a canonical form in the hover box or status bar: en:project:qwsazx. The same applies if interwiki link style is used for a link to a page in the same project: m:project:qwsazx.

Checking the validity of a page name

Checking the validity of a page name:

  • "{{PAGENAME:a[b}}" → "" [108] - if it is not a valid page name the empty string is returned
  • "{{#titleparts:a[b|1|26}}" gives "a[b" [109] - if it is not a valid page name the 26th part (which should be empty as 25 is the maximum) gives the whole string
  • "[[a[b]]" → "[[a[b]]" [110] - if it is not a valid page name no link is produced


Alphabetic order

The system applies alphabetical order only in page names, namely in the following features:

They are in Unicode order: the range 32-127 corresponds to ASCII. For more information on non-ASCII special characters, see Special characters.

Thus we have the following partial list showing the order:

!"#$%&'()*+,-./0123456789:;<=>?@
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'
abcdefghijklmnopqrstuvwxyz{|}~
¡¢£¤¥¦§¨©ª«­®¯°±²³´µ•¸¹º»¼½¾¿
ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ
ĀāĂ㥹ĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĸĹĺĻļĽľĿŀŁłŃńŅņŇňʼnŊŋ
ŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵŶŷŸŹźŻżŽžſ
ǺǻǼǽǾǿ΄΅Ά·ΈΉΊΌΎΏΐ
ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫάέήίΰ
αβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ

Note in particular that "Z" comes before "a", and "z" before "é". The blank space within a page name is treated as an underscore, and therefore comes after the capitals, and before the lower case letters. However, a "blank space" after the name comes before any character. Sometimes a special character looks like a regular letter, but has a special code anyway.

Thus we have the order PC, PCX, PC Bruno, PCjr, Κύρια Σελίδα.

See also:

Conversion of spaces to underscores etc.

There is no feature for just conversion of spaces to underscores and of special characters to escape codes, but there are two features for doing this in combination with something else: localurl (see Help:Variable) and PAGENAMEE.

Most needs for conversion are covered by these, but e.g. in a template one cannot link to a page with a given name {{{1}}} on a project with a different $wgScript.

Variables PAGENAME and PAGENAMEE in URLs

{{NAMESPACE}}:{{PAGENAME}} and {{NAMESPACE}}:{{PAGENAMEE}} give for this page Help:Page name and Help:Page_name, respectively. For a page in the main namespace, the page name is prefixed with a colon.

Example:

http://meta.wikimedia.org/w/index.php?title=Special:Whatlinkshere&target={{NAMESPACE}}:{{PAGENAMEE}}

gives

http://meta.wikimedia.org/w/index.php?title=Special:Whatlinkshere&target=Help:Page_name

Within localurl and fullurl, {{PAGENAME}} should be used in the first part (because it is converted by localurl and fullurl), or {{PAGENAMEE}} in the second part:

  • "{{fullurl:Special:Allpages/{{PAGENAME:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}}}" gives "//meta.wikimedia.org/wiki/Special:Allpages/Abcdefghijklmnopqrstuvwxyz%7E_!%22$%27()*,-./0123456789:;%3D%3F@ABCDEFGHIJKLMNOPQRSTUVWXYZ%5C%5E_%C2%B1%C3%97%E2%80%A2%C3%A9" [111]
  • "{{fullurl:Special:Allpages|&from={{PAGENAMEE:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}}}" gives "//meta.wikimedia.org/w/index.php?title=Special:Allpages&&from=Abcdefghijklmnopqrstuvwxyz%7E_!%22$%27()*,-./0123456789:;%3D%3F@ABCDEFGHIJKLMNOPQRSTUVWXYZ%5C%5E_%C2%B1%C3%97%E2%80%A2%C3%A9" [112]

Wrong:

  • "{{fullurl:Special:Allpages|&from={{PAGENAME:abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^_±×•é}}}}" gives "//meta.wikimedia.org/w/index.php?title=Special:Allpages&&from=Abcdefghijklmnopqrstuvwxyz~ !"$'()*,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\^ ±×•é" [113]

See also


Links to other help pages

Help contents
Meta · Wikinews · Wikipedia · Wikiquote · Wiktionary · Commons: · Wikidata · MediaWiki · Wikibooks · Wikisource · MediaWiki: Manual · Google
Versions of this help page (for other languages see further)
What links here on Meta or from Meta · Wikipedia · MediaWiki
Reading
Go · Search · Stop words · Namespace · Page name · Section · Backlinks · Redirect · Category · Image page · Special pages · Printable version
Tracking changes
Recent changes (enhanced) | Related changes · Watching pages · Diff · Page history · Edit summary · User contributions · Minor edit · Patrolled edit
Logging in and preferences
Logging in · Preferences · User style
Editing
Starting a new page · Advanced editing · Editing FAQ · Edit toolbar · Export · Import · Shortcuts · Edit conflict · Page size
Referencing
Links · URL · Piped links · Interwiki linking · Footnotes
Style and formatting
Wikitext examples · CSS · Reference card · HTML in wikitext · Formula · List · Table · Sorting · Colors · Images and file uploads
Fixing mistakes
Show preview · Testing · Reverting edits
Advanced functioning
Expansion · Template · Advanced templates · Parser function · Parameter default · Variable · System message · Substitution · Array · Calculation · Embed page
Others
Special characters · Renaming (moving) a page · Preparing a page for translation · Talk page · Signatures · Sandbox · Legal issues for editors
Languages: English  · français · italiano · 日本語 · русский · shqip