Proceeding of the 3rd International Conference on Informatics and Technology, 2009
Application of WAP for Internet Content and Services to Wireless Devices * G.K.Viju, + S. Raviraja Professor, Dept. of Computer Science, Karary University, Sudan. + Research Fellow, Dept of Artificial Intelligence, University of Malaya, Malaysia. *
[email protected], +
[email protected] *
Abstract The Wireless Application Protocol (WAP), a secure specification that allows users to access information instantly via handheld wireless devices such as mobile phones, pagers, two-way radios, smart phones and communicators. WAP supports most wireless networks. This includes CDPD, CDMA, GSM, PDC, PHS, TDMA, FLEX, ReFLEX, iDEN, TETRA, DECT, DataTAC, and Mobitex. WAP is supported by all operating systems. Specifically engineered for handheld devices include PalmOS, EPOC, Windows CE, FLEXOS, OS/9, and JavaOS. Although WAP supports HTML and XML, the WML language (an XML application) is specifically devised for small screens and one-hand navigation without a keyboard. WML is scalable from two-line text displays up through graphic screens found on items such as smart phones and communicators. WAP also supports WMLScript. It is similar to JavaScript, but makes minimal demands on memory and CPU power because it does not contain many of the unnecessary functions found in other scripting languages. Because WAP is fairly new, it is not a formal standard yet. It is still an initiative that was started by Unwired Planet, Motorola, Nokia, and Ericsson. Keywords: - Wireless application protocol, WML, WAP protocol suite, Wireless application environment, XHTML mobile profile, XHTML MP 1.2 PTD, ZHTML Mod, Document type declaration, wireless abstraction layer
1. Introduction Wireless Application Protocol (WAP) is an open international standard for application layer network communications in a wireless communication environment. Its main use is to enable access to the Mobile Web from a mobile phone or PDA. WAP, that use displays and access the Internet run what are called micro browsers, with small file sizes that can accommodate the low memory constraints of handheld devices and the lowbandwidth constraints of a wireless-handheld network. A WAP browser provides all of the basic services of a computer based web browser but simplified to operate within the restrictions of a mobile phone, such as its smaller view screen. WAP sites are websites written in, or dynamically converted to, WML (Wireless Markup Language) and accessed via the WAP browser. Before the introduction of WAP, service providers had extremely limited opportunities to offer interactive data services. Interactive data applications are required to support now commonplace activities such as Email by mobile phone, tracking of stock market prices, Sports results, News headlines and Music downloads.
2. Technical Specification The WAP standard describes a protocol suite that allows the interoperability of WAP equipment and software with many different network technologies. The rationale for this was to build a single platform for competing network technologies such as GSM and IS-95 (also known as CDMA) networks.
| Wireless Application Environment (WAE) | +------------------------------------------+ | Wireless Session Protocol (WSP) | +------------------------------------------+ | Wireless Transaction Protocol (WTP) | +------------------------------------------+ | Wireless Transport Layer Security (WTLS) | +------------------------------------------+ | Wireless Datagram Protocol (WDP) | +------------------------------------------+ | *** Any Wireless Data Network *** | +------------------------------------------+
©Informatics '09, UM 2009
\ | | | WAP | protocol | suite | | /
RDT6 - 164
Proceeding of the 3rd International Conference on Informatics and Technology, 2009
The bottom-most protocol in the suite is the WAP Datagram Protocol (WDP), which is an adaptation layer that makes every data network look a bit like UDP to the upper layers by providing unreliable transport of data with two 16-bit port numbers (origin and destination). WDP is considered by all the upper layers as one and the same protocol, which has several "technical realizations" on top of other "data bearers" such as SMS, USSD, etc. On native IP bearers such as GPRS, UMTS packet-radio service, or PPP on top of a circuit-switched data connection, WDP is in fact exactly UDP. WTLS provides a public-key cryptography-based security mechanism similar to TLS. Its use is optional. WTP provides transaction support (reliable request/response) that is adapted to the wireless world. WTP supports more effectively than TCP the problem of packet loss, which is common in 2G wireless technologies in most radio conditions, but is misinterpreted by TCP as network congestion. Finally, WSP is best thought of on first approach as a compressed version of HTTP. This protocol suite allows a terminal to emit requests that have an HTTP or HTTPS equivalent to a WAP gateway; the gateway translates requests into plain HTTP.
2.1. Wireless Application Environment (WAE) In this section, application-specific markup languages are defined for WAP version 1.X, the primary language of the WAE is WML, which has been designed from scratch for handheld devices with phone-specific features. In WAP 2.0, the primary markup language is XHTML Mobile Profile.
2.2. XHTML Mobile Profile XHTML Mobile Profile (XHTML MP) is a hypertextual computer language standard designed specifically for mobile phones and other resource-constrained devices. It is an XHTML document type defined by the Open Mobile Alliance. XHTML-MP is derived from XHTML Basic 1.0 by adding XHTML Modules, with later versions of the standard adding more modules. However, for certain modules, XHTML-MP does not mandate a complete implementation so an XHTML-MP browser may not be fully conforming on all modules. The XHTML MP 1.2 DTD is the current recommendation, which was finalized in March 2008.
2.3. The XHTML MP 1.2 DTD This specification defines the mark-up language XHTML Mobile Profile, a language designed for resourceconstrained Web clients. This XHTML document type is based upon the module framework and the modules defined by Modularization of XHTML” from the W3C. XHTML Mobile Profile is targeted at devices such as mobile phones, PDAs, pagers and set-top boxes that do not support the full set of XHTML features. It extends XHTML Basic with modules, elements and attributes to provide a richer authoring language. In addition to defining the Document Type, Definition for XHTML Mobile Profile, this specification defines conformance requirements for user agents that process XHTML Mobile Profile documents. This specification defines XHTML Mobile Profile, a mark-up language designed for resource-constrained Internet clients. The motivation for XHTML Mobile Profile is to provide an authoring language based upon XHTML that addresses the special requirements of clients operating on resource-constrained devices such as mobile phones, PDAs, pagers and set-top boxes. This specification is intended to be used to implement Internet clients that support XHTML Mobile Profile. It can also be used as a guide for authoring content using XHTML Mobile Profile, but this is not its primary purpose. XHTML Mobile Profile is an XHTML document type based upon the module framework and the modules defined by Modularization of XHTML [XHTMLMod]. XHTML Mobile Profile is also a strict subset of XHTML 1.1 [XHTML11] based upon XHTML Basic [XHTMLBasic]. It extends XHTML Basic to bring enhanced functionality to application authors, including additional presentation elements, support for internal style sheets, support for scripting, and many other features. XHTML Mobile Profile 1.1 builds upon 1.0 by adding support for a scripting environment. This includes a mechanism for including scripts within a document and a mechanism for binding scripts to events. In particular it is designed to integrate with ECMAScript Mobile Profile [ESMP]. XHTML Mobile Profile 1.2 builds upon 1.1 by adding: · · ·
Full XHTML forms, including file upload Definition of the implementation and use of the object element Extension for setting the input mode on a text form control
©Informatics '09, UM 2009
RDT6 - 165
Proceeding of the 3rd International Conference on Informatics and Technology, 2009
2.4 Use of XHTML Mobile Profile The XHTML Mobile Profile document type serves as an authoring language for content targeted at resourceconstrained devices. It is expected that it can be used for this purpose without further modification. The XHTML Mobile Profile document type could also serve as a host language, that is, a language containing a mix of XML vocabularies within one document type. Those considering its use as a host language should consider that it is not strictly XHTML Host Language Conforming, as it only partially includes certain modules. “XHTML Host Language Document Type Conformance” for more information.
2.5 Use of Script with XHTML Mobile Profile The use of script with XHTML Mobile Profile is through the Scripting Module defined by [XHTMLMod]. The Scripting Module defines elements and attributes used to contain information pertaining to executable scripts. [XHTMLMod] normatively references [HTML4] for the semantics of these elements and attributes. To promote interoperability, this specification attempts to clarify the processing of the elements and attributes of the Scripting Module, and to tighten requirements. The semantics for these elements is therefore defined by [HTML4] and this specification, with this specification taking precedence over [HTML4] as necessary.
2.6 DOCTYPE A Document Type Declaration, or DOCTYPE, is an instruction that associates a particular SGML or XML document (for example, a webpage) with a Document Type Definition (DTD) (for example, the formal definition of a particular version of HTML). In the serialized form of the document, it manifests as a short string of markup that conforms to a particular syntax. The HTML layout engines in modern web browsers perform DOCTYPE "sniffing" or "switching", wherein the DOCTYPE in a document served as text/html determines a layout mode, such as "quirks mode" or "standards mode". The text/html serialization of HTML 5, which is not SGML-based, uses the DOCTYPE only for mode selection. Since web browsers are implemented with special-purpose HTML parsers, rather than general-purpose DTD-based parsers, they don't use DTDs and will never access them even if a URL is provided. The DOCTYPE is retained in HTML 5 as a "mostly useless, but required" header only to trigger "standards mode" in commons browsers. To validate as XHTML-MP, a document must contain a proper Document Type Declaration, or DOCTYPE, depending on the version of specification followed:
2.7 MIME types The MIME type for XHTML Mobile Profile is "application/vnd.wap.xhtml+xml". Conforming user agents should also accept "application/xhtml+xml" and "text/html". Many desktop browsers will only validate XHTML-MP at display time, if an XML MIME type is specified. Multipurpose Internet Mail Extensions (MIME) is an Internet standard that extends the format of e-mail to support: • Text in character sets other than ASCII • Non-text attachments • Message bodies with multiple parts • Header information in non-ASCII character sets MIME's use, however, has grown beyond describing the content of e-mail to describing content type in general, including for the web. Virtually all human-written Internet e-mail and a fairly large proportion of automated e-mail is transmitted via SMTP in MIME format. Internet e-mail is so closely associated with the SMTP and MIME standards that it is sometimes called SMTP/MIME e-mail. The content types defined by MIME standards are also of importance outside of e-mail, such as in communication protocols like HTTP for the World Wide Web. HTTP requires that data be transmitted in the context of e-mail-like messages, although the data most often is not actually e-mail.
©Informatics '09, UM 2009
RDT6 - 166
Proceeding of the 3rd International Conference on Informatics and Technology, 2009
MIME is specified in six linked RFC memoranda: RFC 2045, RFC 2046, RFC 2047, RFC 4288, RFC 4289 and RFC 2049, which together define the specifications.
3.1 Versions • Version 1.2 added forms and object support. • Version 1.1 added full scripting supports intended to be used with ECMAScript Mobile Profile. • Version 1.0 extended XHTML Basic 1.0 with certain presentation elements and basic scripting support.
3.2 Supported Modules Modules included in XHTML-MP 1.2 are: • Structure • Texts • Hypertext • List • Forms • Basic Tables • Image • Object • Metainformation • Scripting • Style Sheet • Style Attribute • Link • Base XHTML-MP 1.2 also includes partial support for Presentation, Intrinsic Events and Legacy. Also this version includes an OMA-specific module ("Text Input Modes") for dealing with the various input modes allowed on mobile phones.
4. Development pitfalls Many problems arise when content written in XHTML is shown on different devices. For example, some devices will honour colors specified in CSS, while other devices will not. Building an adaptive application means delivering different content to different devices, according to their capabilities. This can bring huge complexity, given the number of different devices in the market with different hardware (screen-sizes, colouring capacity, buttons, memory and speed) and browsers. Software updates on mobile browsers are much more difficult than with desktop browsers, and as a result broken software tends to stay in use until the phone is discarded. Many software initiatives attempt to solve this problem. Most of these initiatives provide a proprietary language to write WAP content, which will render different content (XHTML-MP, WML, CHTML, etc) according to the requesting device. One free initiative is WURFL, which uses a hierarchical XML configuration file mapping hundreds of device capabilities. WURFL also uses a "Wireless Abstraction Layer", called WALL, which specifies special tags that are automatically converted into a markup language supported by the device. The W3C DDWG has created a specification to standardize access to repositories of device capability information, to be part of a common framework for content adaptation technologies.
5. Conclusion Out come of this study on the application of WAP for Internet content and services to wireless devices spots out the time of the release of the first version of WAP, there was great optimism about the use of wireless Internet. Over the last several years, WAP has suffered from numerous problems, including: inaccurate user perceptions about the look and feel of wireless Internet; low data rates; lack of stellar applications and content; and hype surrounding security issues. WAP is referred to as a global standard for bringing Internet content and services to wireless devices. WAP's solution for delivering Web content to bandwidth-limited cell phones is a complete infrastructure that integrates devices, servers, languages and protocols, WAP is also bound to flourish in other parts of the world once packetswitching networks are able to provide the all important "always on" connectivity. As third-generation (3G) wireless technologies are to deliver the required low bandwidth to support a user experience. Now Fourth-generation (4G) wireless technologies are to deliver the required higher bandwidth to support a broadband network. WAP is poised to be adopted by many in the days to come and to become a very critical application delivering technology in the fast emerging wireless world. The new generation which was implemented in the year 2008? The greatest advantage brought by XHTML MP is that developers can now use the same technologies for the
©Informatics '09, UM 2009
RDT6 - 167
Proceeding of the 3rd International Conference on Informatics and Technology, 2009
development of both web sites and WAP sites. This benefits WAP application development in the following ways: •
If you are familiar with web technologies such as HTML, XHTML, and CSS, you can start developing your WAP site almost immediately. If you are new to the above web technologies and now you learn XHTML MP, you learn at the same time how to write mark-up code for the web.
•
The same development tools can be used to develop both web sites and WAP sites. You can stick to your web development tools to build your mobile Internet browsing application. This result in a lower development cost (no need to buy new development tools) and a lower time investment (no need to learn new development tools).
•
Ordinary web browsers can be used to view your WAP site during the development process. (You should test your WAP site with emulators and real mobile phones before the final release, since the characteristics [e.g. screen size, number of colors supported] of real mobile devices vary considerably.)
•
HTML / XHTML pages on your web site can be converted to XHTML MP documents with minor changes or even without any changes. However, you have to make sure that the layout of the HTML / XHTML pages looks nicely on a small screen and that the file size does not exceed the maximum page size of your targeted mobile devices. It becomes easier to find a developer to join your mobile Internet application development team, since there are plenty of web developers on the job market.
Following are the other advantages of XHTML MP: •
XHTML MP supports WAP CSS, which enables the separation of content and presentation in different files. As you all know, mobile devices have very different characteristics such as screen sizes. The separation of the content and the presentation means you can write the content once, and change the style and layout to suit different mobile devices with various WAP CSS files.
•
With XHTML MP and WAP CSS, you have more control over the presentation. For example, you can control borders, backgrounds, margins, padding, etc. You can also specify the font sizes, font families and font colors. Such features are not available in WML 1.x.
References: 1. OMA: The WAP 2.0 conformance release 2. The HCI blog: A brief History of WAP 3. OMA: Frequently Asked Questions 4. WAP Forum: WAP 1.0 Specification Suite 5. WAP Forum: WAP 1.1 Specification Suite 6. WAP Forum: WAP 1.2.1 conformance release 7. The Wireless FAQ: What is the difference between WAP 1.1 and WAP 1.2? 8. MX Telecom: WAP Push 9. hdeveloper.openwave.com/docs/wappush_tech_overview.pdf Openwave: WAP Push Technology Overview] 10. Will Wap´s call go unanswered? vnunet.com, 2 June 2000 11. Silicon.com: BT Cellnet rapped over 'misleading' WAP ads Published 3 November 2000, retrieved 17 September 2008 12. http://press.nokia.com/PR/199902/777256_5.html Nokia 7110 Press Release 13. http://www.filibeto.org/mobile/firmware.html Nokia 7110 first public firmware revision date 14. The Globe and Mail: "Survivor's guide to wireless wonkery", 23 September 2005 15. IT Web: "A RIVR runs through it", 14 November 2000 16. Builder.au 2004/08/10: UK WAP usage doubles in 12 months 17. IMCR: NTT DoCoMo Inc.: Leadership Position in Japanese Mobile Market under Threat?
©Informatics '09, UM 2009
RDT6 - 168
Proceeding of the 3rd International Conference on Informatics and Technology, 2009
Retrieved 17 September 2008 18. U.S. Federal Communications Commission."FCC Revises 700 MHz Rules To Advance Interoperable Public Safety Communications And Promote Wireless Broadband Deployment", July 31, 2007. Accessed October 8, 2007. 19. Wired News: Gopher: Underground Technology 20. en.wikipedia.org/wiki/XHTML_Mobile_Profile 21. Users.jyu.fi/.../xhtml-mp/OMA-XHTMLMP-V1_2-20041222-D.pdf
©Informatics '09, UM 2009
RDT6 - 169