Help:Namespaces

From mediawiki.org
Jump to navigation Jump to search
PD Note: When you edit this page, you agree to release your contribution under the CC0. See Public Domain Help Pages for more info.
PD

Pages on a MediaWiki wiki are grouped into collections called “namespaces” which differentiate between the purpose of the pages at a high level. Pages in certain namespaces can also have special properties or behave differently when they interact with other pages.

Namespaces are indicated in page titles by prefixing the page name with <namespace>:, so the prefix Help: in this page's title (Help:Namespaces) indicates that this page is in the Help namespace. Each namespace is identified by a number and a name, which can be translated and can also have some aliases.

A page whose name is not prefixed by a namespace lies in the mainspace. Note, however, that colons and prefixes can also appear in page titles without indicating a namespace: the page Foo:Namespaces is a page located in the mainspace because the namespace “Foo” does not exist. Similarly the page Help:Foo:Namespaces is in the “Help” namespace.

Standard namespaces

The standard MediaWiki installation has sixteen namespaces that can contain user-generated content; there are also two special namespaces that contain pages created “on the fly” by the MediaWiki software. The standard namespaces are organized in pairs, with each pair containing a “subject namespace” and a “discussion namespace.” The namespaces are numbered from zero such that all subject namespaces have even indices and all talk namespaces have odd indices.

Media

This namespace is used for direct linking to media files: the link [[Media:MediaWiki-2020-logo.svg]] links to just the image rather than the image description page, which would be [[:File:MediaWiki-2020-logo.svg]].

Special

This namespace is used to group special pages, reports and interfaces that are generated “on demand” by MediaWiki and that are not directly editable. It is not possible to create pages in this namespace except by modifying or extending the MediaWiki software.

(Main)

The namespace that has no prefix separated by a colon. Commonly called the “main namespace” or “mainspace”. This namespace typically contains the bulk of the content pages in a wiki. This namespace generally has no special properties.

Talk

The “Talk” namespace is the discussion namespace attached to the mainspace. It has no special properties.

User

Each user has a corresponding page in the “User” namespace, which is linked to from edit histories, watchlists, recent changes, etc.; wherever an individual user is uniquely identified.

This page and subpages of it can be used by users to record information about themselves or to test and draft new content. Pages of the form User:UserName/Foo.js or User:UserName/Foo.css can only be edited by the user themselves or by interface administrators (or administrators before MediaWiki 1.32).

User talk

This namespace is the talkspace associated with the “User” namespace. Pages in this namespace are mainly used to leave messages for particular users or inform them of discussions that may be of interest to them. To facilitate this, when a page User talk:UserName is edited, whenever the user UserName loads a page, a notice is displayed at the top of the page informing them of the edit:

This notice continues to appear until the user loads their user talk page to read the message.


Tools.svg Tip for wiki admins: Extensions like Echo may override this behavior.

Project

This namespace is normally used for meta-discussions related to the operation and development of the wiki. It automatically redirects the user to a namespace labeled after the wiki's name, example: [[Project:Licenses]] → [[Wikipedia:Licenses]].

Project talk

This is a talk namespace that is normally used for discussions related to the associated project pages. It has no special properties.

File

MediaWiki-2020-logo.svg

The “File” namespace is used to store metadata for images, videos, sound files and other media accessed via the “Media” namespace. Each file has a corresponding page in the “File” namespace, which is often used to hold licensing data. Linking directly to a page in this namespace instead includes the media file inline in the page: [[File:MediaWiki-2020-logo.svg|right]] produces the image to the right. See Help:Images for more details of this link syntax.

To create an internal link to the file page, you need to add a colon to the front of the namespace: [[:File:MediaWiki-2020-logo.svg|right]] produces File:MediaWiki-2020-logo.svg. The standard MediaWiki installation has alias “Image” for “File” namespace – See Namespace aliases.

For linking media files directly, bypassing the description page, see Media namespace.

File talk

This is a talk namespace that is normally used for discussions related to the associated media files. It has no special properties.

MediaWiki

The “MediaWiki” namespace is used to hold system messages and other important content. For instance, the page MediaWiki:Edit (or MediaWiki:Vector-view-edit in the default “Vector” skin) contains the text that fills the “Edit” tab at the top of every page. If that page exists, it overrides the default content, which is “Edit.” Similarly, MediaWiki:Common.css is the system message that holds the CSS code that is loaded for all users for each page. It has the special property that the entire namespace can only be edited by users with the (editinterface) user right. Since MediaWiki 1.32, JavaScript and CSS pages needs also editinterface and (respectively) editsitejs or editsitecss rights to edit.


MediaWiki talk

This is a talk namespace that is normally used for discussions related to the associated system messages. It has no special properties.

Template

The “Template” namespace is used to hold templates, blocks of text or wikicode that are intended to be transcluded into several other pages. To facilitate this it has the special property that it is the default namespace for transclusions: the wikicode {{Foo}} is equivalent to {{Template:Foo}}.

Template talk

This is a talk namespace that is normally used for discussions related to the associated template pages. It has no special properties.

Help

The “Help” namespace is usually used to hold help files, instructions and “how-to” guides. It has no special properties. See Help namespace content.

Help talk

This is a talk namespace that is normally used for discussions related to the associated help pages. It has no special properties.

Category

The “Category” namespace contains categories, dynamic lists of other pages. To facilitate this, linking directly to a category page does not output an inline link, but instead includes the page into the associated category page. So the code [[Category:Help]] causes a category link to appear at the bottom of the page (at the bottom in the box marked “Categories”). Clicking on that link takes you to the category page, where this page is visible in the category list.

To create an inline link to a category page, you need to add a colon to the front of the namespace: [[:Category:Help]] produces Category:Help. See Help:Categories for more details on category link syntax.

Category talk

This is a talk namespace that is normally used for discussions related to the associated category pages. It has no special properties.

Localisation

Namespace names and aliases can be localized by developers. To request the localization of namespace names, please file a MediaWiki internationalization task at Phabricator . In the description of the task, you should provide translations of all the namespaces in the table to the right, as well as any additional namespaces on your wiki (such as "Module" or "Gadget").

If the site's language is Chinese, then namespace names are translated only when the content is converted and there is no __NOTITLECONVERT__ or __NOTC__ magic words on a page.

Renaming namespaces

Number Canonical name Localized name
-2 Media Media
-1 Special Special
0 (Main)
1 Talk Talk
2 User User
3 User talk User talk
4 Project Project
5 Project talk Project talk
6 File File
7 File talk File talk
8 MediaWiki MediaWiki
9 MediaWiki talk MediaWiki talk
10 Template Template
11 Template talk Template talk
12 Help Help
13 Help talk Help talk
14 Category Category
15 Category talk Category talk

Namespace names can be translated into languages other than English and individual namespaces can be renamed, as set by a wiki's system admins (using Namespace manager). These names are known as the 'localized' namespace names. However, all namespaces have a 'canonical name', the original English name which will work on any installation of MediaWiki. So linking to User:Foo will always locate the user page for the user foo, whether the wiki is in French (where the localized name would be Utilisateur:Foo), Russian (Участник:Foo), or Hindi (सदस्य:Foo).

The canonical namespace names are given in the table to the right along with their localized names on this wiki.

Namespace aliases

On some wikis there are also namespace aliases: alternative names that will also be resolved to the localised names. For instance, a wiki might define "T" as an alias for Template, such that typing T:Foo is equivalent to Template:Foo, saving a few characters and seconds. An actual example would be on the English Wikipedia, where "WP" is an alias for Project, which is the namespace "Wikipedia".

By default, "Image" is an alias for File, so [[Image:MediaWiki-2020-logo.svg]] is equivalent to [[File:MediaWiki-2020-logo.svg]].

Custom namespaces

See Manual:Using custom namespaces for more information.

Some wikis may wish to organize their content in ways that do not fit into this standard set of namespaces. A wiki may define additional namespaces to facilitate this; these namespaces behave exactly like normal namespaces, and generally have indices greater than or equal to 100. These custom namespaces generally have no special properties.

Identifying namespaces

There are a number of ways by which the namespace of a particular page can be identified:

Magic words

The magic word {{NAMESPACE}} returns the value of the namespace the page is in.

To refer to another namespace, use {{ns:<name>}} (e.g. {{ns:Project}}), or {{SUBJECTSPACE}} / {{TALKSPACE}} to refer to the namespace paired with the current one.

JavaScript

The JavaScript variable wgCanonicalNamespace contains the full namespace name. The variable wgNamespaceNumber contains the numerical index of the namespace.

CSS

The ‎<body> tag of the HTML page output is given two CSS classes that vary by namespace: A class ns-#, where # is the index of the namespace, and ns-XXX, where XXX is "subject" for all subject namespaces , "special" for pages in the Special namespace, and "talk" for talk namespaces . So CSS code such as the following can be used to change the appearance of an object based on its namespace:

.ns-subject a {   /* Almost all links on subject pages to be green. */
    color: #0f0;
}
.ns-talk a {      /* Links on talk pages to be blue. */
    color: #00f;
}
.ns-3 a {         /* and links on user talk pages to be red */
    color: #f00;
}

You can get a complete list of all namespace names of a MediaWiki installation from the Search results page Advanced tab, or from any recent changes page such as contributions or watchlist in its options box, in a drop-down list. For the system properties of each namespace, use the MediaWiki API :

API


See also