Tutorial de WML2.0

WML2 es un lenguaje que amplía la sintaxis y la semántica de los siguientes:

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

WML2 está optimizado para especificar la presentación y la interacción del usuario en dispositivos de capacidad limitada, como teléfonos móviles y otros terminales móviles inalámbricos.

Este tutorial brinda detalles sobre Wireless Markup Language (WML) Versión 2. Este tutorial se refiere a la versión 2.0 de WML como WML2.

El XHTML Basic definido por el W3C es un subconjunto adecuado de XHTML, que es una reformulación de HTML en XML.

Objetivos básicos de WML2:

Hay cinco objetivos principales para WML2:

  • Backward compatibility: La aplicación WML2 también debería estar ejecutándose en dispositivos antiguos.

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

  • Optimisation of access from small, limited devices:Los dispositivos habilitados para WAP son generalmente pequeños, funcionan con baterías y tienen memoria y potencia de CPU relativamente limitadas. Por tanto, WML2 debería estar lo suficientemente optimizado para ejecutarse en estos dispositivos.

  • Allowance for the creation of distinct user interfaces: WAP permite la creación de interfaces hombre-máquina (MMI) con la máxima flexibilidad y capacidad para que un proveedor mejore la experiencia del usuario.

  • Internationalisation of the architecture:WAP apunta a códigos de caracteres comunes para uso internacional. Esto incluye conjuntos de símbolos y pictogramas internacionales para usuarios finales y codificación de caracteres de uso local para desarrolladores de contenido.

Visión WML2:

La visión de WML2 es crear un lenguaje que amplíe la sintaxis y la semántica del perfil XHTML Basic y CSS Mobile con la semántica única de WML1. El usuario no debe saber cómo se logra la compatibilidad con WML1.

La estructura del lenguaje WML2:

WML2 es un nuevo lenguaje con los siguientes componentes:

(1) XHTML básico:

Este grupo de elementos es para la convergencia W3C. Para algunos de los elementos, se agregan atributos de extensión WML para lograr la funcionalidad WML1.

(1a) Elementos básicos de XHTML:

a abbr acrónimo dirección base blockquote br título citar código dd dfn div dl dt em formulario h1 h2 h3 h4 h5 h6 cabeza kbd etiqueta li objeto de enlace ol param pre q muestra tabla fuerte td th título tr ul var

(1b) Elementos XHTML Basic con atributos de extensión WML:

body html img entrada meta opción p seleccionar estilo textarea

(2) Elementos de modularización XHTML:

Este grupo de elementos consta de elementos seleccionados de aquellos módulos de XHTML no incluidos en XHTML Basic. La mayoría de los elementos se incluyen para compatibilidad con WML1. Se incluye un elemento como una mejora que se adapta a las capacidades limitadas del teléfono.

(2a) Modularización XHTML para compatibilidad con versiones anteriores de WML1:

b big i small (del módulo de presentación) u (del módulo heredado) fieldset optgroup (del módulo de formularios)

(2b) Elementos de modularización XHTML para mejorar las funciones:

hora

(3) Elementos de extensiones WML:

Algunos elementos provienen de WML1, porque las capacidades equivalentes no se proporcionan en XHTML Basic o XHTML Modularization. Se incluye un elemento para mejorar las capacidades de WML1.

(3a) Elementos de extensiones WML (para compatibilidad con WML1):

wml: acceder a wml: ancla wml: tarjeta wml: hacer wml: getvar wml: ir wml: noop wml: onevent wml: postfield wml: prev wml: actualizar wml: setvar wml: temporizador

(3b) Elementos de extensiones WML (para mejorar las funciones):

wml: widget

Módulos de estructura de documentos WML:

Los siguientes elementos del módulo de estructura se utilizan para especificar la estructura de un documento WML2:

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

El elemento del cuerpo:

El atributo wml: newcontext especifica si el contexto del navegador se inicializa a un estado bien definido cuando se carga el documento. Si el valor del atributo wml: newcontext es "verdadero", el navegador DEBE reinicializar el contexto del navegador al navegar a esta tarjeta.

El elemento html:

El atributo xmlns: wml se refiere al espacio de nombres WML, por ejemplo: http://www.wapforum.org/2001/wml.

El atributo wml: use-xml-fragments se utiliza para especificar cómo el agente de usuario interpreta un identificador de fragmento. Para obtener detalles sobre el uso de wml: use-xml-fragments en la tarea go y la tarea anterior.

El elemento wml: card:

El elemento wml: card especifica un fragmento del cuerpo del documento. Pueden aparecer varios elementos wml: card en un solo documento. Cada elemento wml: card representa una presentación individual y / o interacción con el usuario.

Si el valor del atributo newcontext del elemento wml: card es "true", el navegador DEBE reinicializar el contexto del navegador al navegar a esta tarjeta.

El elemento principal:

Este elemento mantiene la información del encabezado del documento como metaelemento y hoja de estilo, etc.

El elemento del título:

Este elemento se utiliza para poner un título de documento.

NOTE:Los desarrolladores de WML pueden usar el estilo de documento XHTML, es decir, la estructura del cuerpo, o pueden usar una colección de tarjetas. Cuando se usa la estructura del cuerpo, un documento se construye usando un elemento del cuerpo. El elemento del cuerpo contiene el contenido del documento. Cuando se usa una colección de tarjetas, un documento se construye usando uno o más elementos wml: card.

Tareas de WML2

Las siguientes tareas están definidas en WML2.0. Estas tareas son muy similares a WML1.0

  • La tarea de ir
  • La tarea anterior
  • La tarea noop
  • La tarea de actualización

Eventos WML2:

Los siguientes tipos de eventos se definen en WML2:

  • Intrinsic event: Un evento generado por el agente de usuario e incluye los siguientes eventos similares a WML1.0

    • ontimer
    • onenterforward
    • onenterbackward
    • onpick
  • Extrinsic event:Un evento enviado al agente de usuario por algún agente externo. La especificación WML 2 no especifica ninguna clase de eventos extrínsecos. Un ejemplo de una clase de evento extrínseco WML puede ser eventos WTA

Tipo de documento WML2:

Los documentos WML2 se identifican mediante el tipo de medio MIME "application / wml + xml". El tipo "application / xhtml + xml" se puede utilizar para identificar documentos de cualquiera de los lenguajes de marcado basados ​​en XHTML, incluido XHTML Basic.

La declaración DOCTYPE puede incluir el Identificador público formal básico XHTML y también puede incluir el URI del DTD básico XHTML como se especifica a continuación:

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

Hojas de estilo con WML2

Las hojas de estilo se pueden utilizar para diseñar documentos WML2. La información de estilo se puede asociar a un documento de tres formas:

Hoja de estilo externa:

Una hoja de estilo externa se puede asociar con un documento mediante una instrucción de procesamiento XML especial o el elemento de enlace. También se puede utilizar el uso de la instrucción de procesamiento XML.

En el siguiente ejemplo, la instrucción de procesamiento XML se utiliza para asociar la hoja de estilo externa "mobile.css".

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

En el siguiente ejemplo, el elemento de enlace se utiliza para asociar la hoja de estilo externa "mystyle.css":

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

Hojas de estilo internas:

La información de estilo se puede ubicar dentro del documento usando el elemento de estilo. Este elemento, como el enlace, debe estar ubicado en el encabezado del documento.

A continuación se muestra un ejemplo de una hoja de estilo interna:

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

Estilo en línea:

Puede especificar información de estilo para un solo elemento utilizando el atributo de estilo . A esto se le llama estilo en línea.

En el siguiente ejemplo, la información de estilo en línea se aplica a un elemento de párrafo específico:

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

La hoja de estilo predeterminada de WML2:

Aquí hay una hoja de estilo de muestra para 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 }

Los elementos de WML2:

Aquí hay un enlace a una lista completa de todos los elementos de WML2. La mayoría de los elementos están disponibles en la especificación XHTML, excepto algunos elementos que comienzan con WML: estos elementos son específicos de WML.

Todos los elementos tienen el mismo significado aquí que en la especificación XHTML.

Referencia de etiquetas WML2

Resumen:

Podemos concluir que si conoce XHTML y WML1.0, entonces no tiene nada que hacer para aprender WML2.0

Si está interesado en leer más, aquí puede encontrar las especificaciones completas para WAP2.0 y WML2.0