WAP e Wireless Markup Language

Um Estudo de Caso: WAP e Wireless Markup Linguagem

À medida que a Web tornou-se mais onipresentes, os desenvolvedores começaram a olhar para outros dispositivos de usar para acesso à Internet. Nos últimos anos, dispositivos portáteis e sem fio, como pagers, telefones celulares, PDAs e tornaram-se parte integrante da nossa sociedade tecnológica. Faz todo o sentido, então, a Webenable esses dispositivos. É onde entra o WAP Wireless Application Protocol (WAP) começou como uma proposta ao W3C - o chamado HandheldDevice Markup Language (HDML) - Maio de 1997 por uma empresa chamada Unwired Planet. Quase um mês depois, HDML foi englobada pela Wireless Application Protocol que elaborou a partir de elementos de ambos os HDML e o dispositivo portátil (Protocolo de Transporte HDTP) - criações de Unwired Planet. O grupo de empresas que trabalham com o WAP recentemente proposto (incluindo Ericsson, Motorola e Nokia, ao lado Phone.com [ex-Planet Unwired]), entendeu que deveria ser baseado em telefonia e assim eles criaram o Fórum WAP. O HDML indescritível reapareceu no WAP como o Wireless Markup Language (WML), que é o que eu principalmente discutir neste artigo.

NotaWML parece ser uma abordagem provisória que será substituído, a longo prazo por alguma forma de integração com XHTML, como discutido no final deste artigo. WML continua a ser importante como um HTML como vocabulário XML, e provavelmente será um dos metas mais comum de transformação como XHTML informações da web é convertido em WML para entrega final a um telefone celular. Aproximações provisórias não têm uma maneira de furar ao redor.

Escolhendo o emuladorAntes de começar na programação um exemplo de documento WML, você precisa encontrar algo para que você possa ver o que parece. Existem vários emuladores WAP lá fora, mas é importante se certificar que você escolher o caminho certo.

Emuladores WAP

  

Gelon.Net 's Wapalizer (http://gelon.net/). Este é o mais fácil dos três emuladores nesta lista para usar. Tudo que você tem a fazer é uma referência URL para o arquivo WML na caixa de entrada e clique em "Wapalize".

Baixar o Nokia WAP ToolkitPara baixar o Nokia WAP Toolkit (versão 1.3 beta ou superior), vá até a página do Forum Nokia (http://www.forum.nokia.com). Clique Developers WAP e escolher a opção Formulário de Inscrição. Cadastre-se no acesso ao fórum e selecione Nokia WAP Developer Forum. Siga as ligações para o Nokia WAP Toolkit e baixá-lo. Se você precisa de um Java Runtime Environment, instale isso também.

NotaSinta-se livre para usar o Wapalizer para seus exemplos WML Se você está preocupado com o tamanho do download a Nokia ou a ter de se inscrever para o fórum de desenvolvedores. Basta lembrar que até à data desta escrita, há vários problemas com a Wapalizer.

Nota A articlemark não é considerado acrescentou até que você saia de cada célula. Depois de digitar a sua localização de URL, guia de volta para a célula de nome para completar a adição.

Criação de um documento WMLPara começar seu primeiro documento WML, clique em File → New → WML Deck. O documento que abre junto com a janela é o modelo básico para qualquer documento WML. Os dois primeiros elementos são o XML e declarações DOCTYPE. Um documento WML é válido um documento XML válido. Assim, tanto o XML e declarações DOCTYPE são necessárias para qualquer documento WML. Esta seção do documento WML é conhecido como o prólogo e é considerado um erro ao omitir esta seção do documento:


    

Um baralho de cartas A estrutura do seu documento WML gira em torno de um "deck de cartas" analogia. Cada documento WML singular é uma plataforma, e cada cartão dentro desse baralho contém o conteúdo do documento e as informações de navegação. Pense em um cartão como uma camada de DHTML ou, se você já usou HyperCard da Apple, pense nisso como um cartão em uma pilha HyperCard. Que camada é exibida em um dado momento depende de onde o usuário escolhe a clicar. O próximo elemento depois do prólogo é a elemento. Esta tag define um deck WML "e inclui todas as cartas" contido no documento. Um cartão é especificado usando o elemento. Cada cartão tem um atributo ID e título. Enquanto o id é principalmente para uso de documento interno, o valor do atributo de título mostra-se quase como o HTML elemento. </ html></p> <p><strong>Olá Mundo</strong>O primeiro programa a todos aprende quando a linguagem investigando qualquer novo computador é baseado em Olá mundo. WML não deve ser diferente. Você deve ter notado que o modelo Nokia faz isso para você:</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="Título"> <p><!-- Write your card implementation here. --> Olá mundo! </p></card></wml></pre> <p>Você tem agora o seu documento WML primeiro sentado em frente de você. Clique em Compilar para certificar-se de obras, em seguida, pede-lhe para salvá-lo. Escolha um diretório no qual colocar todos os seus futuros documentos WML e um nome desse Olá-world.wml.</p> <p><strong>Navegação</strong>Uma das principais características da Web é permitir aos usuários navegar através de páginas diferentes, utilizando os links. Para chegar a uma nova página, você clica no link. WML utiliza para se deslocar de cartão para cartão. Mas, em vez de usar a <a>não-elemento específico, ele usa</a> <do> <a>e</a> <go> <a>. Estes elementos dão um contexto pouco mais do que suas contrapartes HTML.</a></p><pre><card id="mycard" title="Welcome to my World"><do type="accept" label="Forward"><go href="#mycard2"/></do> <p> Clique em "avançar" para ir para a próxima carta. </p></card></pre> <p>O <do> elemento diz ao navegador para "fazer" o que ações são especificados dentro dela. Neste caso, diz-se "ir" para a referência de hipertexto mycard2 devido ao valor do <go> elemento. A tela do navegador mostra o título do <do> elemento e diz para a frente Clique para ir para a próxima carta. Junte tudo e aqui está o seu documento WML é semelhante a:</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="Meu Mundo"><do type="accept" label="Forward"><go href="#mycard2"/></do> <p> Clique em "avançar" para ir para a próxima carta. </p></card><card id="mycard2" title="Cartão 2"><p> Bem-vindo à carta número 2. </p></card></wml></pre> <p>O <do> elemento tem outros tipos além de aceitar. Você também pode usar a ajuda para obter alguma ajuda sobre o que está fazendo, reset para repor todos os valores, as opções para dar-lhe um conjunto de possíveis opções para escolher, e Anterior para navegar em sentido inverso. <go /> realmente tem alguns atributos e valores diferentes. Você já usou href, que pode se referir a um cartão dentro do deck corrente ou uma URL que aponta para uma plataforma completamente diferente. Você realmente pode especificar se deseja ou não que o navegador do usuário para enviar um URL de referência HREF para o servidor especificado no atributo href usando o atributo sendreferrer e defini-lo como TRUE. Se você lida com as formas (discutido mais tarde neste artigo), você pode especificar GET ou POST como o valor para o atributo método que lida com o atributo href correspondente.</p> <p><strong>Time-base automação</strong>Se um desenvolvedor quer ter um <em>página inicial </em>que automaticamente encaminha o usuário para a página principal de um Web site, ele ou ela usa o HTML 4,01 <meta> elemento com um http-equiv valor de atualização. Além disso, o desenvolvedor utilizar um valor de conteúdo que contém a quantidade de segundos para aguardar antes ele encaminha o navegador para uma URL, que também é designado no valor do conteúdo. Você ainda pode usar esse método em WML, mas os editores do caderno de especificações criaram o <timer> elemento para permitir a automação cronometrado entre cada carta no baralho.</p><pre><card id="mycard" ontimer="#mycard2" title="Meu Mundo"><timer value="150" /></pre> <p>O código anterior diz que após o período de tempo especificado no <timer> elemento (15 segundos entrou em décimos), o navegador deve avançar a partir da tela atual para a placa de identificação, cujo valor é especificado no ontimer evento intrínseco. Vamos ver como funciona:</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="Meu Mundo"><timer value="150" /> <p> Em 15 segundos, será automaticamente transmitir-lhe a nossa página principal ou <a href="#mycard2">ir para você mesmo</a> se você não quiser esperar </p></card><card id="mycard2" title="Welcome to my World"> <p> Bem-vindo à página principal de "Meu Mundo". </p></card></wml></pre> <p>Observe que você também adicionar um <a>elemento. Isto é exatamente como o elemento HTML usado em 4,01 para criar um link dentro de uma página web.</a></p> <p><strong>Entrada do usuário e as formas</strong>Tudo o que tenho visto até agora com WML é básica, run-of-the-mill Coisas da Web - não a interatividade que as companhias telefônicas manter alegando em comerciais de flamboyant. Vamos agora tentar angariar algumas informações de um usuário. Uso de entrada do usuário WML formas definitivamente aumenta a capacidade de navegadores sem fio para fazer escolhas, em vez de lidar com o conteúdo que é empurrada para eles. Vamos começar com uma caixa de entrada simples, baseado em texto. Este elemento é baseado em seu HTML 4,01 contrapartida:</p><pre>Nome: <br /><input type="text" name="firstname" /><br /> Sobrenome: <br /><input type="text" name="lastname" /> Para inserir os valores dos elementos de entrada em um cartão de futuro, você usar $ (nome) e $ (apelido). Welcome $ (nome) $ lastname (). Por favor clique em Voltar para retornar à página anterior.</pre> <p>Com a adição de mais alguns elementos - incluindo <do> , <go /> E <prev /> - Você tem uma experiência totalmente interativa:</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> Nome: <br /><input type="text" name="firstname" /><br /> Sobrenome: <br /><input type="text" name="lastname" /></p></card><card id="mycard2" title="Meu Mundo"><do type="prev" label="Back"><prev /></do> <p> Bem-vindo, $ firstname () $ lastname (). Por favor clique em "Voltar" para retornar à página anterior. </p></card></wml></pre> <p>Após clicar em OK o segundo tempo, selecione o botão Opções e selecione Avançar novamente. Agora você deve ver um cartão intitulado "Meu Mundo", que diz: "Bem-vindo sobrenome, nome. Por favor, clique em 'Voltar' para retornar à página anterior." Desta vez você também adicionar o <prev /> elemento, o que cria uma função para retornar à página anterior clicando no botão marcado Back.</p> <p><strong>Enviando um formulário</strong>Agora que você determinou como dados de entrada nos campos de formulário, você deve descobrir como obtê-lo para o servidor para processamento. A maneira mais fácil de fazer isso é através da introdução de um novo elemento chamado <postfield> . Também vão alterar o seu modo é configurado para enviar mensagens para um 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> Nome: <br /><input type="text" name="firstname" /><br /> Sobrenome: <br /><input type="text" name="lastname" /></p></card></wml></pre><p>Não há nenhuma maneira fácil de mostrar os resultados. Se você tiver a habilidade de criar um echo script CGI que mostra os valores apresentados em WML, então vá em frente e dar-lhe uma tentativa. Caso contrário, este documento WML olha exatamente como</p><p><strong>forma-input.wml</strong>.</p><p><strong>Imagens em WML</strong>Adicionando imagens para o WML não é diferente de fazê-lo em HTML 4.01, com a ressalva de que os arquivos estão em um formato diferente. Em vez de usar JPG, GIF ou PNG, você usar um WAP-único formato de Bitmap WBMP ou WAP. (Veja a seção "Criar imagens WBMP.")</p><pre><img src="http://www.zotgroup.com/development/wap/images/sunny.wbmp" alt="The Sun" /></pre><p>Criar um novo cartão de entrada e esta linha:</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="Meu Mundo"><p><img src="http://www.zotgroup.com/development/wap/images/sunny.wbmp" alt="The Sun" /> está ensolarado. </p><p align="center"> Como a sua? </p></card></wml> </pre><p><strong>Criar imagens WBMP</strong>Atualmente, o formato de imagem suportado apenas em WAP é o proprietário <em>WBMP </em>ou <em>WAP Bitmap</em>. Estas imagens devem ser pequenos no tamanho do arquivo e altura / largura e ser em preto e branco. A melhor maneira de criar uma WBMP é abrir um arquivo GIF ou JPG no seu programa gráfico favorito, certifique-se o tamanho do pixel corresponde com a da tela tradicional dispositivo WAP e salvá-lo. Em seguida, abra-o no Nokia WAP Toolkit - há uma opção para abrir "Imagens de importação para WBMP (. Gif,. Jpg), que tira as cores. Finalmente, guarde-o como um WBMP. Vejamos um exemplo de este processo. Agarre o GIF em http://www.zotgroup.com/development/wap/images/window.gif. abri-lo no seu programa gráfico, certifique-se o tamanho do pixel é de pelo menos 49 × 42 e é não-entrelaçado quando você salvá-lo novamente. Abra-o no Nokia WAP Toolkit e salve-o como um WBMP. Agora adiciona-lo para o seguinte código. (eu incluir um link para um exemplo para que você possa ver o que ele deve ser parecido.)</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>Integração WML e XHTML</em></strong>Em 30 de outubro de 1998, o WAP Forum, os criadores de WML e do W3C publicou um documento detalhando a sua intenção de cooperar nos esforços futuros padrões. Até agora, o WAP Forum tem contribuído o seguinte três notas para o W3C:</p><p>-- <em>Composite Capability / Preference Profiles (CC / PP): A User Side quadro para os conteúdos</em> <em>Negociação ( </em><em>http://www.w3.org/TR/NOTE-CCPP </em><em>)</em></p><p>-- <em>CC / PP Exchange protocolo baseado em 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>Esses documentos são os primeiros passos em direção à reconciliação e eventual integração do WAP / WML abordagem com a abordagem W3C/XHTML, e os membros do WAP Forum tem sido ativa em várias atividades do W3C (nomeadamente XHTML Basic). Pedaços de documentos WAP estão incluídos no <em>Modularização de XHTML </em>projecto de trabalho como uma negociação de conteúdo "seção", e eles estão incluídos como referências também. Embora não esteja claro como bom o projeto será ou quanto tempo vai levar estes empreendimentos para atingir a maturidade dentro da arquitetura celular que WAP atualmente domina, este trabalho pode trazer a tecnologia celular para XHTML e vice-versa. (Alguns dos concorrentes WAP já usam vocabulários semelhante ao XHTML Basic.) A integração da Internet Engineering Task Force (IETF) trabalho sobre a negociação de conteúdo poderá adicionar ainda mais alguns solavancos à mistura.</p><p>Até que a reconciliação tenha lugar a nível de normas, os desenvolvedores podem levar algum conforto na utilização de estruturas limpa XHTML para manter um caminho mais fácil transformação para documentos WML. Ferramentas XML padrão, incluindo as folhas de estilo XSLT descritas no artigo 12, pode gerir a transição relativamente suave de XHTML para WML. Isso torna mais fácil para criar um documento e deixar criar programas derivados.</p> <div align="right"><b>um artigo submetido por Albert Lichtblau </b></div><br><hr size="1"> <b><font color="#FF0000">Isenção de responsabilidade:</font></b>O nosso site não se responsabiliza pelo conteúdo deste artigo. Webarticles é uma fonte de informação livre.<br><b><font color="#FF0000">Importante:</font></b> Este artigo "WAP e Wireless Markup Language" foi traduzida por um software automático. Nós sentimos muito por quaisquer erros de ortografia que pode ter ocorrido. Obrigado pela sua compreensão. <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>327</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>