MediaWiki

From Citizendium
Revision as of 16:02, 20 April 2008 by imported>J. Noel Chiappa (→‎Namespaces: Purpose of talk: namespace)
Jump to navigation Jump to search
This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.

MediaWiki is a free software suite (system) which is for wikis, i.e. WWW-based systems for collaborative development of interlinked documentation. More simply put, it provides a web site with content which the users can modify via their browsers.

It was originally developed to run Wikipedia, the popular free online encyclopaedia; it is now freely available, and many other wiki sites (including Citizendium) use it. MediaWiki is now the most popular software used to run wikis on, and many organizations now use wikis internally, a development which is partially due to the free availability of relatively high-quality software to provide this capability.

Technical concepts

Pages

Information in in MediaWiki is organized into pages, which are the basic large-scale unit of information. A page is roughly equivalent to a file in most operating systems. A page is a somewhat richer object than a plain file in these systems, because it has a history which is an integral part of it; the history records every single change made to a page, along with the identity of the person who made the change.

As is probably obvious by now, a WikiMedia page has nothing to do with pages in popular editors such as Microsoft Word, or the physical sheets of paper which are the progenitors of pages in editors. It does have more of a connection to the concept of 'page' in the WWW, where it again means an integral unit of data - although without the additional 'history' semantics which the 'page' object has in MediaWiki.

Markup

MediaWiki uses a particular kind of markup - i.e. syntax for doing certain things. To link to another page (e.g. "foo"), a user needs to write [[foo]]; to produce text in italic, it is necessary to write ''foo'', etc.

Note that that is a totally different markup syntax from that used elsewhere, in particular HTML (the markup syntax used for WWW pages), and the syntax used by SMF, the most popular software suite for running online forums (which is about as ubiquitous in forums as MediaWiki is in wikis).

Namespaces

If you consider all the pages in a particular wiki, generally they are grouped into namespaces, i.e. major divisions of the set of pages. Each namespace generally has a particular purpose. E.g. "User:" pages are one namespace, "User_talk:" pages are another, "Talk:" pages (i.e. basic talk pages, used by the people working on an article to discuss its contents) are a third, and "Image:" is yet another. Depending on how the MediaWiki installation has been customized at each site, there are about 20 all told, generally in pairs: "<foo>:" and "<foo>_talk:".

The end of the name of a namespace is almost always delineated with a ":" (see examples above), and the full name of a page in a Wiki is <namespace>:<page>, e.g. "Talk:Hokusai". The main namespace is special - a pagename with no "<namespace>:" in front of it is taken to refer to a page in the main namespace.

Note that "foo:name" and "bar:name" refer to separate pages, so [[User:Test]] and [[Talk:Test]] take you to separate pages.


Templates

Templates are a way of putting commonly used groups of MediaWiki and HTML markup in a page, and including those sequences (via a process called transclusion, which includes the contents of those pages on the pages which refer to the template). In MediaWiki markup, when a template is used, the reference to it looks like {{foo}}.

Subpages

A subpage is basically just a ordinary MediaWiki page with a "/" in its title. Subpages, which have names of the form "Foo/Bar", are all associated with a particular top-level page, which is the one with the name consisting of the part of the subpage's name before the "/" (in this example, "Foo"). (And of course the process is recursive, so that "Foo/Bar/Zap" is a subpage of "Foo/Bar".)

Other than being related to a particular top-level page, there is almost no real difference in how they are actually handled by MediaWiki. (See this page for more details. In fact, depending on how MediaWiki is configured, and which namespace they are in, the MediaWiki software may not even recognize subpages at all in that namespace.)

History

The original software running Wikipedia was called UseModWiki, developed by Clifford Adams. This was adapted in 2001 by Adams from the original CamelCase-style wiki links, like this:

PhiloSophy

to support the current linking standard of two square brackets, like this

[[Philosophy]]

later on in 2001, Magnus Manske rewrote the software in order to support a MySQL backend. Some months following that, Lee Daniel Crocker again rewrote the software, and it took on the form it largely continues to have today.[1] The software was not named "MediaWiki" until 2003.

External links

  1. As a point of trivia, it is interesting to note that both Manske and Crocker were active participants in Nupedia as well as Wikipedia.