Le langage XPAGES

Auteur: Damien Guillaume

Introduction

introductionIntroduction

XPAGES permet de créer rapidement et facilement des sites web. Le principe sur lequel repose XPAGES est la séparation du contenu et de la forme : avec XPAGES, on spécifie un contenu (texte, images, animations), et on le structure en donnant un sens à chaque partie. A l'édition, on ne préoccupe absolument pas de la façon dont le contenu sera affiché plus tard, ce qui permet de gagner du temps et de ne pas mélanger le sens avec la forme. La façon dont le contenu sera affiché est spécifié séparément, par des feuilles de style. Il est ainsi possible de changer l'affichage indépendamment de l'édition.

XPAGES est un langage XML, c'est à dire un ensemble d'éléments et de règles permettant de structurer un texte. Des feuilles de style associées permettent de transformer automatiquement des documents XPAGES en fichiers HTML pour qu'ils puissent être consultés sur le web. Les documents XPAGES peuvent être édités avec Jaxe et WebJaxe grâce à un fichier de configuration décrivant une interface d'édition.

XPAGES est un langage très simple, et facile à apprendre : il ne comporte que 59 éléments (46 sans les exercices), à comparer par exemple aux 91 éléments de HTML, aux 390 éléments de DocBook, ou aux 526 éléments de OpenDocument.


La structure des documents

Les documents XPAGES comportent un élément racine, XPAGES, qui est utilisé dans tous les documents comme élément de premier niveau. Sous cet élément, on trouve les éléments INFORMATIONS, PAGE, REFXPAGES et XPAGES.

A l'intérieur d'une page, il est possible de créer des sections avec l'élément SECTION. Cet élément comporte un titre, un rôle qui spécifie le sens de la section et peut permettre un affichage différent en fonction, et une importance qui permet de mettre en valeur la section si celle-ci est importante.

Le texte est ajouté à l'intérieur de paragraphes, avec l'élément PARAGRAPHE. Il est facile d'insérer un nouveau paragraphe avec le raccourci-clavier commande-P ou contrôle-P dans Jaxe.

Il possible de créer plusieurs contributions, chacune comprenant un fichier XML XPAGES et les fichiers attachés (images, applets Java, ...). Chaque contribution doit alors correspondre à un dossier dont le nom est égal au label donné dans le bloc INFORMATIONS du fichier XML. Ce dossier contient le fichier XML et les fichiers associés.


Informations

Le bloc d'informations renseigne sur le document, et permet aussi de choisir un habillage pour les pages qui seront générées. Il est obligatoire, et se place au début du document. Il comporte les éléments suivants :


Eléments de bloc

Les éléments de bloc sont les éléments XML que l'on peut insérer directement à l'intérieur d'un élément PAGE. Ils permettent de structurer le document, mais ne sont pas mélangés à du texte : il est ainsi impossible d'insérer du texte directement sous PAGE, le texte devant être placé à l'intérieur d'un élément de bloc.

XPAGES comporte les éléments de bloc suivants :


Eléments mélangés au texte

Certains éléments de XPAGES peuvent être mélangés avec du texte, par exemple à l'intérieur d'un paragraphe. Ce sont les éléments suivants :


Exercices

XPAGES peut être utilisé pour de nombreuses applications, mais il est en particulier pratique pour créer un cours en ligne, et a été créé dans ce contexte. Pour ces raisons, le langage contient des éléments spécifiques à la définition d'exercices, même si ces éléments ne seront pas forcément utiles en-dehors du contexte des cours en ligne.

Il existe deux types d'exercices : les exercices de type question-réponse, et les QCM. Dans les deux cas, un exercice peut avoir un titre (attribut titre), un énoncé (élement ENONCE), une indication de la difficulté (élément DIFFICULTE), une indication du temps nécessaire (élément TEMPS), et des questions (élements QUESTION et QUESTIONQCM).

Chaque question peut avoir un énoncé et une ou plusieurs aides (élement AIDE). Les questions des exercices de type question-réponses ont une solution (élément SOLUTION) et un nombre de points qui peuvent être accordés si la réponse est correcte (élément POINTS). Les questions de QCM ont des réponses possibles (élément REPONSEQCM), chaque réponse pouvant être bonne ou pas (attribut bonne), avec à chaque fois le texte de la réponse (élément TEXTEREP) et un commentaire qui sera affiché si l'utilisateur choisit cette réponse, par exemple pour lui expliquer en quoi la réponse est fausse (élément COMMENTAIREREP).

Dans Jaxe, les réponses des exercices d'évaluations ne sont pas ajoutées aux fichiers HTML quand on génère le "site public". Elles ne sont ajoutées que lorsque l'on génère le "site de production". Dans WebJaxe, c'est toujours le site de production qui est généré; il faut donc exporter la contribution et l'ouvrir dans Jaxe pour générer le site public. On peut ainsi, à partir des mêmes fichiers XML, générer un site pour les étudiants, et un site pour les tuteurs d'une formation à distance.


Référence du langage

Le document suivant présente l'ensemble des éléments du langage XPAGES, avec un index et un arbre des éléments. Il a été généré automatiquement à partir du schéma XML de XPAGES.