Tutoriel WML2.0

WML2 est un langage qui étend la syntaxe et la sémantique des éléments suivants:

  • XHTML Basic [ XHTMLBasic ]
  • CSS Mobile Profile [ CSSMP ]
  • Unique semantics of WML1.0 [ WML1.0 ]

WML2 est optimisé pour spécifier la présentation et l'interaction de l'utilisateur sur des appareils à capacité limitée tels que les téléphones mobiles et autres terminaux mobiles sans fil.

Ce didacticiel donne des détails sur la version 2 du langage de balisage sans fil (WML). Ce didacticiel fait référence à la version 2.0 de WML en tant que WML2.

Le XHTML Basic défini par le W3C est un sous-ensemble approprié de XHTML, qui est une reformulation du HTML en XML.

Objectifs de base de WML2:

Il y a cinq objectifs majeurs pour WML2:

  • Backward compatibility: L'application WML2 doit également être exécutée sur d'anciens appareils.

  • Convergence with existing and evolving Internet standards: XHTML Basic [XHTMLBasic] et CSS Mobile Profile [CSSMP]

  • Optimisation of access from small, limited devices:Les appareils compatibles WAP sont généralement petits et alimentés par batterie et leur mémoire et leur puissance CPU sont relativement limitées. Donc, WML2 doit être suffisamment optimisé pour fonctionner sur ces appareils.

  • Allowance for the creation of distinct user interfaces: Le WAP permet la création d'interfaces homme-machine (MMI) avec une flexibilité et une capacité maximales pour un fournisseur d'améliorer l'expérience utilisateur.

  • Internationalisation of the architecture:Le WAP cible les codes de caractères communs à usage international. Cela inclut les symboles internationaux et les jeux de pictogrammes pour les utilisateurs finaux, et le codage de caractères à usage local pour les développeurs de contenu.

Vision WML2:

La vision de WML2 est de créer un langage qui étend la syntaxe et la sémantique du profil XHTML Basic et CSS Mobile avec la sémantique unique de WML1. L'utilisateur ne doit pas savoir comment la compatibilité WML1 est obtenue.

La structure du langage WML2:

WML2 est un nouveau langage avec les composants suivants:

(1) XHTML basique:

Ce groupe d'éléments est destiné à la convergence W3C. Pour certains des éléments, des attributs d'extension WML sont ajoutés afin d'obtenir la fonctionnalité WML1.

(1a) Éléments de base XHTML:

a abbr acronyme adresse base blockquote br légende cite code dd dfn div dl dt em formulaire h1 h2 h3 h4 h5 h6 tête kbd label li lien objet ol param pre q samp span table forte td th titre tr ul var

(1b) Éléments XHTML Basic avec attributs d'extension WML:

body html img entrée méta option p sélectionnez style textarea

(2) Éléments de modularisation XHTML:

Ce groupe d'éléments se compose de certains éléments parmi les modules de XHTML non inclus dans XHTML Basic. La plupart des éléments sont inclus pour la compatibilité WML1. Un élément est inclus en tant qu'amélioration qui s'adapte aux capacités limitées du combiné.

(2a) Modularisation XHTML pour la rétrocompatibilité avec WML1:

b big i small (à partir du module de présentation) u (à partir du module hérité) fieldset optgroup (à partir du module Forms)

(2b) Éléments de modularisation XHTML pour l'amélioration des fonctionnalités:

heure

(3) Éléments d'extensions WML:

Certains éléments sont importés de WML1, car les capacités équivalentes ne sont pas fournies dans XHTML Basic ou XHTML Modularization. Un élément est inclus pour l'amélioration des capacités WML1.

(3a) Eléments d'extensions WML (pour compatibilité WML1):

wml: accès wml: ancre wml: carte wml: do wml: getvar wml: go wml: noop wml: onevent wml: postfield wml: prev wml: actualiser wml: setvar wml: timer

(3b) Éléments d'extensions WML (pour l'amélioration des fonctionnalités):

wml: widget

Modules de structure de document WML:

Les éléments suivants du module Structure sont utilisés pour spécifier la structure d'un document WML2:

  • body
  • html
  • wml:card
  • head
  • title

L'élément corps:

L'attribut wml: newcontext spécifie si le contexte du navigateur est initialisé à un état bien défini lorsque le document est chargé. Si la valeur de l'attribut wml: newcontext est "true", le navigateur DOIT réinitialiser le contexte du navigateur lors de la navigation vers cette carte.

L'élément html:

L'attribut xmlns: wml fait référence à l'espace de noms WML par exemple: http://www.wapforum.org/2001/wml.

L'attribut wml: use-xml-fragments est utilisé pour spécifier comment un identificateur de fragment est interprété par l'agent utilisateur. Pour plus de détails sur l'utilisation de wml: use-xml-fragments dans la tâche go et la tâche prev.

L'élément wml: card:

L'élément wml: card spécifie un fragment du corps du document. Plusieurs éléments wml: card peuvent apparaître dans un seul document. Chaque élément wml: card représente une présentation individuelle et / ou une interaction avec l'utilisateur.

Si la valeur d'attribut newcontext de l'élément wml: card est "true", le navigateur DOIT réinitialiser le contexte du navigateur lors de la navigation vers cette carte.

L'élément de tête:

Cet élément conserve les informations d'en-tête du document comme le méta-élément et la feuille de style, etc.

L'élément titre:

Cet élément sert à mettre un titre de document

NOTE:Les développeurs WML peuvent utiliser le style de document XHTML, c'est-à-dire la structure du corps, ou ils peuvent utiliser une collection de cartes. Lorsque la structure du corps est utilisée, un document est construit à l'aide d'un élément du corps. L'élément body contient le contenu du document. Lorsqu'une collection de cartes est utilisée, un document est construit à l'aide d'un ou plusieurs éléments wml: card.

Tâches WML2

Les tâches suivantes sont définies dans WML2.0. Ces tâches sont très similaires à WML1.0

  • La tâche aller
  • La tâche précédente
  • La tâche noop
  • La tâche de rafraîchissement

Événements WML2:

Les types d'événements suivants sont définis dans WML2:

  • Intrinsic event: Un événement généré par l'agent utilisateur et inclut les événements suivants similaires à WML1.0

    • ontimer
    • onenterforward
    • onenterbackward
    • onpick
  • Extrinsic event:Un événement envoyé à l'agent utilisateur par un agent externe. La spécification WML 2 ne spécifie aucune classe d'événements extrinsèques. Les événements WTA sont un exemple de classe d'événements extrinsèques WML

Type de document WML2:

Les documents WML2 sont identifiés par le type de support MIME "application / wml + xml". Le type "application / xhtml + xml" peut être utilisé pour identifier des documents à partir de n'importe quel langage de balisage basé sur XHTML, y compris XHTML Basic.

La déclaration DOCTYPE peut inclure l'identificateur public formel de base XHTML et peut également inclure l'URI de la DTD de base XHTML comme spécifié ci-dessous:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">

Feuilles de style avec WML2

Les feuilles de style peuvent être utilisées pour styliser les documents WML2. Les informations de style peuvent être associées à un document de 3 manières:

Feuille de style externe:

Une feuille de style externe peut être associée à un document à l'aide d'une instruction de traitement XML spéciale ou de l'élément link. L'utilisation de l'instruction de traitement XML peut également être utilisée.

Dans l'exemple suivant, l'instruction de traitement XML est utilisée pour associer la feuille de style externe "mobile.css".

<?xml-stylesheet href="mobile.css" 
                    media="handheld" type="text/css" ?>

Dans l'exemple suivant, l'élément link est utilisé pour associer la feuille de style externe "mystyle.css":

<html>
<head>
<link href="mystyle.css" type="text/css" rel="stylesheet"/>
...
</head>
...
</html>

Feuilles de style internes:

Les informations de style peuvent être localisées dans le document à l'aide de l'élément style. Cet élément, comme le lien, doit être situé dans l'en-tête du document.

Voici un exemple de feuille de style interne:

<html>
<head>
<style type="text/css">
p { text-align: center; }
</style>
...
</head>
...
</html>

Style en ligne:

Vous pouvez spécifier des informations de style pour un seul élément à l'aide de l' attribut style . C'est ce qu'on appelle le style en ligne.

Dans l'exemple suivant, les informations de style en ligne sont appliquées à un élément de paragraphe spécifique:

<p style="text-align: center">...</p>

La feuille de style par défaut WML2:

Voici un exemple de feuille de style pour WML 2.0:

body, card, div, p, center, hr, h1, h2, h3, h4, h5, h6,
address, blockquote, pre, ol, ul, dl, dt, dd,
form, fieldset, object { display: block }
li      { display: list-item }
head    { display: none }
table   { display: table }
tr      { display: table-row }
td, th  { display: table-cell }
caption { display: table-caption }
th      { font-weight: bolder; text-align: center }
caption { text-align: center }
h1, h2, h3, h4, h5, h6, b, strong { font-weight: bolder }
i, cite, em, var,address { font-style: italic }
pre, code, kbd, pre { white-space: pre }
big     { font-size: larger}
small   { font-size: smaller}
hr      { border: 1px inset }
ol      { list-style-type: decimal }
u       { text-decoration: underline }

Les éléments WML2:

Voici un lien vers une liste complète de tous les éléments WML2. La plupart des éléments sont disponibles dans la spécification XHTML à l'exception de quelques éléments commençant par WML: Ces éléments sont spécifiques à WML.

Tous les éléments ont ici la même signification que ce qu'ils ont dans la spécification XHTML.

Référence des balises WML2

Sommaire:

Nous pouvons conclure que si vous connaissez XHTML et WML1.0, vous n'avez rien à faire pour apprendre WML2.0

Si vous souhaitez en savoir plus, vous trouverez ici les spécifications complètes pour WAP2.0 et WML2.0