MediaWiki (+Semantic extensions)
Submit a tool

Goal

To establish a free and participatory web-based knowledge repository that can function both as an archive and a research, work and think space, with diverse text forms (from work notes to Wikipedia-like encyclopedic pages) hyperlinking and semantically relating (meta)information, generating multiple navigation options, data visualizations and format outputs.

Description of the tool

MediaWiki is a free and open-source wiki engine. It was developed for use on Wikipedia in 2002...and is still used in almost all other Wikimedia Foundation websites, including Wiktionary, Wikimedia Commons and Wikidata; these sites continue to define a large part of the requirement set for MediaWiki.

MediaWiki is written in the PHP programming language and stores all text content into a database. The software is optimized to efficiently handle large projects, which can have terabytes of content and hundreds of thousands of hits per second. 

Another major aspect of MediaWiki is its internationalization; its interface is available in more than 300 languages. The software has more than 1,000 configuration settings and more than 1,800 extensions available for enabling various features to be added or changed.

Semantic MediaWiki is an extension to MediaWiki that allows for annotating semantic data within wiki pages, thus turning a wiki that incorporates the extension into a semantic wiki. Data that has been encoded can be used in semantic searches, used for aggregation of pages, displayed in formats like maps, calendars and graphs, and exported to the outside world via formats like RDF and CSV.


Steps of application

Download the MediaWiki tar file from the official download page. Generally, if you're using a production environment, you want to be running the latest stable release, which is mediawiki-1.35.1.tar.gz.

To download MediaWiki 1.35.1, which is the latest stable release version, to a *nix machine you can use the following command:

wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.1.tar.gz

Alternatively, using cURL:

curl -O https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.1.tar.gz

The downloaded files are in .tar.gz format, so they will need to be uncompressed before use. This can be done locally (and then uploaded via FTP) or directly on your server. This is usually done with software such as 7-Zip (free), WinZip, WinRAR or IZArc (free) on Windows. On Linux and Mac OS X, you can untar the file using this command:

tar xvzf mediawiki-*.tar.gz

If you untar the archive as root, you should probably change the ownership afterwards with chown, otherwise the files will end up owned as user # 1000, which may or may not be what you want.

Upload files to your server

If you have not already uploaded the files to your web server, do so now.

Upload the files to your web server's web directory either by:

  1. directly copying the unzipped folder or
  2. by using an FTP client such as FileZilla (Open Source Software, Windows, OSX and Linux) or Cyberduck (Also OSS, Windows and OSX).
  3. by using cPanel File Manager (see below)

If your upload tool has a "change file names to lowercase" option, then you must disable this.

If you installed Apache, the correct directory is specified in your httpd.conf file (it's the DocumentRoot directive, typically /var/www/ or <apache-folder>/htdocs). Note: This changed in Ubuntu 14.04 with Apache 2.4.7 where the primary configuration file for Apache server settings and directories is /etc/apache2/apache2.conf.

If you are using a Linux or Unix server you can instead copy the files to any directory on your server and then make a symbolic link to that folder from your web server's web directory.

Rename the uploaded folder to whatever you would like to have in the URL. If your web server is running as http://localhost for example, renaming to /w/ directory would mean you would access your wiki at http://localhost/w/index.php. Do not use /wiki/ if you want to use it as a Short URL. (And don't set up short URLs until you have run the installation script.)

Note that in certain cases, like when a local repository is set-up using Git, on browsing to index.php the Linux server might show the "500 Internal server Error". This is possibly a permissions error which can be resolved on changing the file and directory permissions by running the following command in SSH after changing directory to "w":

find . -type f -exec chmod 644 {} \;

find . -type d -exec chmod 755 {} \;


This (renamed) folder will now be referred as <MediaWiki-folder>.

cPanel File Manager

cPanel is a popular interface used by many web hosts. This method is efficient because the files are uncompressed on the server itself.

  • Navigate to the directory where you want your wiki folder.
  • Upload the mediawiki-1.xx.x.tar.gz file. You may need to hit "Reload" to see it.
  • Extract the mediawiki-1.xx.x.tar.gz file. Reload again.
  • Confirm that the mediawiki-1.xx.x folder is present.
  • Delete the tar.gz file.
  • Rename the mediawiki-1.xx.x folder to w.
Create a database

If you already have a database server and know the root password for it, the MediaWiki installation script can create a new database for you. If this is the case, you can skip to the Run the installation script section below. If you don't know the root password, for example if you are on a hosted server, you will have to create a new database now. Currently, you must use SQLite, MariaDB/MySQL or PostgreSQL to store the actual contents of your wiki. If you're unsure which database to choose, use MariaDB as it is the one best supported by MediaWiki.

SQLite

SQLite is a stand-alone database library that stores the database contents in a single file. If PHP has the pdo-sqlite module, no further setup is required.

On the installation page, you will need to choose a database name (which can be anything) and the SQLite database directory. For the database directory, the installer will attempt to use a subdirectory outside of the document root and create it if needed. If this directory is not safe (for example, web-readable), change it manually to avoid making it accessible to everyone on the web.

MariaDB/MySQL

MediaWiki will ask you for database and user name and will attempt to create them if they don't already exist. If doing so from MediaWiki is impossible, you can do this using various control panels such as PhpMyAdmin, which are often available from shared hosts, or you may be able to use ssh to login to your host and type the commands into a MySQL prompt. See the corresponding documentation. Alternatively, contact your host provider to have them create an account for you.

CREATE DATABASE wikidb;

CREATE USER 'wikiuser'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON wikidb.* TO 'wikiuser'@'localhost' WITH GRANT OPTION;


If your database is not running on the same server as your web server, you need to give the appropriate web server hostname — mediawiki.example.com in the example below — as follows:

GRANT ALL PRIVILEGES ON wikidb.* TO 'wikiuser'@'mediawiki.example.com' IDENTIFIED BY 'password';

Warning

Warning:

MySQL/MariaDB on UNIX/Linux logs all queries sent to it to a file, which will include the password you used for the user account. If this concerns you, delete your .mysql_history file after running these queries. This file may be found in your home directory (~/.mysql_history).

Run the installation script

Once all of the above steps are complete, you can complete the installation through a web browser by going to the index.php URL in your browser — check the instructions mentioned in Manual:Config script.

The installation tool will prompt you to download the LocalSettings.php file, and to save this as <MediaWiki-folder>/LocalSettings.php.

Alternatively, you can run the command-line installer or CLI: php maintenance/install.php adding the appropriate configuration parameters.

for more information: https://www.mediawiki.org/wiki/Manual:Installing_MediaWiki


Background

A wiki is a hypertext publication collaboratively edited and managed by its own audience directly using a web browser. Ward Cunningham, the developer of the first wiki software, WikiWikiWeb, originally described wiki as "the simplest online database that could possibly work." "Wiki" is a Hawaiian word meaning "quick."

The online encyclopedia project Wikipedia is the most popular wiki-based website, and is one of the most widely viewed sites in the world, having been ranked in the top ten since 2007.

MediaWiki was originally developed by Magnus Manske and improved by Lee Daniel Crocker. 

It was developed for use on Wikipedia in 2002, and given the name "MediaWiki" in 2003.

Its development has since then been coordinated by the Wikimedia Foundation.

MediaWiki has been used as a knowledge management and content management system on many thousands of websites, public and private, including the websites of Free Software Foundation, P2P Foundation, Fandom and wikiHow. UN agencies like UNDP and INSTRAW (UN Women) implemented MediaWiki because "this software runs Wikipedia and is therefore guaranteed to be thoroughly tested, will continue to be developed well into the future..." 

It is also used by communal projects like the NotFoundOn.org with aims:
“to provide a space run by feminist queer bodies to share, record and connect art and social projects; to question the platforms we participate in online the culture and politics of commercial & non commercial space”.

Semantic MediaWiki was initially released in 2005 by 3 developers inside of an EU project, and was later supported by the Karlsruhe Institute of Technology. Currently has over ten developers, and is in use on hundreds of sites. In addition, a large number of related extensions have been created that extend the ability to edit, display and browse through the data stored by SMW: the term "Semantic MediaWiki" is sometimes used to refer to this entire family of extensions.
Semantic MediaWiki has grown a long way from its roots as an academic research project. It is currently in active use in hundreds of sites, in many languages, around the world, including Fortune 500 companies, biomedical projects, government agencies and consumer directories. 

Prominent websites on the topic of commons among many using Semantic MediaWiki:  
#1 RemixTheCommons.org is a collaborative and evolutive multimedia project. It aims to document and illustrate the key ideas and practices of the commons movement, including through the creative process of the project itself. Initiated by Frédéric Sultan.
#2 teixidora.net (spanish: weaver) is an informative, participatory initiative to collect knowledge generated in talks and events, sharing documentation, exploring connections, relating debates and activity among each other and mapping actors and the topics that intersect, with an emphasis on ethical and emancipating perspective. More than 400 event sessions have been documented since 2016, generating a cartography of topics, projects, organisations, people and publications mentioned in them; it combines collaborative etherpad documents, semantic wiki, automatic structured text extraction bots.
Initiated by Mònica Garriga and David Gómez, currently operates as Cooperative Activity Group of the multistakeholder cooperative femProcomuns. 


Context of origin

Visual representation

Suggestions

MediaWiki (or Semantic MediaWiki) should be picked up by a cultural organization-institution that has a strong commitment to participation processes and open content publishing, possibly benefiting from multiple languages and voluntary contributors. Ideally it should be introduced at the start of the project and presented to all participants that could potentially contribute.

Credits

Wikimedia Foundation. MediaWiki original authors: Magnus Manske, Lee Daniel Crocker. Later, Brion Vibber, the Chief Technical Officer of the Wikimedia Foundation, took up the role of Release Manager, and the most active Developer.


Semantic MediaWiki was initially created by Markus Krötzsch, Denny Vrandečić and Max Völkel. Currently James Hong Kong is the lead developer as of 2017, with Jeroen De Dauw as core developer.