WAP教程(10):WML参考手册、WML实例和WML DTD-XML/XSLT
2017-03-21 17:35:51
xml/json
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用 WML <access> 定义关于 deck 的访问控件的信息。 1.1 <card> 定义 deck 中的一个 card。 1.1 <head> 包含关于文档的信息。 1.1 <meta> 定义有关文档的元信息。 1.1 <template> 为 deck 中的所有 card 定义代码模板。 1.1 <wml> 定义 WML deck (WML 根) 1.1 <!--> 定义注释。 1.1 文本元素 开始标签 作用 WML <br> 定义一个换行。 1.1 <p> 定义一个段落。 1.1 <table> 定义表格。 1.1 <td> 定义一个表格单元(表格数据)。 1.1 <tr> 定义一个表格行。 1.1 文本格式化标签 开始标签 作用 WML <b> 定义粗体的文本。 1.1 <big> 定义大号的文本。 1.1 <em> 定义着重文本。 1.1 <i> 定义斜体的文本。 1.1 <small> 定义小号的文本。 1.1 <strong> 定义强调文本。 1.1 <u> 定义下划线文本。 1.1 锚元素 开始标签 作用 WML <a> 定义一个锚(链接)。 1.1 <anchor> 定义一个锚(链接)。 1.1 图像元素 开始标签 作用 WML <img> 定义图像。 1.1 事件元素 开始标签 作用 WML <do> 在用户点击屏幕上的一个单词或短语时激活一个任务。 1.1 <onevent> 包含了当某些事件发生时所执行的代码。 1.1 <postfield> 包含了连同 <go> 标签被送往服务器的信息。 1.1 任务元素 开始标签 作用 WML <go> 表示跳转到新卡片的动作。 1.1 <noop> 表示不进行任何动作(noop 指的是 "no operation")。 1.1 <prev> 表示返回前一个访问过的卡片。 1.1 <refresh> 刷新指定的卡片变量。如果有变量显示在屏幕上,此任务也会刷新屏幕。 1.1 输入元素 开始标签 作用 WML <fieldset> 用于对卡片中的相关元素进行分组。 1.1 <input> 定义输入字段(用户可在其中输入文本的文本域)。 1.1 <optgroup> 定义可选列表中的一组选项。 1.1 <option> 定义可选列表中的选项。 1.1 <select> 定义可选列表。 1.1 变量元素 开始标签 作用 WML <setvar> 在 <go>、<prev> 或 <refresh> 任务中把变量设置为指定的值。 1.1 <timer> 定义卡片计时器。
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 字符实体
结果 描述 实体名称 实体编号 & ampersand & & ' apostrophe ' ' > greater-than > > < less-than < < non-breaking space   " quotation mark " " soft hyphen ­ ­ WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 完整的 WML DTD:
<!-- Wireless Markup Language (WML) Document Type Definition. Copyright Wireless Application Protocol Forum Ltd., 1998,1999. All rights reserved. WML is an XML language. Typical usage: <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> ... </wml> Terms and conditions of use are available from the Wireless Application Protocol Forum Ltd. web site at http://www.wapforum.org/docs/copyright.htm. --> <!ENTITY % length "CDATA"> <!-- [0-9] for pixels or [0-9] "%" for percentage length --> <!ENTITY % vdata "CDATA"> <!-- attribute value possibly containing variable references --> <!ENTITY % HREF "%vdata;"> <!-- URI, URL or URN designating a hypertext node. May contain variable references --> <!ENTITY % boolean "(true|false)"> <!ENTITY % number "NMTOKEN"> <!-- a number, with format [0-9] --> <!ENTITY % coreattrs "id ID #IMPLIED class CDATA #IMPLIED"> <!ENTITY % emph "em | strong | b | i | u | big | small"> <!ENTITY % layout "br"> <!ENTITY % text "#PCDATA | %emph;"> <!-- flow covers "card-level" elements, such as text and images --> <!ENTITY % flow "%text; | %layout; | img | anchor | a | table"> <!-- Task types --> <!ENTITY % task "go | prev | noop | refresh"> <!-- Navigation and event elements --> <!ENTITY % navelmts "do | onevent"> <!--============= Decks and Cards =============--> <!ELEMENT wml ( head?, template?, card )> <!ATTLIST wml xml:lang NMTOKEN #IMPLIED %coreattrs; > <!-- card intrinsic events --> <!ENTITY % cardev "onenterforward %HREF; #IMPLIED onenterbackward %HREF; #IMPLIED ontimer %HREF; #IMPLIED" > <!-- card field types --> <!ENTITY % fields "%flow; | input | select | fieldset"> <!ELEMENT card (onevent*, timer?, (do | p)*)> <!ATTLIST card title %vdata; #IMPLIED newcontext %boolean; "false" ordered %boolean; "true" xml:lang NMTOKEN #IMPLIED 蕆dev; %coreattrs; > <!--============= Event Bindings =============--> <!ELEMENT do (%task;)> <!ATTLIST do type CDATA #REQUIRED label %vdata; #IMPLIED name NMTOKEN #IMPLIED optional %boolean; "false" xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT onevent (%task;)> <!ATTLIST onevent type CDATA #REQUIRED %coreattrs; > <!--======== Deck-level declarations ========--> <!ELEMENT head ( access | meta ) > <!ATTLIST head %coreattrs; > <!ELEMENT template (%navelmts;)*> <!ATTLIST template 蕆dev; %coreattrs; > <!ELEMENT access EMPTY> <!ATTLIST access domain CDATA #IMPLIED path CDATA #IMPLIED %coreattrs; > <!ELEMENT meta EMPTY> <!ATTLIST meta http-equiv CDATA #IMPLIED name CDATA #IMPLIED forua %boolean; #IMPLIED content CDATA #REQUIRED scheme CDATA #IMPLIED %coreattrs; > <!--================ Tasks ================--> <!ELEMENT go (postfield | setvar)*> <!ATTLIST go href %HREF; #REQUIRED sendreferer %boolean; "false" method (post|get) "get" accept-charset CDATA #IMPLIED %coreattrs; > <!ELEMENT prev (setvar)*> <!ATTLIST prev %coreattrs; > <!ELEMENT refresh (setvar)*> <!ATTLIST refresh %coreattrs; > <!ELEMENT noop EMPTY> <!ATTLIST noop %coreattrs; > <!--============= postfield =============--> <!ELEMENT postfield EMPTY> <!ATTLIST postfield name %vdata; #REQUIRED value %vdata; #REQUIRED %coreattrs; > <!--============= variables =============--> <!ELEMENT setvar EMPTY> <!ATTLIST setvar name %vdata; #REQUIRED value %vdata; #REQUIRED %coreattrs; > <!--============= Card Fields =============--> <!ELEMENT select (optgroup|option) > <!ATTLIST select title %vdata; #IMPLIED name NMTOKEN #IMPLIED value %vdata; #IMPLIED iname NMTOKEN #IMPLIED ivalue %vdata; #IMPLIED multiple %boolean; "false" tabindex %number; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT optgroup (optgroup|option) > <!ATTLIST optgroup title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT option (#PCDATA | onevent)*> <!ATTLIST option value %vdata; #IMPLIED title %vdata; #IMPLIED onpick %HREF; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT input EMPTY> <!ATTLIST input name NMTOKEN #REQUIRED type (text|password) "text" value %vdata; #IMPLIED format CDATA #IMPLIED emptyok %boolean; "false" size %number; #IMPLIED maxlength %number; #IMPLIED tabindex %number; #IMPLIED title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT fieldset (%fields; | do)* > <!ATTLIST fieldset title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT timer EMPTY> <!ATTLIST timer name NMTOKEN #IMPLIED value %vdata; #REQUIRED %coreattrs; > <!--============= Images =============--> <!ENTITY % IAlign "(top|middle|bottom)" > <!ELEMENT img EMPTY> <!ATTLIST img alt %vdata; #REQUIRED src %HREF; #REQUIRED localsrc %vdata; #IMPLIED vspace %length; "0" hspace %length; "0" align %IAlign; "bottom" height %length; #IMPLIED width %length; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!--============= Anchor =============--> <!ELEMENT anchor ( #PCDATA | br | img | go | prev | refresh )*> <!ATTLIST anchor title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT a ( #PCDATA | br | img )*> <!ATTLIST a href %HREF; #REQUIRED title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!--============= Tables =============--> <!ELEMENT table (tr) > <!ATTLIST table title %vdata; #IMPLIED align CDATA #IMPLIED columns %number; #REQUIRED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT tr (td) > <!ATTLIST tr %coreattrs; > <!ELEMENT td ( %text; | %layout; | img | anchor | a )*> <!ATTLIST td xml:lang NMTOKEN #IMPLIED %coreattrs; > <!--== Text layout and line breaks ==--> <!ELEMENT em (%flow;)*> <!ATTLIST em xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT strong (%flow;)*> <!ATTLIST strong xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT b (%flow;)*> <!ATTLIST b xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT i (%flow;)*> <!ATTLIST i xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT u (%flow;)*> <!ATTLIST u xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT big (%flow;)*> <!ATTLIST big xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT small (%flow;)*> <!ATTLIST small xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ENTITY % TAlign "(left|right|center)"> <!ENTITY % WrapMode "(wrap|nowrap)" > <!ELEMENT p (%fields; | do)*> <!ATTLIST p align %TAlign; "left" mode %WrapMode; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT br EMPTY> <!ATTLIST br xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ENTITY quot """> <!-- quotation mark --> <!ENTITY amp "&#38;"> <!-- ampersand --> <!ENTITY apos "'"> <!-- apostrophe --> <!ENTITY lt "&#60;"> <!-- less than --> <!ENTITY gt ">"> <!-- greater than --> <!ENTITY nbsp " "> <!-- non-breaking space --> <!ENTITY shy "­"> <!-- soft hyphen (discretionary hyphen) --> <!-- Copyright Wireless Application Protocol Forum Ltd., 1998,1999. All rights reserved. -->
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用 WML <access> 定义关于 deck 的访问控件的信息。 1.1 <card> 定义 deck 中的一个 card。 1.1 <head> 包含关于文档的信息。 1.1 <meta> 定义有关文档的元信息。 1.1 <template> 为 deck 中的所有 card 定义代码模板。 1.1 <wml> 定义 WML deck (WML 根) 1.1 <!--> 定义注释。 1.1 文本元素 开始标签 作用 WML <br> 定义一个换行。 1.1 <p> 定义一个段落。 1.1 <table> 定义表格。 1.1 <td> 定义一个表格单元(表格数据)。 1.1 <tr> 定义一个表格行。 1.1 文本格式化标签 开始标签 作用 WML <b> 定义粗体的文本。 1.1 <big> 定义大号的文本。 1.1 <em> 定义着重文本。 1.1 <i> 定义斜体的文本。 1.1 <small> 定义小号的文本。 1.1 <strong> 定义强调文本。 1.1 <u> 定义下划线文本。 1.1 锚元素 开始标签 作用 WML <a> 定义一个锚(链接)。 1.1 <anchor> 定义一个锚(链接)。 1.1 图像元素 开始标签 作用 WML <img> 定义图像。 1.1 事件元素 开始标签 作用 WML <do> 在用户点击屏幕上的一个单词或短语时激活一个任务。 1.1 <onevent> 包含了当某些事件发生时所执行的代码。 1.1 <postfield> 包含了连同 <go> 标签被送往服务器的信息。 1.1 任务元素 开始标签 作用 WML <go> 表示跳转到新卡片的动作。 1.1 <noop> 表示不进行任何动作(noop 指的是 "no operation")。 1.1 <prev> 表示返回前一个访问过的卡片。 1.1 <refresh> 刷新指定的卡片变量。如果有变量显示在屏幕上,此任务也会刷新屏幕。 1.1 输入元素 开始标签 作用 WML <fieldset> 用于对卡片中的相关元素进行分组。 1.1 <input> 定义输入字段(用户可在其中输入文本的文本域)。 1.1 <optgroup> 定义可选列表中的一组选项。 1.1 <option> 定义可选列表中的选项。 1.1 <select> 定义可选列表。 1.1 变量元素 开始标签 作用 WML <setvar> 在 <go>、<prev> 或 <refresh> 任务中把变量设置为指定的值。 1.1 <timer> 定义卡片计时器。
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 字符实体
结果 描述 实体名称 实体编号 & ampersand & & ' apostrophe ' ' > greater-than > > < less-than < < non-breaking space   " quotation mark " " soft hyphen ­ ­ WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素 开始标签 作用
WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 完整的 WML DTD:
<!-- Wireless Markup Language (WML) Document Type Definition. Copyright Wireless Application Protocol Forum Ltd., 1998,1999. All rights reserved. WML is an XML language. Typical usage: <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> ... </wml> Terms and conditions of use are available from the Wireless Application Protocol Forum Ltd. web site at http://www.wapforum.org/docs/copyright.htm. --> <!ENTITY % length "CDATA"> <!-- [0-9] for pixels or [0-9] "%" for percentage length --> <!ENTITY % vdata "CDATA"> <!-- attribute value possibly containing variable references --> <!ENTITY % HREF "%vdata;"> <!-- URI, URL or URN designating a hypertext node. May contain variable references --> <!ENTITY % boolean "(true|false)"> <!ENTITY % number "NMTOKEN"> <!-- a number, with format [0-9] --> <!ENTITY % coreattrs "id ID #IMPLIED class CDATA #IMPLIED"> <!ENTITY % emph "em | strong | b | i | u | big | small"> <!ENTITY % layout "br"> <!ENTITY % text "#PCDATA | %emph;"> <!-- flow covers "card-level" elements, such as text and images --> <!ENTITY % flow "%text; | %layout; | img | anchor | a | table"> <!-- Task types --> <!ENTITY % task "go | prev | noop | refresh"> <!-- Navigation and event elements --> <!ENTITY % navelmts "do | onevent"> <!--============= Decks and Cards =============--> <!ELEMENT wml ( head?, template?, card )> <!ATTLIST wml xml:lang NMTOKEN #IMPLIED %coreattrs; > <!-- card intrinsic events --> <!ENTITY % cardev "onenterforward %HREF; #IMPLIED onenterbackward %HREF; #IMPLIED ontimer %HREF; #IMPLIED" > <!-- card field types --> <!ENTITY % fields "%flow; | input | select | fieldset"> <!ELEMENT card (onevent*, timer?, (do | p)*)> <!ATTLIST card title %vdata; #IMPLIED newcontext %boolean; "false" ordered %boolean; "true" xml:lang NMTOKEN #IMPLIED 蕆dev; %coreattrs; > <!--============= Event Bindings =============--> <!ELEMENT do (%task;)> <!ATTLIST do type CDATA #REQUIRED label %vdata; #IMPLIED name NMTOKEN #IMPLIED optional %boolean; "false" xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT onevent (%task;)> <!ATTLIST onevent type CDATA #REQUIRED %coreattrs; > <!--======== Deck-level declarations ========--> <!ELEMENT head ( access | meta ) > <!ATTLIST head %coreattrs; > <!ELEMENT template (%navelmts;)*> <!ATTLIST template 蕆dev; %coreattrs; > <!ELEMENT access EMPTY> <!ATTLIST access domain CDATA #IMPLIED path CDATA #IMPLIED %coreattrs; > <!ELEMENT meta EMPTY> <!ATTLIST meta http-equiv CDATA #IMPLIED name CDATA #IMPLIED forua %boolean; #IMPLIED content CDATA #REQUIRED scheme CDATA #IMPLIED %coreattrs; > <!--================ Tasks ================--> <!ELEMENT go (postfield | setvar)*> <!ATTLIST go href %HREF; #REQUIRED sendreferer %boolean; "false" method (post|get) "get" accept-charset CDATA #IMPLIED %coreattrs; > <!ELEMENT prev (setvar)*> <!ATTLIST prev %coreattrs; > <!ELEMENT refresh (setvar)*> <!ATTLIST refresh %coreattrs; > <!ELEMENT noop EMPTY> <!ATTLIST noop %coreattrs; > <!--============= postfield =============--> <!ELEMENT postfield EMPTY> <!ATTLIST postfield name %vdata; #REQUIRED value %vdata; #REQUIRED %coreattrs; > <!--============= variables =============--> <!ELEMENT setvar EMPTY> <!ATTLIST setvar name %vdata; #REQUIRED value %vdata; #REQUIRED %coreattrs; > <!--============= Card Fields =============--> <!ELEMENT select (optgroup|option) > <!ATTLIST select title %vdata; #IMPLIED name NMTOKEN #IMPLIED value %vdata; #IMPLIED iname NMTOKEN #IMPLIED ivalue %vdata; #IMPLIED multiple %boolean; "false" tabindex %number; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT optgroup (optgroup|option) > <!ATTLIST optgroup title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT option (#PCDATA | onevent)*> <!ATTLIST option value %vdata; #IMPLIED title %vdata; #IMPLIED onpick %HREF; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT input EMPTY> <!ATTLIST input name NMTOKEN #REQUIRED type (text|password) "text" value %vdata; #IMPLIED format CDATA #IMPLIED emptyok %boolean; "false" size %number; #IMPLIED maxlength %number; #IMPLIED tabindex %number; #IMPLIED title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT fieldset (%fields; | do)* > <!ATTLIST fieldset title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT timer EMPTY> <!ATTLIST timer name NMTOKEN #IMPLIED value %vdata; #REQUIRED %coreattrs; > <!--============= Images =============--> <!ENTITY % IAlign "(top|middle|bottom)" > <!ELEMENT img EMPTY> <!ATTLIST img alt %vdata; #REQUIRED src %HREF; #REQUIRED localsrc %vdata; #IMPLIED vspace %length; "0" hspace %length; "0" align %IAlign; "bottom" height %length; #IMPLIED width %length; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!--============= Anchor =============--> <!ELEMENT anchor ( #PCDATA | br | img | go | prev | refresh )*> <!ATTLIST anchor title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT a ( #PCDATA | br | img )*> <!ATTLIST a href %HREF; #REQUIRED title %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!--============= Tables =============--> <!ELEMENT table (tr) > <!ATTLIST table title %vdata; #IMPLIED align CDATA #IMPLIED columns %number; #REQUIRED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT tr (td) > <!ATTLIST tr %coreattrs; > <!ELEMENT td ( %text; | %layout; | img | anchor | a )*> <!ATTLIST td xml:lang NMTOKEN #IMPLIED %coreattrs; > <!--== Text layout and line breaks ==--> <!ELEMENT em (%flow;)*> <!ATTLIST em xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT strong (%flow;)*> <!ATTLIST strong xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT b (%flow;)*> <!ATTLIST b xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT i (%flow;)*> <!ATTLIST i xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT u (%flow;)*> <!ATTLIST u xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT big (%flow;)*> <!ATTLIST big xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT small (%flow;)*> <!ATTLIST small xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ENTITY % TAlign "(left|right|center)"> <!ENTITY % WrapMode "(wrap|nowrap)" > <!ELEMENT p (%fields; | do)*> <!ATTLIST p align %TAlign; "left" mode %WrapMode; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ELEMENT br EMPTY> <!ATTLIST br xml:lang NMTOKEN #IMPLIED %coreattrs; > <!ENTITY quot """> <!-- quotation mark --> <!ENTITY amp "&#38;"> <!-- ampersand --> <!ENTITY apos "'"> <!-- apostrophe --> <!ENTITY lt "&#60;"> <!-- less than --> <!ENTITY gt ">"> <!-- greater than --> <!ENTITY nbsp " "> <!-- non-breaking space --> <!ENTITY shy "­"> <!-- soft hyphen (discretionary hyphen) --> <!-- Copyright Wireless Application Protocol Forum Ltd., 1998,1999. All rights reserved. -->