WML (Wireless Markup Language) est un langage de balisage basé sur XML. En théorie, c’est une application XML. Tout comme HTML et XML, WML est lu et interprété par un fureteur bâti à l’intérieur même de l’application WAP. Pour les applications WAP, le fureteur est communément appelé un micro fureteur, indiquant de la sorte que ses capacités sont limitées. Des limites additionnelles peuvent être le résultat du micro fureteur sur lequel il opére. Si vous ne possédez aucune connaissance préalable de XML, vous trouverez probablement WML plus aride que HTML.
On fait référence aux fichiers WML comme étant des "paquets de cartes". Chaque paquet consiste en une ou plusieurs cartes. Les cartes débutent et se terminent par une étiquette <card>, tandis que les paquets débutent et se terminent par une étiquette <deck> . Lorsque le micro fureteur WML accède à un document WML document (ou un paquet), il lit le paquet en totalité. Alors, il n’a pas besoin de charger plus de données pour naviger entre les cartes. L’étiquette <card> dans WML est très similaire à l’étiquette <a name> de HTML.
Les applications WAP possèdent très peu de mémoire, alors il existe une limite à la taille de chaque paquet WML. La limite varie considérablement d’un fureteur à l’autre. Ces limites font référence à la forme compilée de votre paquet, laquelle est relativement faible en comparaison avec le texte simple XML acheminé à partir du serveur.
Exemple:
<?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="card1" title="Card 1">
<p>
Bonjour le Monde!
</p>
</card>
<card id="card2" title="Card 2">
<p>
Bonjour le Monde!
</p>
</card>
</wml>