1997年5月,World Wide Web Consortium(W3C:万维网协会)成员Unwired Planet(现在的Phone.com),向W3C提交了HDML (Handheld Device Markup Language) Specification详情,此Specification在www.w3.org可查到。尽管W3C当时对Unwired Planet的提交予以批准,但当时的HDML却一直被认为是草案,并且至今一直没有改进过。
1999年6月,WAP Forum(论坛)发行了WML(Wireless Markup Language)v1.1,1999年11月发行v1.2,最新有关WML详情可在http://www.wapforum.org获得。
尽管两种语言的编程模式和功能基本相同,但二者存在显著区别。最主要的区别在于WML基于XML,而HDML却不是。基于XML最大的好处就是,各公司能利用可购买到的XML工具开发、解析、使用WML,并且可以使用XSL/XSLT创建WML deck。
两者的另一主要区别是,WML允许有自己的JavaScript版本(即WMLScript),而HDML却不允许。WMLScript使得程序员:可以检查用户输入的有效性、开发讯息和对话等。虽然HDML也能完成大多数相同的任务,但使用WMLScript可以减少网络交通量(通过在本地执行任务)。
另外,WML有DTD(Document Type Definition:文件类型定义),HDML没有。两种语言还存在一些小的功能上和语法上区别,当然这些并不太主要。两者的异同总结如下:
| Feature | HDML | WML |
| XML-based | No | Yes |
| DTD available | No | Yes |
| Scripting | None | WMLScript |
| Display Cards | Yes | Yes |
| Choice/Select Cards | Yes | Yes |
| Entry/Input Cards | Yes | Yes |
| Nodisplay Cards | Yes | Yes |
| Images in Text and Anchors | Yes | Yes |
| Variables | Yes | Yes |
| Deck Access Control | Yes | Yes |
| Deck Cache Control | Yes | Yes |
| Timers | No | Yes |
| Multiple Choice Lists | No | Yes |
| Bookmarks | Yes | No* |
| Nested Activities | Yes | No** |
| Images in Labels and Choices | Yes | No** |
| Mobile Originated Pre-fetch | Yes | No** |
| Key Accelerators for Links | Yes | No** |
综上所述,看来WML将会比HDML具有较广泛的应用。Phone.com都在建议它的用户转向WML,虽然目前它的UP.Link还在支持HDML应用软件。
在欧洲和日本,一些WAP设备已经不接受HDML格式文件。但在美国和加拿大,许多CDMA和CDPD电话只支持HDML,不过,这两个国家的移动电话极有可能也将支持WML。有一点还算幸运,就是把HDML转换为WML并不难。
其它参考网址:
- W3Schools.com
- WAP Forum
- Phone.com
- W3C Submissions
