WAP - Introduction au langage WML

Décembre 2016

Présentation du langage WML

Le langage WML (Wireless Markup Language) est un langage à balises basé sur XML permettant à des terminaux mobiles (téléphones mobiles, pagers ou bien des assistants digitaux personnels) d'afficher des documents reliés par des liens hypertextes. Le langage WML est très proche du HTML, mais il est toutefois beaucoup moins "souple" que ce dernier, c'est-à-dire qu'il doit être conforme à un document appelé DTD (Document Type Definition), indiquant la syntaxe à suivre pour créer un document WML. En effet, étant donné que les documents WML sont prévus pour être utilisés sur des réseaux de bande passante réduite, et des terminaux restreints (en terme d'affichage, et de ressources systèmes), le WML se doit d'être compact. Le langage WML permet ainsi l'affichage de textes, d'images, de tableaux sur l'écran du terminal, ainsi qu'une navigation entre les documents.

Le langage WML n'est donc pas un langage de programmation, c'est un simple fichier texte contenant des balises permettant de mettre en forme le texte, les images... Une balise est une commande (un nom) encadrée par le caractère inférieur (<), aussi appelé chevron ouvrant, et le caractère supérieur (>), appelé chevron fermant, par exemple "<p>".

La syntaxe du langage WML

La constitution d'un document WML est très métaphorique, elle s'apparente à un jeu de cartes (la désignation originale, donc anglophone, est deck) constitué d'une série de cartes représentant des entités documentaires telles qu'un écran de texte, un bouton, un champ, ...

Une carte est en réalité un ensemble de balises WML entourées par les balises <card> et </card>. Le document WML minimal est donc un fichier texte contenant une seule carte :

<?xml version="1.0"?>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>

  <card id="carte1" title="CCM">

	<p align="center">

	<big>CCM</big>

	<br/>

	vulgarisation<br/>

	informatique
	</p>

  </card>

</wml>
Résultat du script WML

Les 3 premières lignes sont obligatoires, elles définissent le type de document ainsi que la version de la DTD utilisée. Les balises <wml> définissent le jeu de cartes. Ce document ne contient qu'une carte, repérée par un identifiant déclaré dans la balise <card> par l'attribut id. Cet attribut est immédiatement suivi de l'attribut title qui définit un titre pour la carte et qui sera affiché en haut de l'écran du terminal.

L'ensemble des balises à l'intérieur des balises <card> sont des balises de style: elle définissent le style du texte à afficher.

On peut remarquer par la même occasion qu'avec WML, il existe deux sortes de balises :

  • Les balises-conteneur, contenant des éléments et allant par paire (<balise> et </balise>)
  • Les balises simples dont le nom est suivi d'un slash (/) avant le chevron fermant

Différences entre WML et HTML

Le WML est proche syntaxiquement du HTML, mais il est toutefois beaucoup plus rigoureux compte tenu du fait qu'il est basé sur XML, contrairement à HTML (issu de SGML).

De ce fait, la syntaxe de WML est beaucoup plus stricte :

  • Le WML est sensible à la casse, les noms des balises et des attributs doivent être écrits en minuscules
  • Les attributs doivent obligatoirement posséder une valeur
  • Les balises doivent impérativement être fermées dans l'ordre où elles ont été ouvertes

A voir également :

Ce document intitulé «  WAP - Introduction au langage WML  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.