# MediaWiki sémantique

Dans ce manuel, nous allons expliquer étape par étape comment installer et configurer des outils pour mettre en place un wiki sémantique avec des formulaires.

## Description

Au terme de ce manuel, nous pourrons :
* Mettre en relation des données (x est l'auteur de y), assigner des attributs à des pages (x est une ville).
* Faire des recherches dans les données d'un wiki et afficher des résultats d'après des critères précis (ex : liste des livres publiés en français en 1955).
* Ces résultats placés dans des pages, par exemple sous forme de tableaux, de listes bibliographiques ou n'importe quelle autre forme configurable par des modèles, se mettront ensuite à jour automatiquement au fur et à mesure que vous entrerez des données.
* Utiliser des formulaires pour entrer directement ces données, au lieu de manipuler des modèles à chaque page que vous créerez ou modifierez.
Exemples d'utilisation :
* base de données bibliographiques ;
* généalogie ;
* tout type de catalogue ;
* base de données dans le domaine de la biologie.
Concrètement, il est possible de ne plus remplir que des formulaires pour créer un certain type de fiches. Les données entrées dans ces fiches n'ont pas besoin d'être reproduites ailleurs : si vous faites des notices sur des livres (avec auteur, éditeur, date, etc.), il sera ensuite possible de créer des pages pour les auteurs, pages dans lesquelles les livres de chaque auteur seront affichés automatiquement avec les données que vous voudrez. De plus, dès que vous modifierez une fiche, les données seront mises à jour automatiquement partout où elles sont listées.
Il existe d'autres possibilités, comme la création de graphiques à partir de données, mais elles dépendent de programmes que nous ne verrons pas ici.

## Programmes utilisés

* MediaWiki : le programme qui fera tourner votre wiki.
* Semantic Mediawiki : une extension de MediaWiki qui permet d'ajouter des annotations sémantiques dans les pages d'un wiki. C'est cette extension qui vous permettra de mettre en relation vos données.
* Semantic Forms : une extension de MediaWiki qui permet d'ajouter et modifier des données sous forme de formulaires (champs, listes, cases à cocher, etc.).
* plus quelques extensions pour ajouter des fonctionnalités aux formulaires.

## Préalables et difficultés

Il faut savoir installer MediaWiki : nous renvoyons au manuel sur ce point.
L'installation des extensions ne pose pas de problèmes particuliers : la procédure est relativement simple et nous la décrirons dans le premier chapitre.
La grande difficulté réside dans la compréhension du fonctionnement des extensions sémantiques : si le résultat que nous obtiendrons à la fin de ce manuel doit permettre d'ajouter et de modifier des données de manière très simple et rapide, l'utilisation de ces extensions peut en revanche s'avérer très difficile pour un débutant. La raison en est que les éléments à maîtriser sont nombreux et que leur organisation peut être assez complexe.
Il existe heureusement des outils pour simplifier cette utilisation, mais pour obtenir exactement ce que vous voulez, il va falloir apprendre un minimum de choses sur les mécanismes de ces extensions. Cela demandera avant tout de la patience et de l'attention, et il faudra procéder étape par étape, chaque étape étant assez simple en elle-même : c'est l'ensemble qui peut rapidement devenir très compliqué.
Nous proposerons donc dans ce manuel d'examiner ces étapes, et nous écarterons tout ce qui paraîtra superflu. Au terme de ce manuel, vous ne maîtriserez donc pas SemanticMediaWiki ni SemanticForms, mais vous devriez en avoir compris les éléments les plus importants, ce qui sera déjà suffisant pour obtenir un wiki sémantique parfaitement fonctionnel.

## Chapitres

* I. Installation
* II Utilisation de Formulaires Sémantiques : comment créer des formulaires
* III. Configuration des formulaires
* IV. Utilisation de MediaWiki Sémantique : comment ajouter des annotations sémantiques dans les formulaires
* V. FAQ : cas pratiques pour améliorer vos formulaires
* VI. Exemple complet : nous proposerons un exemple complet pour illustrer la marche à suivre.
* Ressources