MediaWiki
Un article de Wikipédia, l'encyclopédie libre.
|
Cet article ou cette section ne cite pas suffisamment ses sources. (date inconnue)
Son contenu est donc sujet à caution. Wikipédia doit être fondée sur des informations vérifiables. Améliorez cet article en signalant les passages qui demandent une référence (en y insérant par exemple le modèle {{Référence nécessaire}}), et en liant les informations à des sources, au moyen de notes de bas de page (voir les recommandations).
|
| Développeur | Wikimedia |
| Dernière version | 1.12.0 (le 20 mars 2008) |
| Version avancée | 1.13.0-rc1 (le 24 juillet 2008) |
| Environnement | Multiplate-forme |
| Langue | Multilingue |
| Type | Moteur de wiki |
| Licence | GNU GPL |
| Site web | www.mediawiki.org |
MediaWiki est un moteur de wiki pour le web qui est principalement utilisé par l?ensemble des projets de la Wikimedia Foundation, ainsi que par l?ensemble des wikis hébergés chez Wikia et par de nombreux autres wikis, dont certains font partie des wikis les plus célèbres et les plus connus. Conçu pour répondre aux besoins de Wikipédia, ce moteur est aujourd?hui également utilisé par des entreprises comme une solution de gestion des connaissances et comme un système de gestion de contenu. L?entreprise américaine Novell l?utilise notamment pour plusieurs de ses sites web qui véhiculent un trafic web important. D'autres associations l'ont aussi adopté (par exemple Wikitravel, Mozilla ou Ekopedia).
MediaWiki est écrit en PHP, et peut aussi bien fonctionner avec le système de gestion de base de données MySQL que PostgreSQL. C'est un logiciel libre distribué selon les termes de la licence GNU GPL.
MediaWiki inclut de nombreuses fonctionnalités pour les sites à vocation collaborative : par exemple, la gestion des espaces de noms, ou encore l'utilisation de pages de discussions associées à chaque article.
Sommaire |
[] Historique
Initialement, Wikipédia utilisait un moteur de wiki rudimentaire écrit en Perl, appelé UseModWiki. Le 25 janvier 2002, MediaWiki, développé par Magnus Manske, un étudiant allemand de l?université de Cologne, devient le moteur de wiki de l'encyclopédie collaborative pour laquelle il a été développé. MediaWiki a ainsi permis de disposer de plus de fonctionnalités et d?une infrastructure plus extensible (grâce à une base de données MySQL). Les performances du logiciel ont ensuite été améliorées par Lee Daniel Crocker, avant que Brion Vibber n'en devienne le développeur le plus actif et ne prenne le rôle de dirigeant des sorties logicielles.
Depuis la sortie de la première version du script de Manske, plusieurs noms représentatifs de l?état du logiciel lui ont été donnés : « le script PHP », « phase II », « phase III », « le nouveau code source ». Cependant il n?était pourvu d?aucun nom de produit. Après l'annonce de la création de la Wikimedia Foundation le 20 juin 2003, le wikipédien Daniel Mayer lui donne le nom « MediaWiki » par jeu de mots sur le nom « Wikimedia » et ce nom est progressivement adopté. Toutefois, la similarité des noms MediaWiki et Wikimedia (qui lui-même est déjà semblable au nom Wikipédia) est à l'origine de fréquentes confusions.
Le logo de MediaWiki a été créé par Erik Moeller à partir d?une photographie d?une fleur prise par Florence Devouard (qui sera par la suite présidente de la Wikimedia Foundation), et fut initialement soumis au concours international du nouveau logo pour Wikipédia qui s?est déroulé pendant l?été 2003. Le logo s'est placé en troisième position à l'issue de ce concours, et a été choisi pour représenter MediaWiki plutôt que Wikipédia, tandis que le logo vainqueur a été adopté pour représenter Wikipédia, et le second pour la fondation Wikimedia. Les doubles crochets sur la photo autour du tournesol symbolisent le wikicode, c'est-à-dire la syntaxe utilisée par MediaWiki pour créer des hyperliens vers les autres pages du wiki.
[] Les versions
| Numéro de version | Date | Principales nouveautés |
|---|---|---|
| 1.1 | 8 décembre 2003 | |
| 1.2 | 24 mars 2004 | |
| 1.3 | 11 août 2004 | |
| 1.4 | 20 mars 2005 |
MediaWiki 1.4 est maintenue par Brion Vibber. Pour cette version 1.4, le code a été nettoyé, afin que certaines tâches soient accomplies plus rapidement. Le langage de l'interface peut être choisi par l'utilisateur, rendant les projets communs (comme Wikimedia Commons) plus accessibles. Un effort a été fait pour optimiser l'espace disque utilisé. Ainsi depuis MediaWiki 1.4, la compression gzip employée pour stocker le texte réduit d'environ 15 % l?espace nécessaire. Cette compression n'est pas réalisée à chaque révision, ce qui permet d'épargner un peu plus d'espace. |
| 1.5 | 5 octobre 2005 | MediaWiki 1.5 prolonge les changements architecturaux commencés avec la version 1.4. Son changement le plus remarquable ? le schéma de base de données ? consiste en un découplage complet entre le stockage du texte et l'évolution des versions de l'article. Ces modifications doivent permettre d'augmenter la vitesse de plusieurs opérations comme le déplacement de page ou la production de l'historique d'une page.
Le support des images a été étendu aux images vectorielles SVG. Celles-ci sont converties par MediaWiki en images PNG pour une plus grande compatibilité avec les navigateurs web actuels qui sont actuellement très rares à prendre en charge de façon native les images au format SVG. Les pages décrivant les images affichent désormais les métadonnées au format Exif contenu dans certains formats d'image. |
| 1.6 | 5 avril 2006 |
La version 1.6 marque le début d'un cycle de développement. Les différences pour l'utilisateur sont mineures : changement du formulaire d'identification, amélioration du système de protection et sortie quasi complète en XHTML. Les réelles améliorations sont internes et portent notamment sur le système de cache, la qualité du code et l'arrêt du support d'anciens logiciels (MySQL 3, PHP 4.1.x). À partir de cette version, les développeurs ont décidé de réaliser une nouvelle version tous les trimestres. |
| 1.7 | 7 juillet 2006 |
|
| 1.8 | 10 octobre 2006 |
|
| 1.9 | 10 janvier 2007 |
|
| 1.10 | 9 mai 2007 |
|
| 1.11 | 10 septembre 2007 |
|
| 1.12 | 20 mars 2008 |
|
| 1.13 | - |
|
[] Avantages
MediaWiki est muni d?un ensemble de fonctionnalités élaborées et d?un système d?extensions lui permettant d?intégrer des fonctions supplémentaires. En raison de la forte présence du plurilinguisme dans les projets Wikimedia, la partie internationalisation a bénéficié d?une attention toute particulière de la part des développeurs. L?interface a été intégralement ou partiellement traduite dans plus de 70 langues, et peut être personnalisée par les administrateurs du site. Wikipédia étant l?un des sites web les plus visités au monde, les développeurs ont apporté un soin tout particulier à l?extensibilité grâce à un système multicouche de mise en cache et de duplication de base de données. Wikipédia et les autres projets Wikimedia sont actuellement toujours à l?origine d?une grande partie des critères de réalisation de MediaWiki.
[] Liens
Le principal atout de MediaWiki par rapport aux autres moteurs de wiki est l?usage de liens libres au lieu du CamelCase (casse de chameau). Là où habituellement les autres wikis ont besoin d?écrire « WorldWideWeb » en un seul mot pour produire un lien vers la page du même nom, MediaWiki n?impose aucune contrainte, il suffit simplement de placer l?expression que l?on souhaite lier entre double crochets. Tous les espaces contenus dans l?expression sont ainsi préservés, comme pour [[World Wide Web]].
[] Espaces de nom
En plus des liens, MediaWiki est pourvu de nombreuses autres fonctionnalités pour structurer le contenu. L?une des plus anciennes fonctionnalités est le système d?espace de nom. Pendant longtemps, la séparation des discussions autour de Wikipédia et de son contenu encyclopédique a constitué un réel problème. Et il en va de même avec les pages personnelles consacrés aux wikipédiens. De façon simpliste, les espaces de nom peuvent se résumer à des préfixes utilisés dans le titre des pages (par exemple « Utilisateur: » ou bien « Discussion: » ce qui permet plusieurs pages d'exister sous le même nom (à l'espace de nom près), mais avec des finalités différentes selon le préfixe. Par exemple, la page intitulée « [[Terminator]] » peut décrire le film de 1984 mettant en scène Arnold Schwarzenegger, tandis que la page « [[Utilisateur:Terminator]] » peut être une page personnelle décrivant un utilisateur ayant choisi ce pseudonyme. Chaque page de Wikipédia est associée à une page de discussion qui a pour but de permettre aux Wikipédiens de discuter du sujet de la page.
Par comparaison avec les systèmes de fichiers, les espaces de nom peuvent être assimilés aux dossiers qui permettent de séparer plusieurs fichiers de même nom. Bien qu?il soit possible de rajouter des espaces de noms, leur nombre dans un wiki est habituellement relativement faible.
[] Sous-pages
En plus des espaces de noms, les pages peuvent être structurées à l?aide de sous-pages. Une page ayant pour titre « A » peut posséder plusieurs sous-pages dont le titre est alors de la forme « A/x ». La sous-page propose alors automatiquement un lien de retour vers la page mère (de la forme « < A »). Dans cette dernière, on peut accéder à l'une de ses sous-pages en omettant son titre ; ainsi, le lien « [[/x]] » pointera vers la sous-page ayant pour titre « A/x ». Pour un espace de nom donné, le système de sous-pages peut être activé ou désactivé. Par exemple, sur Wikipédia, il est désactivé dans l'espace encyclopédique et activé dans l'espace « Utilisateur: ».
[] Catégories
MediaWiki permet aux utilisateurs de créer des catégories. Elles fonctionnent de façon similaire aux tags présents dans de nombreuses applications web, et forment une hiérarchie et une description. Dans certains wikis comme Wikipédia, des hiérarchies compliquées se sont développées avec ce système sans pour autant qu?une quelconque planification n?ait été établie.
[] Interface modifiable
L?interface de MediaWiki peut être intégralement changée directement sur le wiki lui-même par les utilisateurs qui en ont le droit (habituellement il s?agit des personnes qui sont appelées administrateurs ou sysops). Cela se fait grâce à un espace de nom particulier qui correspond au préfixe « MediaWiki: » où chaque page correspond à un message précis de l?interface. À l?origine, l?espace de nom « MediaWiki: » était utilisé pour créer des blocs de texte personnalisés pouvant être chargés dynamiquement dans les autres pages à l?aide d?une syntaxe spéciale. Ce contenu a été déplacé plus tard dans un espace de nom à part appelé « Modèle: ».
[] Modèles
Les modèles sont des morceaux de texte qui peuvent être chargés de façon dynamique ou statique dans n'importe quelle page. Pour cela il suffit d?appeler le modèle en écrivant son nom entre double accolades (il s?agit en quelque sorte d?un lien spécial). Les modèles possèdent leur propre espace de nom qui correspond au préfixe « Modèle: ». Par exemple pour faire appel dynamiquement au modèle se trouvant à la page intitulée « Modèle:Annexe », il suffit d?écrire « } ». Le contenu du modèle sera ainsi reproduit dans la page où il est appelé, en temps réel. Si des changements sont apportés au modèle par la suite, la page sera également mise à jour automatiquement.
Le modèle peut également être appelé à l'aide du préfixe « subst: » (exemple : }, ce qui aura pour effet de substituer l'appel au modèle par son contenu au moment où la modification est validée. Le résultat est équivalent à un copier-coller du contenu du modèle. Par conséquent, tout changement apporté au modèle n?aura aucun effet dans la page dans laquelle le modèle y a été substitué. La substitution limite la cohérence de l?utilisation des modèles, mais peut être pratique dans certains cas, et est a priori moins gourmande en ressources serveur.
Les modèles sont utilisés de nombreuses manières différentes, par exemple :
- L?identification de problème avec un article de Wikipédia en plaçant un modèle dans l?article. Le modèle produit un bandeau indiquant le type de problème rencontré dans l?article, et si le modèle a été prévu pour, la page peut-être automatiquement catégorisée de sorte que tous les articles sur lesquels ce modèle est apposé soient tous regroupés dans une même catégorie.
- La création de tables ayant une syntaxe compliquée, et dont l'utilisation est rendue simple dans les pages par l'utilisation de paramètres.
[] Multimédia
Comme le laisse supposer le nom MediaWiki, l?un des points forts du logiciel est sa capacité à gérer une large variété de fichiers multimédias (ces derniers peuvent être envoyés sur le wiki directement grâce à l?interface), en particulier les fichiers d'images, mais aussi les sons (au format Ogg). Si le logiciel est bien configuré, il est alors relativement facile de produire des galeries d?images et des vignettes. Le logiciel gère également les métadonnées Exif. La nécessité de faire tourner Wikimedia Commons (l?un des plus grandes archives de média de contenu libre) avec MediaWiki a été source d?apport en fonctionnalités de ce type.
En février 2008, Florence Devouard annonce la prochaine apparition d'une forme de vidéo collaborative sur Wikipédia[1]. Il s'agirait d'utiliser un logiciel libre conçu par la société Kaltura.
[] Tel-tel (WYSIWYG)
Actuellement, MediaWiki n?est pourvu d?aucune interface WYSIWYG, bien qu?il possède une barre d?outils graphique qui permet de simplifier le processus d?apprentissage de la syntaxe wiki. Il est toutefois possible d'avoir une interface graphique pour la rédaction d'article à l'aide d'une extension appelée FCKeditor.
[] Sections
Il est possible avec MediaWiki de une partie d?une page (une section), ce qui permet notamment de plus facilement et de façon concurrente des pages longues. En effet, si un utilisateur tente de valider des changements sur une page alors qu'un autre utilisateur l'a modifiée entre temps, il se produira alors un « conflit d'édition », et l'utilisateur devra effectuer une manipulation pour intégrer ses changements à la nouvelle version. En revanche, si deux utilisateurs modifient en même temps deux sections différentes d'une même page, ce problème n'aura pas lieu.
[] Contenu élaboré
MediaWiki est également muni de fonctionnalités permettant de gérer du contenu élaboré grâce à une syntaxe spéciale. Par exemple, le logiciel permet de produire des formules mathématiques à l?aide de LaTeX et d?un analyseur syntaxique écrit en OCaml. D?autres fonctionnalités de la sorte existent sous forme d?extension, notamment les frises chronologiques, le tracé de courbes mathématiques, les partitions de musique ou encore les hiéroglyphes égyptiens.
[] Interface personnalisable
Si l?option est activée, les utilisateurs peuvent aussi personnaliser leur feuille de style et configurer du code JavaScript du côté du client pour qu?il soit exécuté sur chaque page visitée. Par exemple, le système de navigation par popup de Lupin est un outil JavaScript qui montre des aperçus d?articles lorsque l?utilisateur passe la souris au dessus d?un lien, et donnent également des liens vers les tâches de maintenance habituelles. wikEd en est un autre exemple, un éditeur de texte intégré à MediaWiki avec de nombreuses fonctionnalités qui apporte la coloration syntaxique et des fonctions de rechercher et de remplacement.
[] Groupes et droits d?accès
Bien que MediaWiki possède de base un ensemble de fonctions liées à la restriction, l?accès et la définition de groupes d?utilisateurs, le contrôle de l?accès aux pages ne semble pas constituer un élément de haute priorité dans le processus de développement. Par exemple, il n?est pas possible de définir des permissions d?accès aux pages en fonction de l?espace de nom. Ici, les wikis comme TWiki et MoinMoin apportent plus de puissance en gérant des mécanismes de sécurité avancés comme des listes de contrôle d?accès.
[] Extensions
Le code source de MediaWiki contient plusieurs « crochets » auxquels peuvent être attachés du code supplémentaire. Cela permet aux programmeurs d?écrire des extensions sans changer la base ou sans les obliger à soumettre leur code à un contrôle de révision. La plupart du temps, installer une extension revient à ajouter une ligne de code dans le fichier de configuration, bien que dans certains cas, des changements au niveau de la base de données soient en plus nécessaires.
De nombreuses extensions disponibles sont en fait de simples scripts permettant d?intégrer du contenu comme des fichiers Adobe Flash ou des formulaires HTML. D?autres scripts ajoutent de nouveaux comportements compliqués à la syntaxe wiki. C?est le cas de Semantic MediaWiki qui donne la possibilité d?ajouter des relations structurées et recherchables et des attributs aux pages wiki (cf. web sémantique). La fondation Wikimedia détient un serveur Subversion sur lequel de nombreuses extensions sont hébergés.
[] Performances
Étant donné que MediaWiki est utilisé pour faire tourner Wikipédia, qui est un des sites du World Wide Web qui véhicule le plus d?informations, les performances du moteur et son extensibilité ont été optimisées de façon accrue. MediaWiki gère les caches Squid, les duplications de bases de données avec répartition de charge, la mise en cache du côté du client, le memcached ou la mise en cache basée sur les tables pour les traitements fréquemment consultés ou les résultats de demandes courantes, sous la forme d?un simple fichier de cache statique, avec des fonctionnalités réduites, la compression des vieilles versions, et une file d?attente des jobs pour les opérations de base de données.
Il se peut que MediaWiki soit surdimensionné pour un usage de taille réduite, là où son large ensemble de fonctionnalités et son interface à la fin ont un coût en terme de performance. D?un autre côté, le logiciel convient parfaitement pour les opérations des fermes wikis, comme les projets Wikimedia et la famille de langue. Cependant, MediaWiki n?est pas pourvu de fonctionnalités pour gérer de telles installations.
[] Limites
Mis à part le manque d?interface WYSIWYG mentionné précédemment, plusieurs remarques peuvent être faites à propos de MediaWiki : sa documentation est uniquement disponible sur le net (pas de version imprimée) et elle n'est pas propriétaire (des dizaines d?auteurs ont participé à sa rédaction). L?installation et l?utilisation du logiciel MediaWiki ne sont pas très intuitives pour un utilisateur inexpérimenté (comparé à d?autres logiciels comme FrontPage par exemple).
Il n?y a pas de définition finie de la syntaxe de MediaWiki ; la syntaxe valide est celle reconnue par le code PHP de l?analyseur syntaxique, et il se peut qu?une définition de la syntaxe sous la forme EBNF soit impossible. C?est pour cette raison que produire un éditeur WYSIWYG ou une adaptation complète de l?analyseur pour d?autres langages est une tâche difficile.
De plus, il n?existe pas de solution satisfaisante pour mettre en place une ACL.
Concernant la saisie de texte, les espaces insécables sont automatiquement converties en espaces « normales », y compris ailleurs que dans le titre. De plus, l?usage de deux types de liens (simple crochets pour des liens externes, doubles crochets pour des liens internes) est source de confusion et dispensable, comme l?a montré WikiCreole.
[] Références
[] Voir aussi
[] Articles connexes
[] Liens externes
- (en) Site officiel de Mediawiki
- (fr) Site officiel de Mediawiki
- (en) Accueil du projet MediaWiki sur SourceForge
- (en) MediaWiki sur le site Wikimedia meta
|
||||||||||||||||||||||||||
Le Texte ci-dessus est disponible sous GNU Free Documentation License.
La source est wikipedia http://fr.wikipedia.org/wiki/MediaWiki



