返回列表 发帖

WML向XHTML的迁移---Nokia官方文档

1. 引言
本文描述了WML 1.x向XHTML Mobile Profile 的演进过程,它是为使用WML开发移动因特网(INTERNET)服务的WAP开发者而编写的。其目的是为开发人员提供指南,以便为WML向XHTML的转变作好准备工作。
目前,已经有两种不同的用于无线和有线世界的语言规范:用于万维网(WWW)网页出版的HTML以及用于无线服务的WML。XHTML将使得无线因特网和有线因特网的关系更加紧密,而且它是唯一被定义为同时用于无线和有线网页的语言。XHTML使得对网页布局的控制比WML更为有效和简单,因此,对于消费者来说,它能够提高移动服务的可用性。
2. WAP的演进
无线应用协议(WAP)是一个为移动因特网应用和浏览定义的全球标准。它的功能与WWW相似,但它的设计宗旨是适用于具有有限内存和较小屏幕,以及较窄带宽的因特网连接的小巧设备,而且与因特网的连接可能是不可靠的并且具有很长的延时。第一代WAP定义了一个包括Wireless Markup Language(WML 1.x)的应用环境,以及一个优化的通信协议栈。
对于移动设备来说,WAP的未来取决于其与广泛接受的因特网标准的紧密结合。WAP论坛和万维网联盟(W3C)在过去的若干年中已经成功地定义了许多移动因特网标准。最近,WAP论坛已经开始采用W3C中带有Cascading Style Sheets(CSS)的XHTML标准来作为WML2.0的基础。这一向XHTML Mobile Profile和CSS的转变将加强移动浏览器在因特网主流世界的地位,并且使得布局设计和格式选择的范围比以前增大了很多。
2.1 WML的演化
XHTML是下一代WML的基础。具有WAP CSS的XHTML Mobile Profile 标记语言是构成WML2.0的主要部分。它能够对原有的WML提供一些增强功能,特别是在内容的表现方面。但它也借用了许多适用于WAP的规范。例如,脚本(scripting)、推送(push)以及电话功能集成(WTAI)等功能大量地借用了早期的WAP规范。

一个成功的移动服务不应该依赖于支持它的技术方式。因此,不管使用什么标准,服务的差异性将基于灵活的设计、强大的品牌效应、服务的不断完善以及尽力倾听消费者的需求等。

WML向XHTML的迁移---Nokia官方文档

[这个贴子最后由starlight在 2006/01/15 09:39pm 第 1 次编辑] 4. 迁移路径 目前WML用于无线应用的内容创建。从开发人员的观点来看,创建应用不应该使用任何特定语言的这一原则是非常重要的,这预示着WML将会向XHTML转变。 4.1 开发人员从WML转向XHTML 表2给出了一个WML开发人员在准备为XHTML Mobile Profile开发内容时需要做的工作。这些工作必须考虑到以下三种不同情况: 1) 拥有WML经验的开发人员创建新的内容(开发人员可以使用工具或简单编辑器完成此项工作)。 2) 拥有WML经验的开发人员将现有静态的WML内容修改为XHTML。 3) 拥有服务器方面的开发经验以及WML/XML经验的开发人员对服务器应用进行修改,以便支持XHTML。

TOP

WML向XHTML的迁移---Nokia官方文档

6. 网关
现有的WAP网关将可以使用WAP2.0版本。由于不需要进行编码,XHTMLMObile Profile内容和WCSS将不需要网关的任何支持。XHTML内容是以文本格式,而不象WML是以二进制编码格式,通过网关的。通过本身对XHTML Mobile Profile和WML 1.x.的同时支持,诺基亚解决了客户端向后兼容的问题
之所以需要网关是因为最初XHTML的使能终端将使用WAP/WSP协议栈来进行传输。例如,XHTML是使用WAP/WSP栈传递到终端的。将来会使用TCP/IP协议栈进行传输。为了支持TCP/IP,WAP网关就需要进行升级。如果要实现WML 1.x的功能,例如WML事件等,则也需要网关。
当使用现有的WAP网关时,应该注意到其可能具有HTML至WML转换的功能。此功能可以自动地把HTML内容转换为WML格式。为了避免把XHTML内容也转换为WML格式,在Origin 服务器中应该正确设置MIME的类型。XHTML内容的正确MIME类型为:“application/xhtml+xml”。
7. 技术信息
本章给出了更多关于WAP2.0和WML向XHTML演化的技术信息(包括一些范例)。
7.1 XHTML Mobile Profile
HTML Mobile Profile 是用来开发WAP2.0应用软件的语言。下面的表3列出了属于WAP2.0版本技术规范的HTML移动协议通信模块。

表4:属于WAP 2.0版本技术规范的WAP CSS的特性和参数值
7.3 WML 1.x 兼容性扩展——非正式
包含在WAP2.0技术规范中的WML 1.x 兼容性扩展元素来自于WML 1.x。因为在XHTML中找不到同样的兼容性。如果在浏览器中不能实现全部的WML 1.x功能,后向兼容就需要这些扩展。诺基亚的XHTML 浏览器不需要使用这些扩展元素,因为诺基亚XHTML 浏览器本身就支持WML 1.x功能性。
WML兼容性扩展使用WML名字空间,用前缀"wml:"来加以区分。下面的表5以非正式的注释列出了WML 1.x 兼容性扩展。

TOP

WML向XHTML的迁移---Nokia官方文档

7.5 范例代码:在WML和XHTML网页之间建立链接 下面一段代码说明了如何创建从XHTML网页至WML deck之间的链接,以及相反方向的链接。WML deck能够用于调用WML脚本文件。 --------------page1.xhtml--------------- XHTML Mobile Profile page

A link to a WML deck

Link

--------------deck1.wml------------------

This is a WML deck.

Here

you can go back to the page.xhtml.

另外一个范例代码可以从诺基亚论坛站址中的诺基亚移动因特网工具包FAQ文件中获得。此范例代码说明了如何从XHTML Basic文件中调用WMLScript。实际上,不可能直接从XHTML Basic文件中调用WMLScript。首先,要求从XHTML Basic文件中调用WML文件,然后,此WML文件能够调用WMLScript。此范例代码还描述了如何使用WMLScript Dialog Library来触发提示。 7.6 范例代码:在XHTML中使用WTAI 下面的一段代码给出了如何在XHTML网页中使用WTAI公共库功能(MakeCall)。首先,创建一个从XHTML网页至WML deck之间的链接,然后,使用WTAI MakeCall功能在浏览器中直接发起电话呼叫。 通过创建一个从XHTML网页至包含此事件的WML card之间的链接,可以用同样的方法来使用WML事件。 --------------call.xhtml--------------- Call example

Call me:

800-123-12345

--------------call.wml------------------ 7.7 范例风格篇 诺基亚XHTML浏览器能够使用下面的范例风格篇。注意该范例并不包括所有规定的WCSS特性。 /* * A sample style sheet for XHTML Mobile Profile */ body {font-weight:normal; font-size:medium; font-family: sans-serif} p {margin-top:2px; margin-bottom:2px} strong {font-weight:bold} caption {text-align:center; font-weight:bold} blink {text-decoration:blink} li {color:black} ol {list-style-type:decimal; margin-left:12px; margin-top:2px; margin-bottom:2px} ul {list-style-type:disc; margin-left:12px; margin-bottom:2px; margin-top:2px} table,tr {border-width:1px; border-style:solid; text-align:center} td {align:right; valign:middle; border-width:1px; border-style:solid} th {font-weight:bold; text-align:right} hr {text-align:center; height:2px; width:100%; margin-top:2px; margin-bottom:2px} h1 {font-weight:bold; font-size:11px; margin-top:2px; margin-bottom:2px} h2 {font-size:11px; margin-top:2px; margin-bottom:2px; font-weight:normal} h3 {font-weight:bold; font-size:9px; margin-top:2px; margin-bottom:2px} h4 {font-size:9px; margin-top:2px; margin-bottom:2px; font-weight h5 {font-weight:bold; font-size:8px; margin-top:2px; margin-bottom:2px} h6 {font-size:8px; margin-top:2px; margin-bottom:2px; font-weight:normal} input {margin:1px; border-style:solid; border-width:1px; padding:2px} textarea {border-style:solid; border-width:1px} select {margin:1px; border-style:solid; padding:2px} .b {font-weight:bold} .u {text-decoration:underline} .big {font-size:larger} .small {font-size:smaller} 8. 小结 为了减少以后的修改工作量,创建无线应用程序和服务的开发人员在现有的开发工作中就应当考虑逐步地从WML向XHTML转变。当前主要使用的规范是以GPRS为承载的WAP1.2.1,但是开发人员应该牢记具有XHTML和WAP CSS功能的WAP 2.0不久将会投入使用。现在通过设计可升级的应用软件,可以为将来WML向XHTML的演进做好准备。

TOP

WML向XHTML的迁移---Nokia官方文档

术语和缩写列表
术语和缩写 说明
CHTML Compact Hypertext Markup Language/紧凑超文本标记语言
CSD Circuit Switched Data/电路交换数据
CSS Cascading Style Sheet/层叠风格篇
GPRS General Packet Radio Service/通用分组无线服务
HDML Handheld Device Markup Language/手持设备标记语言
HTML HyperText Markup Language/超文本标记语言
MIDP Mobile Information Device Profile/移动信息设备描述
MIME Multipurpose Internet Mail Extension/多用途因特网邮件扩展
MMS Multimedia Messaging Service/多媒体信息服务
Symbian OS Symbian Operating System/ Symbian操作系统
UI User Interface/用户界面
WAP Wireless Application Protocol/无线应用协议
WCSS WAP Cascading Style Sheet/WAP层叠风格篇
WML Wireless Markup Language/无线标记语言
WTAI Wireless Telephony Application Interface
XHTML Extensible HyperText Markup Language/扩展超文本标记语言
XML Extensible Markup Language/扩展标记语言

TOP

返回列表 回复 发帖