Wireless Application Protocol
Wireless Application Protocol
WAP stands for Wireless Application Protocol. It is a protocol designed for micro-
browsers and it enables the access of internet in the mobile devices. It uses the mark-
up language WML (Wireless Markup Language and not HTML), WML is defined as XML
1.0 application. It enables creating web applications for mobile devices. In 1998, WAP
Forum was founded by Ericson, Motorola, Nokia and Unwired Planet whose aim was
to standardize the various wireless technologies via protocols.
WAP protocol was resulted by the joint efforts of the various members of WAP Forum.
In 2002, WAP forum was merged with various other forums of the industry resulting
in the formation of Open Mobile Alliance (OMA).
WAP Microbrowser
To browse a standard internet site you need a web browser. Similar way to browse a WAP
enables website, you would need a micro browser. A Micro Browser is a small piece of
software that makes minimal demands on hardware, memory and CPU. It can display
information written in a restricted mark-up language called WML. Although, tiny in memory
footprint it supports many features and is even scriptable.
Today, all the WAP enabled mobile phones or PDAs are equipped with these micro browsers
so that you can take full advantage of WAP technology.
WMLScript
Once again, you must be using Java Script or VB script to enhance the functionality of your
web applications. Same way, WMLScript can be used to enhance the functionality of a service,
just as Java script can be utilized in HTML. It makes it possible to add procedural logic and
computational functions to WAPbased services.
The content available at the web server may be static or dynamic. Static content is produced
once and not changed or updated very often; for example, a company presentation. Dynamic
content is needed when the information provided by the service changes more often; for
example, timetables, news, stock quotes, and account information. Technologies such as
Active Server Pages (ASP), Common Gateway Interface (CGI), and Servlets allow content to be
generated dynamically.
WAP - Architecture
WAP is designed in a layered fashion, so that it can be extensible, flexible, and scalable. As a
result, the WAP protocol stack is divided into five layers −
Session Layer
Wireless Session Protocol (WSP). Unlike HTTP, WSP has been designed by the WAP Forum to
provide fast connection suspension and reconnection.
Transaction Layer
Wireless Transaction Protocol (WTP). The WTP runs on top of a datagram service, such as
User Datagram Protocol (UDP) and is part of the standard suite of TCP/IP protocols used to
provide a simplified protocol suitable for low bandwidth wireless stations.
Security Layer
Wireless Transport Layer Security (WTLS). WTLS incorporates security features that are based
upon the established Transport Layer Security (TLS) protocol standard. It includes data
integrity checks, privacy, service denial, and authentication services.
Transport Layer
Wireless Datagram Protocol (WDP). The WDP allows WAP to be bearer-independent by
adapting the transport layer of the underlying bearer. The WDP presents a consistent data
format to the higher layers of the WAP protocol stack, thereby offering the advantage of
bearer independence to application developers.
Each of these layers provides a well-defined interface to the layer above it. This means that
the internal workings of any layer are transparent or invisible to the layers above it. The
layered architecture allows other applications and services to utilise the features provided by
the WAP-stack as well. This makes it possible to use the WAP-stack for services and
applications that currently are not specified by WAP.
The WAP protocol architecture is shown below alongside a typical Internet Protocol stack.
Note that the mobile network bearers in the lower part of the figure above are not part of
the WAP protocol stack.
WAP - Environment
Wireless Application Environment (WAE), the uppermost layer in the WAP stack, provides an
environment that enables a wide range of applications to be used on the wireless devices. We
have earlier discussed about the WAP WAE programming model. In this chapter, we will focus
on the various components of WAE.
Components of WAE
Addressing Model
A syntax suitable for naming resources stored on servers. WAP use the same addressing
model as the one used on the Internet that is Uniform Resource Locators (URL).
WMLScript
A lightweight scripting language. WMLScript is based on ECMAScript, the same scripting
language that JavaScript is based on. It can be used for enhancing services written in WML in
the way that it to some extent adds intelligence to the services; for example, procedural logic,
loops, conditional expressions, and computational functions.
In dynamic applications, the MIME type must be set on the fly, whereas in static WAP
applications, the web server must be configured appropriately.
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">
<wml>
<card>
...
</card>
...more cards...
</wml>
The first line of this text says that this is an XML document and the version is 1.0. The second
line selects the document type and gives the URL of the document type definition (DTD). This
DTD gives the full XML definition of WML. The DTD referenced is defined in WAP 1.1, but this
header changes with the versions of the WML. The header must be copied exactly so that the
tool kits automatically generate this prolog.
The body is enclosed within a <wml>...</wml> tag pair as shown above. The body of a WML
document can consist of one or more of the following −
• Deck
• Card
• Content to be shown
• Navigation instructions
WML Commands
The commands used in WML are summarized as follows −
Formatting
Command Description
<p> Paragraph
<b> Bold
<big> Large
<em> Emphasized
<I> Italicized
<small> Small
<u> Underlined
Inserting Images
<img src="image-path/image - name" alt="Picture not available" />
Using Tables
Command Description
Variables
Declared as −
Used as −
$ identifier or
$ (identifier) or
$ (Identifier; conversion)
Forms
Command Description
Task Elements
Command Description
Command Description
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">
<!-- WML prolog.declaration of file type and version>
<wml>
<!-- Declaration of the WML deck>
<card id="info" newcontext="true">
<!-- declaration of a card in deck>
<p align="center"><b>Information Center</b></p>
<!--paragraph declaration to display heading>
<p>
<!--paragraph declaration to display links>
<a href="Movie.wml">1. Movies info.</a>
<a href="Weather.wml">2. Weather Info.</a>
<!--declaration of links for weather and movies>
</p>
</card>
<!-- card end>
</wml>
<!-- program end>
WAP - WML Script
WMLScript (Wireless Markup Language Script) is the client-side scripting language of WML
(Wireless Markup Language). A scripting language is similar to a programming language, but
is of lighter weight. With WMLScript, the wireless device can do some of the processing and
computation. This reduces the number of requests and responses to/from the server.
Statement Description
The functions used are stored in a separate file with the extension .wmls. The functions are
called as the filename followed by a hash, followed by the function name −
maths.wmls#squar()
Whitespaces in WMLScript
Except in string literals, WMLScript ignores extra whitespaces like spaces, tabs, and newlines.
Banking
• Accessing account statements.
• Paying bills.
• Transferring money between accounts.
Finance
• Retrieving stock and share prices.
• Buying and selling stocks and shares.
• Looking up interest rates.
• Looking up currency exchange rates.
Shopping
• Buying everyday commodities.
• Browsing and buying books.
• Buying CDs.
Ticketing
• Booking or buying airline tickets.
• Buying concert tickets.
• Booking theatre tickets.
Entertainment
• Retrieving restaurant details.
• Looking up clubs.
• Finding out what is playing in what cinemas.
• Playing solitaire games.
• Playing interactive games.
Weather
• Retrieving local weather forecasts.
• Looking up weather at other locations.
E- Messaging
• Voice mail.
• Unified Messaging.
• Enhanced support of legacy SMS services.
Live WAP Examples
Following are some of the examples of WAP applications −
• 123Jump (http://www.123jump.com) A selection of stock data and news, all
via WAP.
• 1477.com (http://1477.com) WAP/Web development services.
• 2PL World-Wide Hotel Guide (http://wap.2pl.com) A worldwide hotel guide
accessible in multiple languages via a WAP-enabled device.
• AEGEE-Eindhoven (http://wappy.to/aegee/) A Europe-wide students
association, whose goal is to allow all students to integrate and learn about
each others cultures.
• Ajaxo (http://www.ajaxo.com) A WAP service for Wireless Stock Trading from
any WAP-enabled device.
• Aktiesidan (http://mmm.aktiesidan.com/servlets/aktiesidan/) A Swedish
stock-market monitoring service, all WAP-enabled.
• Amazon.com Bookshop (http://www.amazon.com/phone/) Amazon.com
has launched this WAP portal (HDML-based) for browsing books.
• Traffic Maps (http://www.webraska.com/) A French service that monitors
and shows the latest in traffic news via maps.
WAP - Key Benefits
Subscribers
It is crucial that the subscribers benefit from using WAP based services. The key benefits can
be summarized as −
• Portability
• Easy to use
• Access to a wide variety of services on a competitive market
• The possibility of having personalised services
• Fast, convenient, and efficient access to services
• To fulfil as many customers needs as possible, WAP devices will be available in
various form factors, e.g. pagers, handheld PCs, and phones
Operators
Many of the advantages mentioned under "Service Providers" are be applicable to operators
as well. The operator's benefits may include −
• Address new market segments of mobile users by enabling a wider range of
mobile VAS.
• Deploy telephony services that in contrast to traditional telephony services are
easy to create, update, and personalise
• Use the flexibility of WAP as a tool to differentiate from competitors
• Attractive interface to services will increase usage
• Increased revenues per user due to higher network utilisation
• Convenient service creation and maintenance including short time-to-market
• Replace expensive customer care centres with WAP based services (E-care)
• WAP services are designed to be independent of the network, implying that an
operator who runs different types of networks only have to develop its services
ones
• An open standard means that equipment will be provided by many
manufacturers
Service Providers
WAP opens new possibilities for service and content providers since they not necessarily have
to come to an agreement with a specific operator about providing services to their customers.
For example, the gains are −
• Create a service once, make it accessible on a broad range of wireless networks
• Address new market segments by launching innovative mobile VAS. Keep old
customers by adapting existing Internet services to WAP
• Keep old customers by adapting existing Internet services to WAP
• Convenient service creation and maintenance
• Creating a WAP service is no harder than creating an Internet service today
since WML and WMLScript are based on well-known Internet technology
• Use standard tools like ASP or CGI to generate content dynamically
• Utilise existing investments in databases, etc that are the basis of existing
Internet services
Manufacturers
Mobile devices supporting WAP will be available in many different form factors, e.g., cellular
phones, pagers, and handheld PCs. Hardware manufacturers will also need to supply
operators with equipment such as WAP Gateway/Proxys and WTA servers. Manufacturers
benefit in the following ways −
• WAP scales across a broad range of mobile networks, meaning that WAP
implementations can be used in devices supporting different types of
networks.
• The expected wide adoption of WAP implies that economies of scales can be
achieved, meaning that the huge mass-market can be addressed
• The fact that WAP is designed to consume minimal amount of memory, and
that the use of proxy technology relieves the CPU, means that inexpensive
components can be used in the handsets
• Reuse the deep knowledge about wireless network infrastructure to develop
advanced servers that seamlessly integrates mobile VAS with telephony
• Seize the opportunity to introduce new innovative products
Tools Providers
Today, we have a number of tools available for creating applications for the web. Content
developers have become accustomed to the convenience that provides. Tools providers will
be able to −
• Reuse and modify existing products to support WAP or even integrate WAP support in
existing tools.
• Address a new customer base in the wireless community.