Wireless Application Protocol
WAP
What is WAP?
• A set of protocols which allow data exchange for
mobile cellular systems
• The current world standard for the presentation and
delivery of wireless information
• It is device independent
• It is network independent
Wireless Application Protocol
(WAP)
• Goal: a set of communication protocol standards to
make accessing online services from a mobile phone
simple
• “The motivation for developing WAP was to extend
Internet technologies to wireless networks, bearers and
devices.”[90], page 4.
• Initially conceived by four companies: Ericsson,
Motorola, Nokia, and Openwave Systems Inc.
(formerly Unwired Planet)
• WAP Forum is an industry association to promote WAP,
they are now called “The Open Mobile Alliance Ltd.”
http://www.openmobilealliance.org/
WAP (first round) Summary
• Massive failure, because:
• tried to introduce a WAP protocol stack
• did not really provide an end-to-end service {because they wanted to
keep the operator in the middle of all transactions} - the result is that
content was in clear text in the WAP gateway
• the result was significant security problems - especially because the changes that were
introduced into the “WAPified” SSL introduced problems
• most operators used SMS to carry the WAP traffic and this was too
expensive and had very significant delay problems
• many terminals had problems with their software and each type had its
own resolution, size, … - so content had to be prepared for a specific
terminal {which increased content development costs - since automatic
conversion was not really successful}
• WAP 2.0 moves toward being an IP based stack (with HTTP, TLS, and
TCP) - although of course they still support their earlier “optimized /
wapified” stack. The new model is a direct connection between mobile
and HTTP server.
WAP 2.0
Wireless Profiled
HTTP(WP-HTTP)
a profile of HTTP for the wireless environment and is fully
interoperable with HTTP/1.1. Built on HTTP request/response
transaction. Supports message body compression of responses
andthe establishmentofsecure tunnels.
Transport Layer
Security(TLS)
a wireless profile of the TLS protocol, includes cipher suites,
certificate formats, signing algorithms and the use of session
resume.Support
end-to-end security at the transport level.
Wireless Profiled
TCP(WP-TCP)
provides connection-oriented services, optimized for wireless
environments and fully interoperable with standard TCP
implementations. Builds upon IETF Performance Implications of
Link Characteristics (PILC) working group recommendations
Wireless Session
Protocol(WSP)
Wireless Transaction Protocol (WTP), Wireless Transport Layer
Security (WTLS), Wireless Datagram Protocol (WDP) - as now
“Legacy Protocol Layers”[90]
WAP 2.0 new & enhanced services
WAP Push
allows content to be sent or "pushed" to devices by server-based applications via
a Push Proxy; real-time applications; provides control over the lifetime of
pushed messages, store & forward capabilities at the Push Proxy, control over
bearer choice for delivery.
User Agent
Profile (UAProf)
provides a mechanism for describing the capabilities of clients and the preferences of
users to an application server, based on the Composite Capabilities / Preference
Profiles (CC/PP) work of the W3C Wireless TelephonyApplication (WTA)
External
Functionality
Interface (EFI)
specifies the interface between WAE and components or entities with embedded
applications that execute outside of the defined WAE capabilities (i.e., basically
allowing plug-in modules) - thus allowing access to external devices (e.g. smart
cards, GPS, digital cameras, sensors, …)
Persistent
Storage
Interface
a standard set of storage services and interface for organizing, accessing, storing and
retrieving data on the wireless device or other connected memory device.
Data
Synchronization
adopts SyncML language for the data
synchronization (see www.syncml.org)
Multimedia
Messaging
Service (MMS)
permits deliveryof variedtypes of content
Provisioning
provides clients with information needed to operate on wirelessnetworks; permits
network operator to manage the devices on its network using a common set of tools
Pictogram tiny images, that can be used to quickly convey concepts in a small amount of space
Current Constraints of
Wireless Interfaces: Mobile Devices:
Less Bandwidth Less CPU Power
High Latency Less Memory and Storage
Less Stable Connections Restricted Power Consumption
Less PredictableAvailability Small / Variable Sized Displays
Diverse range of network standards
Variable Input Types (Keypad, Pen,
etc,)
• Wireless networks and phones
– have specific needs and requirements not addressed by
existing Internet technologies.
• WAP enables any data transport
– TCP/IP, UDP/IP, GUTS (IS-135/6), SMS, or USSD.
• The WAP architecture
– has several modular entities which together form a fully
compliant Internet entity
– all WML contentis accessed via HTTP 1.1 requests.
Why Use WAP ?
Why Use WAP ? (cont..)
• WAP utilizes standard Internet markup language technology
(XML)
• Optimizing the content and airlink protocols
• The WML UI components map well onto existing mobile
phone user interfaces
– no re-education of the end-users
– leveraging market penetration of mobile devices
• WAP utilizes plain Web HTTP 1.1 servers
– leveraging existing development methodologies
– CGI, ASP, NSAPI, JAVA, Servlets, etc.
WAP Model
• Now called the WAP “Proxy Model” – since
WAP gateway acts as a proxy:
WAP
gateway
origin
serverHTML
WML
filter
WML
microbrowser
Request
WML
Encoded Request
Encoded WML
GSM Network
WAP Programming Model
 Aligned with the Web Programming Model, uses the Pull Model
 Add telephony support with WTA (Wireless Telephony Application)
and enabling a Push Model, where a server can proactively send
content to the client.
WAP optional Proxy Model
 In WAP1.* (1998-2000) a WAP proxy (in the middle) was
used (still required for push)
WAP - Wireless Application Protocol
 Goals
 deliver Internet content and enhanced services to mobile devices
and users (mobile phones, PDAs)
 independence from wireless network standards
 open for everyone to participate, protocol specifications will be
proposed to standardization bodies
 applications should scale well beyond current transport media
and device types and should also be applicable to future
developments
 Platforms
 e.g., GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136, 3rd
generation systems (IMT-2000, UMTS, W-CDMA, cdma2000 1x EV-DO, …)
 Forum
 was: WAP Forum, co-founded by Ericsson, Motorola, Nokia, Unwired
Planet, further information www.wapforum.org
 now: Open Mobile Alliance www.openmobilealliance.org (Open
Mobile Architecture + WAP Forum + SyncML + …)
WAP - scope of standardization
 Browser
 “micro browser”, similar to existing, well-
known browsers in the Internet
 Script language
 similar to Java script, adapted to the
mobile environment
 WTA/WTAI
 Wireless Telephony Application (Interface): access to
all telephone functions
 Content formats
 e.g., business cards (vCard), calendar
events (vCalender)
 Protocol layers
 transport layer, security layer, session layer etc.
• The basic (erroneous) thoughts behind WAP were:
• that terminals were “limited” in processing / memory / display,
• that the communication channel was expensive,
• that the operator was “the” natural intermediary in every mobile
user’s interaction with any services, and
• that a special protocol stack was necessary to “optimize” for the
above.
• An emphasis was on push services: In push services content is
sent to the user without the user requesting it.
The WAP Architecture
Web Server
Content
CGI
Scripts
etc.
WMLDecks
withWML-Script
Client
WML
WML-
Script
WTAI
Etc.
WAP Gateway
WML Encoder
WMLScript
Compiler
ProtocolAdapters
HTTPWSP/WTP
WAP Push
 This service allows content to be sent or "pushed" to devices by
server-based applications via a Push Proxy
 WAP Push messages are specially formatted SMS messages that
display an alert message to the user, and give the user the option of
connecting directly to a particular URL via the mobile phone's WAP
browser
 Push functionality is especially relevant to real-time applications – e.g.
that send notifications as messaging, stock price and traffic update
alerts
 Without push, these applications would require the devices to poll
application servers for new information or status
 In wireless environments such polling activities would constitute
inefficient and wasteful use of the resources of wireless networks.
More Acronyms to learn
• WAE - Wireless Application Environment
• WSP - Wireless Session Protocol
• WTP - Wireless Transaction Protocol
• WTLS - Wireless Transport Layer Security
• WDP - Wireless Datagram Protocol
WAP 1.x - reference model and protocols
Security Layer (WTLS)
Session Layer (WSP)
Application Layer (WAE)
Transport Layer (WDP)TCP/IP,
UDP/IP,
media
SSL/TLS
HTML, Java
HTTP
Internet Wireless Application Protocol
Transaction Layer (WTP)
additional services
and applications
WCMP
A-SAP
S-SAP
TR-SAP
SEC-SAP
T-SAP
SMS USSD CSD IS-136 CDMA CDPD PDC-P Etc.
Bearers, ...
WAP Protocols
• WSP (Wireless Session Protocol)
– Provides the application layer of WAP with a consistent
interface for two session services.
• A connection-oriented service that operates above the
transaction layer protocol WTP.
• A connectionless service that operates above a secure or
non-secure datagram service (WDP).
WAP Protocols
• WTP (Wireless Transaction Protocol)
– Provide efficient request/reply based transport
mechanism suitable for devices with limited resources
over networks with low to medium bandwidth.
• WTP Push mode allows server to “push” data to a client
without request (e.g. notification of stock hitting target
price)
• WTP/WDP uses less than half the packets that TCP/IP
uses to transfer the same amount of data.
WAP Protocols
• WTLS (Wireless Transport Layer Security)
– A security protocol based upon the industry-standard
Transport Layer Security (TLS) protocol, formerly known as
Secure Sockets Layer (SSL). WTLS is intended for use with
the WAP transport protocols and has been optimized for
use over narrow-band communicationchannels.
WAP Protocols
• WDP (Wireless Datagram Protocol)
– The Transport layer protocolin the WAP architecture
– Provides a common interface to the Security, Session,
and Application layers
– Allows these upper layers to function independently
of the underlying wireless network. This is the key to
global interoperability
An incomplete list of corporations currently developing WAP
products and/or services:
• AT&T
• Bell Atlantic Mobile
• GTE
• Sprint PCS
• US West
• Nextel
• France Telecom
• Telenor (Norway)
• Bell Mobility (Canada)
• Japan Telecom
• Nokia
• Ericsson
• Motorola
• Qualcomm
• Samsung
• Palm Computing(3Com)
• IBM
• Phone.com (Unwired Planet)
WAP Developers
WAE - Wireless Application Environment
 Goals
 network independent application environment for low-
bandwidth, wireless devices
 integrated Internet/WWW programming model with high
interoperability
 Requirements
 device and network independent, international support
 manufacturers can determine look-and-feel, user interface
 considerations of slow links, limited memory, low computing power,
small display, simple user interface (compared to desktop computers)
 Components
 architecture: application model, browser, gateway, server
 WML: XML-Syntax, based on card stacks, variables, ...
 WMLScript: procedural, loops, conditions, ... (similar to
JavaScript)
 WTA: telephone services, such as call control, text messages, phone
book, ... (accessible from WML/WMLScript)
 content formats: vCard, vCalendar, Wireless Bitmap, WML, ...
Wireless Markup Language (WML)
 WML follows deck and card metaphor
 WML document consists of many cards, cards are grouped to
decks
 a deck is similar to an HTML page, unit of content transmission
 WML describes only intent of interaction in an abstract
manner
 presentation depends on device capabilities
 Features
 text and images
 user interaction
 navigation
 context management
• Tag-based browsing language:
– Screen management (text, images)
– Data input (text, selection lists, etc.)
– Hyperlinks & navigation support
• XML-based language
• Inherits technology from HTML
WML
Wireless Markup Language
WML
Wireless Markup Language
• Card metaphor
– User interactions are split into cards
– Navigation occurs between cards
• Explicit inter-card navigation model
– Hyperlinks
– UI Event handling
– History
• State management and variables
– Reduce network traffic
– Results in better caching
WML Script
 Complement to WML
 Provides general scripting capabilities
 Features
 validity check of user input
 check input before sent to server
 access to device facilities
 hardware and software (phone call, address book
etc.)
 local user interaction
 interaction without round-trip delay
 extensions to the device software
 configure device, download new
functionality after deployment
<WML>
<CARD>
<DO TYPE="ACCEPT" LABEL="Next">
<GO URL="#card2"/>
</DO>
Acme Inc.<BR/>Directory
</CARD>
<CARD NAME="card2">
<DO TYPE="ACCEPT">
<GO URL="?send=$type"/>
</DO>
Services
<SELECT KEY="type">
<OPTION VALUE="em">Email</OPTION>
<OPTION VALUE="ph">Phone</OPTION>
<OPTION VALUE="fx">Fax</OPTION>
</SELECT>
</CARD>
</WML>
Acme Inc.
Directory
____________
Next
Services
1>Email
2 Phone
3 Fax
____________
OK
A WML Example
Wireless Telephony Application (WTA)
 Collection of telephony specific extensions
 Extension of basic WAE application model
 content push
 server can push content to the client
 handling of network events
 client side there is a table indicating how to react on certain
events from the network
 access to telephony functions
 any application on the client may access telephony functions
 Example
 calling a number (WML)
wtai://wp/mc;07216086415
 calling a number (WMLScript)
WTAPublic.makeCall("07216086415");
Advantages of WAP 2
 If you are familiar with web technologies such as HTML, XHTML,
and CSS, you can start developing your WAP site almost
immediately
 The same development tools can be used to develop both
web sites and WAP sites
 Ordinary web browsers can be used to view your WAP site
during the development process
 HTML / XHTML pages on your web site can be converted to
XHTML MP documents with minor changes or even without
any changes
 XHTML MP supports WAP CSS, which enables the separation
of content and presentation in different files
 With XHTML MP and WAP CSS, you have more control over the
presentation: e.g., you can control borders, backgrounds, margins,
padding, font sizes, font families and font colours.
WAP 2.0 Enhancements
 User Agent Profile (UAProf) – This service provides a
mechanism for describing the capabilities of clients and the
preferences of users to an application server
 Based on the Composite Capabilities / Preference Profiles (CC/PP)
work of the W3C, UAProf supports the client-server transaction
model by sending client and user information to servers with
the request
 This information permits the servers to adapt their content
accordingly in preparation for the response
 Recognizing the importance of user's privacy, personal information
submitted in these requests may be controlled by the user
 Data Synchronization – The SyncML messages are supported
over both the WSP (Wireless Session Protocol) and HTTP/1.1
protocols.
UAProf
 UAProf (User agent profile) is an XML document that contains
information about the user agent type and device capabilities
 User agent profiles are stored in a server called the profile repository
(often maintained by a mobile device manufacturer)
 The URL that points to the user agent profile of a mobile device can be
found in the headers of requests sent by the mobile device: x-wap-
profile header
 Example, the UAProf of Nokia N95 8Giga:
 http://nds.nokia.com/uaprof/NN95_8GB-
1r100.xml

Wap model

  • 1.
  • 2.
    What is WAP? •A set of protocols which allow data exchange for mobile cellular systems • The current world standard for the presentation and delivery of wireless information • It is device independent • It is network independent
  • 3.
    Wireless Application Protocol (WAP) •Goal: a set of communication protocol standards to make accessing online services from a mobile phone simple • “The motivation for developing WAP was to extend Internet technologies to wireless networks, bearers and devices.”[90], page 4. • Initially conceived by four companies: Ericsson, Motorola, Nokia, and Openwave Systems Inc. (formerly Unwired Planet) • WAP Forum is an industry association to promote WAP, they are now called “The Open Mobile Alliance Ltd.” http://www.openmobilealliance.org/
  • 4.
    WAP (first round)Summary • Massive failure, because: • tried to introduce a WAP protocol stack • did not really provide an end-to-end service {because they wanted to keep the operator in the middle of all transactions} - the result is that content was in clear text in the WAP gateway • the result was significant security problems - especially because the changes that were introduced into the “WAPified” SSL introduced problems • most operators used SMS to carry the WAP traffic and this was too expensive and had very significant delay problems • many terminals had problems with their software and each type had its own resolution, size, … - so content had to be prepared for a specific terminal {which increased content development costs - since automatic conversion was not really successful} • WAP 2.0 moves toward being an IP based stack (with HTTP, TLS, and TCP) - although of course they still support their earlier “optimized / wapified” stack. The new model is a direct connection between mobile and HTTP server.
  • 5.
    WAP 2.0 Wireless Profiled HTTP(WP-HTTP) aprofile of HTTP for the wireless environment and is fully interoperable with HTTP/1.1. Built on HTTP request/response transaction. Supports message body compression of responses andthe establishmentofsecure tunnels. Transport Layer Security(TLS) a wireless profile of the TLS protocol, includes cipher suites, certificate formats, signing algorithms and the use of session resume.Support end-to-end security at the transport level. Wireless Profiled TCP(WP-TCP) provides connection-oriented services, optimized for wireless environments and fully interoperable with standard TCP implementations. Builds upon IETF Performance Implications of Link Characteristics (PILC) working group recommendations Wireless Session Protocol(WSP) Wireless Transaction Protocol (WTP), Wireless Transport Layer Security (WTLS), Wireless Datagram Protocol (WDP) - as now “Legacy Protocol Layers”[90]
  • 6.
    WAP 2.0 new& enhanced services WAP Push allows content to be sent or "pushed" to devices by server-based applications via a Push Proxy; real-time applications; provides control over the lifetime of pushed messages, store & forward capabilities at the Push Proxy, control over bearer choice for delivery. User Agent Profile (UAProf) provides a mechanism for describing the capabilities of clients and the preferences of users to an application server, based on the Composite Capabilities / Preference Profiles (CC/PP) work of the W3C Wireless TelephonyApplication (WTA) External Functionality Interface (EFI) specifies the interface between WAE and components or entities with embedded applications that execute outside of the defined WAE capabilities (i.e., basically allowing plug-in modules) - thus allowing access to external devices (e.g. smart cards, GPS, digital cameras, sensors, …) Persistent Storage Interface a standard set of storage services and interface for organizing, accessing, storing and retrieving data on the wireless device or other connected memory device. Data Synchronization adopts SyncML language for the data synchronization (see www.syncml.org) Multimedia Messaging Service (MMS) permits deliveryof variedtypes of content Provisioning provides clients with information needed to operate on wirelessnetworks; permits network operator to manage the devices on its network using a common set of tools Pictogram tiny images, that can be used to quickly convey concepts in a small amount of space
  • 7.
    Current Constraints of WirelessInterfaces: Mobile Devices: Less Bandwidth Less CPU Power High Latency Less Memory and Storage Less Stable Connections Restricted Power Consumption Less PredictableAvailability Small / Variable Sized Displays Diverse range of network standards Variable Input Types (Keypad, Pen, etc,)
  • 8.
    • Wireless networksand phones – have specific needs and requirements not addressed by existing Internet technologies. • WAP enables any data transport – TCP/IP, UDP/IP, GUTS (IS-135/6), SMS, or USSD. • The WAP architecture – has several modular entities which together form a fully compliant Internet entity – all WML contentis accessed via HTTP 1.1 requests. Why Use WAP ?
  • 9.
    Why Use WAP? (cont..) • WAP utilizes standard Internet markup language technology (XML) • Optimizing the content and airlink protocols • The WML UI components map well onto existing mobile phone user interfaces – no re-education of the end-users – leveraging market penetration of mobile devices • WAP utilizes plain Web HTTP 1.1 servers – leveraging existing development methodologies – CGI, ASP, NSAPI, JAVA, Servlets, etc.
  • 10.
    WAP Model • Nowcalled the WAP “Proxy Model” – since WAP gateway acts as a proxy: WAP gateway origin serverHTML WML filter WML microbrowser Request WML Encoded Request Encoded WML GSM Network
  • 11.
    WAP Programming Model Aligned with the Web Programming Model, uses the Pull Model  Add telephony support with WTA (Wireless Telephony Application) and enabling a Push Model, where a server can proactively send content to the client.
  • 12.
    WAP optional ProxyModel  In WAP1.* (1998-2000) a WAP proxy (in the middle) was used (still required for push)
  • 13.
    WAP - WirelessApplication Protocol  Goals  deliver Internet content and enhanced services to mobile devices and users (mobile phones, PDAs)  independence from wireless network standards  open for everyone to participate, protocol specifications will be proposed to standardization bodies  applications should scale well beyond current transport media and device types and should also be applicable to future developments  Platforms  e.g., GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136, 3rd generation systems (IMT-2000, UMTS, W-CDMA, cdma2000 1x EV-DO, …)  Forum  was: WAP Forum, co-founded by Ericsson, Motorola, Nokia, Unwired Planet, further information www.wapforum.org  now: Open Mobile Alliance www.openmobilealliance.org (Open Mobile Architecture + WAP Forum + SyncML + …)
  • 14.
    WAP - scopeof standardization  Browser  “micro browser”, similar to existing, well- known browsers in the Internet  Script language  similar to Java script, adapted to the mobile environment  WTA/WTAI  Wireless Telephony Application (Interface): access to all telephone functions  Content formats  e.g., business cards (vCard), calendar events (vCalender)  Protocol layers  transport layer, security layer, session layer etc.
  • 15.
    • The basic(erroneous) thoughts behind WAP were: • that terminals were “limited” in processing / memory / display, • that the communication channel was expensive, • that the operator was “the” natural intermediary in every mobile user’s interaction with any services, and • that a special protocol stack was necessary to “optimize” for the above. • An emphasis was on push services: In push services content is sent to the user without the user requesting it.
  • 16.
    The WAP Architecture WebServer Content CGI Scripts etc. WMLDecks withWML-Script Client WML WML- Script WTAI Etc. WAP Gateway WML Encoder WMLScript Compiler ProtocolAdapters HTTPWSP/WTP
  • 17.
    WAP Push  Thisservice allows content to be sent or "pushed" to devices by server-based applications via a Push Proxy  WAP Push messages are specially formatted SMS messages that display an alert message to the user, and give the user the option of connecting directly to a particular URL via the mobile phone's WAP browser  Push functionality is especially relevant to real-time applications – e.g. that send notifications as messaging, stock price and traffic update alerts  Without push, these applications would require the devices to poll application servers for new information or status  In wireless environments such polling activities would constitute inefficient and wasteful use of the resources of wireless networks.
  • 18.
    More Acronyms tolearn • WAE - Wireless Application Environment • WSP - Wireless Session Protocol • WTP - Wireless Transaction Protocol • WTLS - Wireless Transport Layer Security • WDP - Wireless Datagram Protocol
  • 19.
    WAP 1.x -reference model and protocols Security Layer (WTLS) Session Layer (WSP) Application Layer (WAE) Transport Layer (WDP)TCP/IP, UDP/IP, media SSL/TLS HTML, Java HTTP Internet Wireless Application Protocol Transaction Layer (WTP) additional services and applications WCMP A-SAP S-SAP TR-SAP SEC-SAP T-SAP SMS USSD CSD IS-136 CDMA CDPD PDC-P Etc. Bearers, ...
  • 20.
    WAP Protocols • WSP(Wireless Session Protocol) – Provides the application layer of WAP with a consistent interface for two session services. • A connection-oriented service that operates above the transaction layer protocol WTP. • A connectionless service that operates above a secure or non-secure datagram service (WDP).
  • 21.
    WAP Protocols • WTP(Wireless Transaction Protocol) – Provide efficient request/reply based transport mechanism suitable for devices with limited resources over networks with low to medium bandwidth. • WTP Push mode allows server to “push” data to a client without request (e.g. notification of stock hitting target price) • WTP/WDP uses less than half the packets that TCP/IP uses to transfer the same amount of data.
  • 22.
    WAP Protocols • WTLS(Wireless Transport Layer Security) – A security protocol based upon the industry-standard Transport Layer Security (TLS) protocol, formerly known as Secure Sockets Layer (SSL). WTLS is intended for use with the WAP transport protocols and has been optimized for use over narrow-band communicationchannels.
  • 23.
    WAP Protocols • WDP(Wireless Datagram Protocol) – The Transport layer protocolin the WAP architecture – Provides a common interface to the Security, Session, and Application layers – Allows these upper layers to function independently of the underlying wireless network. This is the key to global interoperability
  • 24.
    An incomplete listof corporations currently developing WAP products and/or services: • AT&T • Bell Atlantic Mobile • GTE • Sprint PCS • US West • Nextel • France Telecom • Telenor (Norway) • Bell Mobility (Canada) • Japan Telecom • Nokia • Ericsson • Motorola • Qualcomm • Samsung • Palm Computing(3Com) • IBM • Phone.com (Unwired Planet) WAP Developers
  • 25.
    WAE - WirelessApplication Environment  Goals  network independent application environment for low- bandwidth, wireless devices  integrated Internet/WWW programming model with high interoperability  Requirements  device and network independent, international support  manufacturers can determine look-and-feel, user interface  considerations of slow links, limited memory, low computing power, small display, simple user interface (compared to desktop computers)  Components  architecture: application model, browser, gateway, server  WML: XML-Syntax, based on card stacks, variables, ...  WMLScript: procedural, loops, conditions, ... (similar to JavaScript)  WTA: telephone services, such as call control, text messages, phone book, ... (accessible from WML/WMLScript)  content formats: vCard, vCalendar, Wireless Bitmap, WML, ...
  • 26.
    Wireless Markup Language(WML)  WML follows deck and card metaphor  WML document consists of many cards, cards are grouped to decks  a deck is similar to an HTML page, unit of content transmission  WML describes only intent of interaction in an abstract manner  presentation depends on device capabilities  Features  text and images  user interaction  navigation  context management
  • 27.
    • Tag-based browsinglanguage: – Screen management (text, images) – Data input (text, selection lists, etc.) – Hyperlinks & navigation support • XML-based language • Inherits technology from HTML WML Wireless Markup Language
  • 28.
    WML Wireless Markup Language •Card metaphor – User interactions are split into cards – Navigation occurs between cards • Explicit inter-card navigation model – Hyperlinks – UI Event handling – History • State management and variables – Reduce network traffic – Results in better caching
  • 29.
    WML Script  Complementto WML  Provides general scripting capabilities  Features  validity check of user input  check input before sent to server  access to device facilities  hardware and software (phone call, address book etc.)  local user interaction  interaction without round-trip delay  extensions to the device software  configure device, download new functionality after deployment
  • 30.
    <WML> <CARD> <DO TYPE="ACCEPT" LABEL="Next"> <GOURL="#card2"/> </DO> Acme Inc.<BR/>Directory </CARD> <CARD NAME="card2"> <DO TYPE="ACCEPT"> <GO URL="?send=$type"/> </DO> Services <SELECT KEY="type"> <OPTION VALUE="em">Email</OPTION> <OPTION VALUE="ph">Phone</OPTION> <OPTION VALUE="fx">Fax</OPTION> </SELECT> </CARD> </WML> Acme Inc. Directory ____________ Next Services 1>Email 2 Phone 3 Fax ____________ OK A WML Example
  • 31.
    Wireless Telephony Application(WTA)  Collection of telephony specific extensions  Extension of basic WAE application model  content push  server can push content to the client  handling of network events  client side there is a table indicating how to react on certain events from the network  access to telephony functions  any application on the client may access telephony functions  Example  calling a number (WML) wtai://wp/mc;07216086415  calling a number (WMLScript) WTAPublic.makeCall("07216086415");
  • 32.
    Advantages of WAP2  If you are familiar with web technologies such as HTML, XHTML, and CSS, you can start developing your WAP site almost immediately  The same development tools can be used to develop both web sites and WAP sites  Ordinary web browsers can be used to view your WAP site during the development process  HTML / XHTML pages on your web site can be converted to XHTML MP documents with minor changes or even without any changes  XHTML MP supports WAP CSS, which enables the separation of content and presentation in different files  With XHTML MP and WAP CSS, you have more control over the presentation: e.g., you can control borders, backgrounds, margins, padding, font sizes, font families and font colours.
  • 33.
    WAP 2.0 Enhancements User Agent Profile (UAProf) – This service provides a mechanism for describing the capabilities of clients and the preferences of users to an application server  Based on the Composite Capabilities / Preference Profiles (CC/PP) work of the W3C, UAProf supports the client-server transaction model by sending client and user information to servers with the request  This information permits the servers to adapt their content accordingly in preparation for the response  Recognizing the importance of user's privacy, personal information submitted in these requests may be controlled by the user  Data Synchronization – The SyncML messages are supported over both the WSP (Wireless Session Protocol) and HTTP/1.1 protocols.
  • 34.
    UAProf  UAProf (Useragent profile) is an XML document that contains information about the user agent type and device capabilities  User agent profiles are stored in a server called the profile repository (often maintained by a mobile device manufacturer)  The URL that points to the user agent profile of a mobile device can be found in the headers of requests sent by the mobile device: x-wap- profile header  Example, the UAProf of Nokia N95 8Giga:  http://nds.nokia.com/uaprof/NN95_8GB- 1r100.xml