WAP - Syntaxe WML
La couche la plus élevée de l'architecture WAP est constituée de WAE (Wireless Application Environment), qui se compose de langage de script WML et WML.
Le langage de script WML est utilisé pour concevoir des applications qui sont envoyées sur des périphériques sans fil tels que les téléphones mobiles. Cette langue prend en charge le petit écran et la faible bande passante de transmission. WML est une application de XML, qui est définie dans une définition de type de document.
Les pages WML sont appelées des jeux. Ils sont construits comme un ensemble de cartes, liées les unes aux autres par des liens. Lorsqu'une page WML est accessible à partir d'un téléphone mobile, toutes les cartes de la page sont téléchargées du serveur WAP vers le téléphone mobile affichant le contenu.
Les commandes et syntaxes WML sont utilisées pour afficher le contenu et pour naviguer entre les cartes. Les développeurs peuvent utiliser ces commandes pour déclarer des variables, mettre en forme du texte et afficher des images sur le téléphone mobile.
Structure du programme WAP
Un programme WML est généralement divisé en deux parties - le document prolog et le body. Considérez le code suivant -
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">
<wml>
<card>
...
</card>
...more cards...
</wml>
La première ligne de ce texte indique qu'il s'agit d'un document XML et que la version est 1.0. La deuxième ligne sélectionne le type de document et donne l'URL dudocument type definition (DTD). Cette DTD donne la définition XML complète de WML. La DTD référencée est définie dans WAP 1.1, mais cet en-tête change avec les versions du WML. L'en-tête doit être copié exactement pour que les kits d'outils génèrent automatiquement ce prologue.
Le corps est inclus dans une paire de balises <wml> ... </wml> comme indiqué ci-dessus. Le corps d'un document WML peut comprendre un ou plusieurs des éléments suivants:
Deck
Card
Contenu à afficher
Instructions de navigation
Commandes WML
Les commandes utilisées dans WML sont résumées comme suit -
Mise en page
Commander | La description |
---|---|
<p> | Paragraphe |
<b> | Audacieux |
<big> | Grand |
<em> | Souligné |
<I> | En italique |
<petit> | Petit |
<strong> | Fortement souligné |
<u> | Souligné |
<br> | Saut de ligne |
Insérer des images
<img src="image-path/image - name" alt="Picture not available" />
Utilisation des tableaux
Commander | La description |
---|---|
<table> | Définition d'une table |
<tr> | Définition d'une ligne |
<td> | Définition d'une colonne |
<Thead> | En-tête de tableau |
Variables
Déclaré comme -
<setvar name="x" value="xyz"/>
Utilisé comme -
$ identifier or
$ (identifier) or
$ (Identifier; conversion)
Formes
Commander | La description |
---|---|
<select> | Définir une ou plusieurs listes |
<entrée> | Entrée de l'utilisateur |
<option> | Définit une option dans une liste sélectionnable |
<fieldset> | Définit un ensemble de champs de saisie |
<optgroup> | Définit un groupe d'options dans une liste sélectionnable |
Éléments de tâche
Commander | La description |
---|---|
<go> | Représente l'action de passer à une nouvelle carte |
<noop> | Dit que rien ne devrait être fait |
<prév> | Représente l'action de revenir à la carte précédente |
<refresh> | Actualise certaines variables de carte spécifiées. |
Événements
Les différents événements sont les suivants -
Commander | La description |
---|---|
<do> | Définit un gestionnaire d'événements do |
<un événement> | Définit un gestionnaire d'événements onevent |
<champ postal> | Définit un gestionnaire d'événements postfield |
<ontimer> | Définit un gestionnaire d'événements ontimer |
<onenterforward> | Définit un gestionnaire onenterforward |
<onenterbackward> | Définit un gestionnaire onenterbackward |
<onpick> | Définit un gestionnaire d'événements onpick |
Exemple de programme WML
Conservez le code WML suivant dans info.wml sur votre serveur. Si votre serveur est compatible WAP, vous pouvez accéder à cette page à l'aide de n'importe quel périphérique WAP.
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">
<!-- WML prolog.declaration of file type and version>
<wml>
<!-- Declaration of the WML deck>
<card id="info" newcontext="true">
<!-- declaration of a card in deck>
<p align="center"><b>Information Center</b></p>
<!--paragraph declaration to display heading>
<p>
<!--paragraph declaration to display links>
<a href="Movie.wml">1. Movies info.</a>
<a href="Weather.wml">2. Weather Info.</a>
<!--declaration of links for weather and movies>
</p>
</card>
<!-- card end>
</wml>
<!-- program end>