wml程序的基本结构
实例:
<?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="HTML" title="HTML Tutorial">
<p>
Our HTML Tutorial.
</p>
</card>
<card id="XML" title="XML Tutorial">
<p>
Our XML Tutorial.
</p>
</card>
</wml>
该程度基本结构可以分为以下几个关键部分:
- 声明。WML程序有许多Deck组成,对于每一个Deck,在其文档开头必须进行XML的声明和文档类型DOCTYPE的声明。
XML声明总是在文件的第一行,注意前面最好不要有空格:
<?xml version="1.0"?> - 紧跟着是DOCTYPE声明,注意声明是字母的大小写不要搞错:
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1xml"> - <xml>标签。该标签用于包含和定义WML的一个Deck。它有一个可选的xml:lang属性来制定文档的语言,
比如<wml xml:lang="zh">表示文档语言为中文。 - <card>标签。一个Deck可以包含多个Card,每个Card的内容可能不止一屏显示。对于每一个Card,WML均使用<card>和</card>
进行包含和定义。 <card>同时可以包含多个可选的属性,如<card id="name" title="label" newcontext="false"
ordered="true" onenterforwand="url" pmemterbackward="url" ontimer="url">。
标签不可交叉使用
文档内容位于 <wml>...</wml> 标签内。
文档中的每个 card 位于 <card>...</card> 标签内
实际的段落在 <p>...</p> 标签中。
每个 card 元素都有一个 id 以及一个 title。
WML字符使用基本规则
WML是一种比较严格的语言,字符使用必须遵守相应的规则,这些基本规则主要包括以下几个方面:
- 大小写敏感。在WML中,无论是标签元素还是属性内容都是大小写敏感的,这一点继承了XML的严格特性,任何大小写错误都可能导致访问错误。
一般来说,WML的所有标签,属性,规定和枚举及它们的可接受值必须小写,Card的名字和变量可大写和小写,但它是区分大小写的。包括参数
的名字和参数的数值都是大小写敏感的,例如variable1、Variable1和vaRiable1都是不同的参数。 - 空格。对于连续的空字符,程序运行时只需要一个空格。属性名、符号(=)和值之间不能有空格。
- 标签。标签内属性的值必须使用双引号(")或单引号(')括起来。对于不成对出现的标签,必须在大于号(>)前加上顺斜杠(/),比如换
行标签必须写成<br/>才正确。 - 不显示的内容。在WML中,不显示的字符主要包括换行符、回车符、空格和水平制表符,它们的8位十六进制内码分别为10、13、32及9。
程序执行时,WML将忽视所有的多于一个以上的不显示字符,即WML会把一个或多个连续的换行、回车、水平制表符及空格转换成一个空个。 - 保留字符。这是WML的一些特殊字符,如小于号(<)、大于号(>)、单引号"'"、双引号"""、和号(&)。
- 显示汉字。如果希望WML程序执行时能够显示汉字,需要在程序开头使用encoding指定汉字字符集。例如:<?xml version="1.0" encoding="utf-8">。
注意:指定汉字字符集的形式和方法可能因为开发工具或WAP手机的不同而不同。