WAP et le Wireless Markup Language

Une étude de cas: WAP et le Wireless Markup Langue

Alors que le Web est devenu plus en plus omniprésente, les développeurs ont commencé à envisager d'autres dispositifs à utiliser pour l'accès Web. Au cours des dernières années, les appareils portatifs et sans fil, comme les téléavertisseurs, les téléphones cellulaires et les PDA sont devenus une partie intégrante de notre société technologique. Il est parfaitement logique donc à Webenable ces dispositifs. C'est là où WAP entre en jeu. Le Wireless Application Protocol (WAP) a commencé comme une proposition au W3C - appelé Ordinateur de pocheDevice Markup Language (HDML) - En Mai 1997 par une société nommée Unwired Planet. Presque un mois plus tard, HDML a été intégrée par le protocole d'application sans fil qui a attiré à partir d'éléments des deux HDML et le dispositif de transport de poche Protocole (HDTP) - créations de Unwired Planet. Le groupe d'entreprises travaillant avec le WAP nouvellement proposé (y compris Ericsson, Motorola et Nokia, aux côtés de Phone.com [ex Unwired Planet]), a estimé qu'il devrait être basé sur la téléphonie et ainsi ils ont créé le Forum WAP. Le HDML insaisissable réapparu dans le WAP Wireless Markup Language (WML), qui est ce dont je parle principalement dans cet article.

NoteWML semble être une approche provisoire qui sera remplacée à terme par une certaine forme d'intégration avec XHTML, tel que discuté à la fin de cet article. WML reste important en tant que HTML à des vocabulaires XML, et sera probablement l'un des plusieurs cibles transformation commune que des informations XHTML à partir du Web est converti en WML pour une livraison finale à un téléphone cellulaire. Approches provisoires ne sont une façon de rester dans les parages.

Choisir votre émulateurAvant de vous lancer dans la programmation un exemple de document WML, vous avez besoin de trouver quelque chose pour vous permettre de voir à quoi il ressemble. Il existe plusieurs émulateurs WAP là-bas, mais il est important de vous assurer de choisir la bonne.

WAP émulateurs

  

Gelon.Net 's Wapalizer (http://gelon.net/). C'est la plus facile des trois émulateurs sur cette liste à utiliser. Tout ce que vous avez à faire est une adresse URL à votre fichier WML dans la zone de saisie et cliquez sur "Wapalize.

Téléchargement du Nokia WAP ToolkitPour télécharger le Nokia WAP Toolkit (version 1.3 beta ou plus), allez à la page du Forum Nokia (http://www.forum.nokia.com). Cliquez Developers WAP et choisissez l'option formulaire d'inscription. Inscrivez-vous pour l'accès au forum, sélectionnez Nokia WAP Developer Forum. Suivez les liens pour obtenir la trousse d'outils WAP Nokia et le télécharger. Si vous avez besoin d'un environnement d'exécution Java, installez-le aussi.

NoteN'hésitez pas à utiliser le Wapalizer pour vos exemples WML si vous êtes préoccupé par la taille du téléchargement de Nokia ou d'avoir à vous inscrire pour le forum des développeurs. Rappelez-vous simplement que, de cette écriture, il ya plusieurs problèmes avec le Wapalizer.

Note Un articlemark n'est pas considéré ajouté jusqu'à la sortie de chaque cellule. Une fois que vous tapez dans votre emplacement de l'URL, onglet retour à la cellule Nom de compléter l'addition.

Création d'un document WMLPour commencer votre premier document WML, cliquez sur Fichier → Nouveau → WML Deck. Le document qui s'ouvre avec la fenêtre est le modèle de base pour tout document WML. Les deux premiers éléments sont les données XML et des déclarations DOCTYPE. Un document valide WML est un document XML valide. Par conséquent, à la fois du XML et des déclarations DOCTYPE sont nécessaires pour tout document WML. Cette section de votre document WML est connu sous le nom Prolog et il est considéré comme une erreur d'omettre cette section de votre document:


    

Un jeu de cartes La structure de votre document WML tourne autour d'un «deck de cartes" analogie. Chaque document singulier WML est un pont, et chaque carte dans ce deck contient le contenu du document et de la navigation de l'information. Pensez à une carte comme une couche de DHTML ou, si vous avez déjà utilisé HyperCard d'Apple, le considérer comme une carte dans une pile HyperCard. Qu'est-ce calque est affiché à un moment donné dépend de l'endroit où l'utilisateur choisit de cliquer. L'élément suivant après le prologue est la élément. Cette balise définit un "deck WML" et renferme toutes les «cartes» qui figure dans le document. Une carte est spécifiée en utilisant la élément. Chaque carte possède un identifiant et un attribut title. Alors que l'id est principalement pour l'utilisation de documents internes, la valeur de l'attribut title se présente presque comme le HTML élément. </ html></p> <p><strong>Bonjour tout le monde</strong>Le premier programme de tout le monde apprend qu'il pénètre plus avant dans n'importe quel ordinateur, basé à New langue est Bonjour tout le monde. WML devrait pas être différente. Vous mai ont remarqué que le modèle de Nokia le fait pour vous:</p><pre><?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="Titre"> <p><!-- Write your card implementation here. --> Bonjour tout le monde! </p></card></wml></pre> <p>Vous avez maintenant votre premier document WML assis juste en face de vous. Cliquez sur Compiler pour s'assurer qu'il fonctionne, il vous invite alors à le sauver. Choisissez un répertoire dans lequel placer tous vos futurs documents WML et le nom de celui-world.wml Bonjour.</p> <p><strong>Navigation</strong>Une des principales caractéristiques du Web est de permettre aux utilisateurs de naviguer dans les différentes pages en utilisant les liens. Pour arriver à une nouvelle page, vous cliquez sur le lien. WML emploie liens pour obtenir de la carte à carte. Mais au lieu d'utiliser la <a>non-élément spécifique, il utilise</a> <do> <a>et</a> <go> <a>. Ces éléments donnent un contexte un peu plus que leurs homologues HTML.</a></p><pre><card id="mycard" title="Welcome to my World"><do type="accept" label="Forward"><go href="#mycard2"/></do> <p> Cliquer sur «Suivant» pour accéder à la carte suivante. </p></card></pre> <p>Le <do> élément indique au navigateur pour "faire" toutes les mesures sont spécifiées en son sein. Dans ce cas, elle le dit à «aller» à la référence hypertexte des mycard2 en raison de la valeur de la <go> élément. L'écran du navigateur indique le titre de la <do> élément et dit à cliquez sur Suivant pour aller à la prochaine carte. Ajouter le tout et voici ce que votre document WML ressemble à:</p><pre><?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="mycard" title="My World"><do type="accept" label="Forward"><go href="#mycard2"/></do> <p> Cliquer sur «Suivant» pour accéder à la carte suivante. </p></card><card id="mycard2" title="Carte 2"><p> Bienvenue à la carte numéro 2. </p></card></wml></pre> <p>Le <do> élément a d'autres types d'ailleurs accepter. Vous pouvez également utiliser l'aide pour obtenir de l'aide sur ce que vous faites, de réinitialisation pour réinitialiser toutes les valeurs, les options pour vous donner une série d'options à choisir, et prev pour naviguer en marche arrière. <go /> a fait un peu d'attributs et de valeurs différentes. Vous avez déjà utilisé href, qui peut se référer à une carte de l'intérieur du poste actuel ou à un URL qui pointe vers un jeu totalement différent. Vous pouvez réellement spécifier si vous voulez ou non le navigateur de l'utilisateur d'envoyer une URL de référence HREF au serveur spécifié dans l'attribut href à l'aide de l'attribut sendreferrer et la mise à TRUE. Si vous faites affaire avec des formes (voir plus loin dans cet article), vous pouvez spécifier GET ou POST comme valeur de l'attribut method qui traite avec l'attribut href correspondante.</p> <p><strong>Basés sur le temps d'automatisation</strong>Si un développeur veut avoir une <em>splash page </em>qui redirige automatiquement l'utilisateur vers la page d'accueil d'un site Web, il ou elle utilise le HTML 4.01 <meta> élément avec une valeur de http-equiv de rafraîchissement. En outre, le développeur d'utiliser une valeur de contenu qui contient le nombre de secondes à attendre avant de transmettre le navigateur vers une URL, qui est également désigné dans la valeur du contenu. Vous pouvez toujours utiliser cette méthode en WML, mais les éditeurs de la spécification ont créé les <timer> élément pour permettre l'automatisation chronométrée entre chaque carte dans un pont.</p><pre><card id="mycard" ontimer="#mycard2" title="My World"><timer value="150" /></pre> <p>Le code qui précède explique que, après le temps spécifié dans le <timer> élément (15 secondes est entré en dixièmes), le navigateur devrait présenter à l'écran en cours à la carte dont la valeur de l'ID est spécifié dans le OnTimer événement intrinsèque. Voyons comment cela fonctionne:</p><pre><?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="mycard" ontimer="#mycard2" title="My World"><timer value="150" /> <p> En 15 secondes, on va automatiquement vous orientera vers notre page principale ou <a href="#mycard2">allez-y vous-même</a> si vous ne voulez pas attendre </p></card><card id="mycard2" title="Welcome to my World"> <p> Bienvenue sur la page principale de "My World". </p></card></wml></pre> <p>Notez que vous ajoutez aussi un <a>élément. C'est exactement comme l'élément utilisé dans HTML 4.01 pour créer un lien dans une page Web.</a></p> <p><strong>Les entrées d'utilisateur et les formulaires</strong>Tout ce que vous avez vu jusqu'à présent avec WML est basique, run-of-the-mill stuff Web - et non l'interactivité que les compagnies téléphoniques continuent d'affirmer dans les publicités flamboyant. Essayons maintenant de solliciter des informations d'un utilisateur. Utilisation des entrées d'utilisateur WML formes augmente nettement la capacité pour les navigateurs sans fil pour faire des choix plutôt que d'aborder le contenu qui est poussée à eux. Commençons par une simple case, basé sur le texte d'entrée. Cet élément repose sur son homologue HTML 4.01:</p><pre>Prénom: <br /><input type="text" name="firstname" /><br /> Nom: <br /><input type="text" name="lastname" /> Pour insérer les valeurs des éléments d'entrée dans une future carte, vous utilisez $ (prénom) et $ (nom). Welcome $ (prénom) (nom). S'il vous plaît cliquez sur Précédent pour revenir à la page précédente.</pre> <p>Avec l'ajout de quelques éléments supplémentaires - y compris <do> , <go /> , Et <prev /> - Vous avez une expérience interactive:</p><pre><?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="mycard" title="Welcome to my World"><do type="accept" label="Forward"><go href="#mycard2"/></do> <p> Prénom: <br /><input type="text" name="firstname" /><br /> Nom: <br /><input type="text" name="lastname" /></p></card><card id="mycard2" title="My World"><do type="prev" label="Back"><prev /></do> <p> Bienvenue, $ (prénom) (nom). S'il vous plaît cliquer sur "Retour" pour retourner à la page précédente. </p></card></wml></pre> <p>Après avoir cliqué sur OK fois que le second, sélectionnez le bouton Options de nouveau et choisissez Transférer. Maintenant, vous devriez voir une carte intitulée "My World" qui dit: «Bienvenue, prénom et nom. S'il vous plaît cliquer sur" Retour "pour revenir à la page précédente." Cette fois, vous ajoutez aussi la <prev /> élément, ce qui crée une fonction pour vous de revenir à la page précédente en cliquant sur le bouton Retour.</p> <p><strong>Valider un formulaire</strong>Maintenant que vous avez déterminé la façon de saisir des données dans les champs de formulaire, vous devez comprendre comment l'obtenir à votre serveur pour traitement. La meilleure façon de faire est d'introduire un nouvel élément appelé <postfield> . Modifier également vos rendez-vous il est donc mis en place afin d'envoyer à un script CGI.</p><pre><?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="mycard" title="Welcome to my World"><do type="accept" label="Forward"><go method="post" href="www.example.com/form.pl"><postfield name="name" value="$(firstname)"/><postfield name="age" value="20"/></go></do> <p> Prénom: <br /><input type="text" name="firstname" /><br /> Nom: <br /><input type="text" name="lastname" /></p></card></wml></pre><p>Il n'y a pas de moyen facile de vous montrer les résultats. Si vous avez la possibilité de créer un écho script CGI qui vous montre les valeurs soumises en WML, alors n'hésitez plus, laissez-vous tenter. Dans le cas contraire, le présent document WML ressemble exactement</p><p><strong>form-input.wml</strong>.</p><p><strong>Les images en WML</strong>Ajout d'images à votre WML n'est pas différent de le faire en HTML 4.01, à l'exception que les fichiers sont dans un format différent. Au lieu d'utiliser JPG, GIF ou PNG, vous utilisez un WAP seul format de WBMP ou WAP Bitmap. (Voir la section suivante, «Création des images WBMP.")</p><pre><img src="http://www.zotgroup.com/development/wap/images/sunny.wbmp" alt="Le Soleil" /></pre><p>Créer une nouvelle carte et entrer cette ligne:</p><pre><?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="mycard" title="My World"><p><img src="http://www.zotgroup.com/development/wap/images/sunny.wbmp" alt="Le Soleil" /> est ensoleillé. </p><p align="center"> Que diriez-vous? </p></card></wml> </pre><p><strong>Création d'images WBMP</strong>Actuellement, le seul format d'image pris en charge dans WAP est le logiciel propriétaire <em>WBMP </em>ou <em>WAP Bitmap</em>. Ces images doivent être petits en taille de fichier et hauteur / largeur et être en noir et blanc. La meilleure façon de créer un WBMP est d'ouvrir un fichier GIF ou JPG dans votre logiciel graphique favori, assurez-vous que la taille du pixel correspond à celui de l'écran WAP appareil traditionnel, et l'enregistrer. Puis ouvrez-le dans la boîte à outils WAP Nokia - il existe une option pour ouvrir "Images pour l'importation à WBMP (. Gif,. Jpg), qui exclut les couleurs. Enfin, l'enregistrer comme un WBMP. Regardons un exemple de ce processus. Grab le GIF à http://www.zotgroup.com/development/wap/images/window.gif. Ouvrez-le dans votre programme graphique, assurez-vous que la taille des pixels est d'au moins 49 × 42 et elle est non-entrelacé quand vous enregistrer à nouveau. Ouvrez-la dans la boîte à outils WAP Nokia et enregistrer à nouveau comme une WBMP. Maintenant, c'est ajouter au code suivant. (je inclure un lien sur un exemple afin que vous puissiez voir de quoi il devrait ressembler.)</p><pre><?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="mycard" title="WinLove"><p><img src="http://www.zotgroup.com/development/wap/images/window.wbmp" alt="Windows" /></p> </pre><p><strong><em>Intégration XHTML et WML</em></strong>Le 30 Octobre 1998, le WAP Forum, les créateurs de WML, et le W3C a publié un document détaillant leur intention de coopérer sur les efforts futurs standards. Jusqu'à présent, le WAP Forum a contribué trois notes ci-dessous pour le W3C:</p><p>-- <em>Composite Capability / Preference Profiles (CC / PP): A User Side-cadre pour le contenu</em> <em>Négociation ( </em><em>http://www.w3.org/TR/NOTE-CCPP </em><em>)</em></p><p>-- <em>CC / PP Protocole d'échange basé sur HTTP Extension Framework (</em> <em>http://www.w3.org/TR/NOTE-CCPPexchange </em><em>)</em></p><p>-- <em>WAP Binary XML Content Format ( </em><em>http://www.w3.org/TR/wbxml </em><em>)</em></p><p>Ces documents constituent les premiers pas vers la réconciliation et l'intégration éventuelle du WAP / WML approche avec l'approche W3C/XHTML, et les membres du Forum WAP ont joué un rôle actif dans diverses activités du W3C (notamment XHTML Basic). Des bribes de documents WAP sont inclus dans le <em>La modularisation de XHTML </em>de travail du projet d'une «négociation de contenu" section, et ils sont compris comme des références aussi bien. Même s'il n'est pas clair comment lisser le projet sera, ou combien de temps il tiendra compte de ces nouveaux développements pour arriver à maturité dans les architectures cellulaires WAP domine actuellement, ce travail mai amener la technologie cellulaire à XHTML et vice versa. (Quelques-uns des concurrents du WAP utilisent déjà des vocabulaires similaire à XHTML Basic.) L'intégration de l'Internet Engineering Task Force (IETF) travail sur la négociation de contenu mai encore ajouter des bosses un peu plus au mélange.</p><p>Jusqu'à ce que la réconciliation ait lieu au niveau des normes, les développeurs peuvent se réconforter en utilisant des structures XHTML propre à entretenir un chemin plus facile de transformation à des documents WML. Outils standards XML, y compris les feuilles de style XSLT décrit à l'article 12, permet de gérer la transition relativement doux de XHTML vers WML. Cela rend plus facile de créer un seul document et de laisser les programmes créent des dérivées.</p> <div align="right"><b>un article présenté par Albert Lichtblau </b></div><br><hr size="1"> <b><font color="#FF0000">Disclaimer:</font></b>Notre site n'est pas responsable du contenu de cet article. Webarticles est une ressource d'information gratuite.<br><b><font color="#FF0000">Important:</font></b> Cet article «WAP et le Wireless Markup Language" a été traduit par un logiciel automatique. Nous nous sentons désolés pour les fautes d'orthographe que mai ont eu lieu. Nous vous remercions de votre compréhension. <hr size="1"> </div> <br> <script type="text/JavaScript">document.getElementById("Translator").style.display = "none";</script> <p> </td> </tr> <tr><td align="right" style="font-size:13px;"> <br> Online: <font color=red>266</font> users browsing the articles directory   <br> <br> </td></tr> </table><br> </div> <table border="0" align="center" cellpadding="0" cellspacing="0" style="font-size:11px; color:#666666"> <tr> <td align="center"> <table width="50" border="0" align="right" cellpadding="0" cellspacing="0" height="50"> <tr><td width="10">  </td> <td> <script type="text/javascript"><!-- e9 = new Object(); e9.size = "728x90,468x60"; e9.addBlockingCategories="Adult,Floating,Full-page,Violence,Pop-under,Pop-up,Suggestive,Expandable"; //--></script> <script type="text/javascript" src="http://tags.expo9.exponential.com/tags/WebArticles/ROS/tags.js"></script></td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </body> </html>