WHAT IS WAP?WHAT IS WAP?
WAP is Wireless Application ProtocolWAP is Wireless Application Protocol
WAPWAP is an is an openopen internationalinternational standardstandard for for
application layerapplication layer network communications network communications
in a in a wireless communicationwireless communication environment. environment.
Its main use is to enable access to the Its main use is to enable access to the
InternetInternet (HTTP) from a (HTTP) from a mobile phonemobile phone or or
PDA. PDA.
WHAT IS PROTOCOL?WHAT IS PROTOCOL?
A A ProtocolProtocol is a set of guidelines or rules. is a set of guidelines or rules.
In In computing and internetcomputing and internet
FEATURES OF WAPFEATURES OF WAP
WAP stands for WAP stands for WWireless ireless AApplication pplication PProtocol rotocol
WAP is anWAP is an application communication protocol application communication protocol
WAP is used to WAP is used to access services and informationaccess services and information
WAP is WAP is inheritedinherited from Internet standards from Internet standards
WAP is for WAP is for handheld deviceshandheld devices such as such as mobile mobile
phonesphones
WAP is a WAP is a protocolprotocol designed for designed for micro browsersmicro browsers
WAP enables the creating of WAP enables the creating of web applicationsweb applications for for
mobile devices. mobile devices.
WAP uses the WAP uses the mark-up language WMLmark-up language WML (not HTML) (not HTML)
WML is defined as an WML is defined as an XML 1.0XML 1.0 application application
WAP Micro BrowsersWAP Micro Browsers
To fit into a small wireless terminal, WAP uses a To fit into a small wireless terminal, WAP uses a
Micro Browser.Micro Browser.
A Micro Browser is a small piece of software that A Micro Browser is a small piece of software that
makes minimal demands on hardware, memory makes minimal demands on hardware, memory
and CPU. It can display information written in a and CPU. It can display information written in a
restricted mark-up language called WML.restricted mark-up language called WML.
The Micro Browser can also interpret a reduced The Micro Browser can also interpret a reduced
version of JavaScript called WMLScript.version of JavaScript called WMLScript.
COMPONENTS OF WAPCOMPONENTS OF WAP
WMLWML
WML stands for WML stands for WWireless ireless MMarkup arkup LLanguage. It anguage. It
is a mark-up language inherited from HTML, but is a mark-up language inherited from HTML, but
WML is based on XML, so it is much stricter WML is based on XML, so it is much stricter
than HTML.than HTML.
Differs from HTML in the followingDiffers from HTML in the following
WML was WML was specifically designed for wirelessspecifically designed for wireless
terminalsterminals with a target screen that is only a few lines with a target screen that is only a few lines
long and about an inch wide.long and about an inch wide.
WML is WML is case sensitivecase sensitive, and all tags and attributes , and all tags and attributes
should be in lowercase.should be in lowercase.
WML doesn't assume that a keyboard or a mouse is WML doesn't assume that a keyboard or a mouse is
available for useravailable for user inputinput
WAP Components (contd)…WAP Components (contd)…
WAP GatewayWAP Gateway
EncoderEncoder: converts WML to binarized WML: converts WML to binarized WML
AdaptorAdaptor: provides additional information : provides additional information
through HTTP headerthrough HTTP header
Translate HTTP requests to WSP.Translate HTTP requests to WSP.
Convert between SSL and WTLSConvert between SSL and WTLS
Convert transport protocols (TCP and WDPConvert transport protocols (TCP and WDP
WML ScriptWML Script
WML uses WML Script to run simple code WML uses WML Script to run simple code
on the client. WML Script is a light on the client. WML Script is a light
JavaScript language. However, WML JavaScript language. However, WML
scripts are not embedded in the WML scripts are not embedded in the WML
pages. WML pages only contains pages. WML pages only contains
references to script URLs. WML scripts references to script URLs. WML scripts
need to be compiled into byte code on a need to be compiled into byte code on a
server before they can run in a WAP server before they can run in a WAP
browser. browser.
WAP HomepagesWAP Homepages
WAP homepages are not very different from WAP homepages are not very different from
HTML homepages. The markup language used HTML homepages. The markup language used
for WAP is WML (Wireless Markup Language). for WAP is WML (Wireless Markup Language).
WML uses tags - just like HTML - but the syntax WML uses tags - just like HTML - but the syntax
is stricter and conforms to the XML 1.0 standard.is stricter and conforms to the XML 1.0 standard.
WML pages have the extension *.WML, just like WML pages have the extension *.WML, just like
HTML pages have the extension *.HTML.HTML pages have the extension *.HTML.
WML TagsWML Tags
WML is mostly about text. Tags that would slow WML is mostly about text. Tags that would slow
down the communication with handheld devices down the communication with handheld devices
are not a part of the WML standard. The use of are not a part of the WML standard. The use of
tables and images is strongly restricted. tables and images is strongly restricted.
Since WML is an XML application, all tags are Since WML is an XML application, all tags are
case sensitive (<wml> is not the same as case sensitive (<wml> is not the same as
<WML>), and all tags must be properly closed.<WML>), and all tags must be properly closed.
Example of WML …Example of WML …
..
Card
Input
Elements
Navigation
Variables
<WML>
<CARD>
<DO TYPE=“ACCEPT”>
<GO URL=“#eCard”/>
</DO
Welcome!
</CARD>
<CARD NAME=“eCard”>
<DO TYPE=“ACCEPT”>
<GO URL=“/submit?N=$(N)&S=$(S)”/>
</DO>
Enter name: <INPUT KEY=“N”/>
Choose speed:
<SELECT KEY=“S”>
<OPTION VALUE=“0”>Fast</OPTION>
<OPTION VALUE=“1”>Slow</OPTION>
<SELECT>
</CARD>
</WML>
WML Decks and CardsWML Decks and Cards
WML pages are called DECKS. They are WML pages are called DECKS. They are
constructed as a set of CARDS, related to constructed as a set of CARDS, related to
each other with links. When a WML page each other with links. When a WML page
is accessed from a mobile phone, all the is accessed from a mobile phone, all the
cards in the page are downloaded from cards in the page are downloaded from
the WAP server. Navigation between the the WAP server. Navigation between the
cards is done by the phone computer - cards is done by the phone computer -
inside the phone - without any extra inside the phone - without any extra
access trips to the server. access trips to the server.
Limitations of Internet for Limitations of Internet for
Wireless ApplicationsWireless Applications
Traditional Internet applications cannot run on Traditional Internet applications cannot run on
mobile devices because of the following mobile devices because of the following
limitations:limitations:
Low bandwidth networkLow bandwidth network
High Latency networkHigh Latency network
Limited connection stabilityLimited connection stability
Small display size Small display size
Limited input facilityLimited input facility
Limited memoryLimited memory
Limited processing powerLimited processing power
WAP brings Internet to Hand-WAP brings Internet to Hand-
held Devicesheld Devices
WAP handles limited bandwidthWAP handles limited bandwidth
Minimizes traffic over wireless interfaceMinimizes traffic over wireless interface
WSPWSP layer, too, is binary encoded layer, too, is binary encoded
WTPWTP is not only designed to minimize amount of data but also is not only designed to minimize amount of data but also
number of transactionsnumber of transactions
WAP handles high latencyWAP handles high latency
WAEWAE uses scripting to avoid round trip delays, e.g. by validating uses scripting to avoid round trip delays, e.g. by validating
user input locallyuser input locally
WTAIWTAI environment introduces a environment introduces a repositoryrepository to hold services to hold services
that should be started in response to an event in mobile network, that should be started in response to an event in mobile network,
e.g. incoming call.e.g. incoming call.
WAP brings (contd)…WAP brings (contd)…
WAP handles less stable WAP handles less stable
connectionsconnections
The sessions supported by The sessions supported by WSPWSP are assumed to be long-lived. are assumed to be long-lived.
WTPWTP layer has been kept very simple compared to TCP layer has been kept very simple compared to TCP
WTPWTP supports selective retransmission of data supports selective retransmission of data
WAP handles WAP handles smallsmall displays displays
WMLWML structures its documents in structures its documents in ‘Decks & Cards’‘Decks & Cards’
When an application is executed, user navigates through a series of cardsWhen an application is executed, user navigates through a series of cards
WAP brings (contd)…WAP brings (contd)…
WAP handles limited input WAP handles limited input
facilitiesfacilities
The The WML elementsWML elements can be easily be implemented without much can be easily be implemented without much
input required from the key-boardinput required from the key-board
Deck & CardsDeck & Cards model requires minimal navigation between pages model requires minimal navigation between pages
Soft buttonsSoft buttons or user-definable keys are also supported by WML or user-definable keys are also supported by WML
WAP handles limited memory andWAP handles limited memory and
CPU CPU
Defining a Defining a light weight protocol stacklight weight protocol stack
Limited functionality provided by Limited functionality provided by WML & WMLScriptWML & WMLScript
Binary encodingBinary encoding of WML & WMLScript of WML & WMLScript
Some WAP applicationsSome WAP applications
Location-based Location-based
servicesservices
Real-time traffic reportingReal-time traffic reporting
Event/restaurant recommendationEvent/restaurant recommendation
Highly customized adsHighly customized ads
Instant messaging-type Instant messaging-type ““buddybuddy””
locationlocation
Enterprise solutions Enterprise solutions
Email accessEmail access
Database accessDatabase access
A A ““global intranetglobal intranet””
Information updates Information updates ““pushedpushed”” to to
WAPWAP devices devices
Financial services
–Banking
–Bill-paying
–Stock trading
–Funds transfers
Travel services
–Schedules and rescheduling
–Reservations