home
NEWS       BLOGS       FORUMS       NEWSLETTERS       RESEARCH       EVENTS       DIGITAL LIBRARY       CAREERS  
Network Computing Network Computing Powered by InformationWeek Business Technology Network

IMMERSE YOURSELF:

SOA

  |

Data Center

  |

802.11n

  |

Data Privacy

  |
APO  |

Virtualization

  |

NAC

  |

Security

  |

Network Mgmt

  |

Enterprise Apps

  |

Storage & Servers


Business Applications
W O R K S H O P  
WML Takes XML on the Road

  March 19, 2001
  By Ahmad Abualsamid


Say you're a salesperson, and you need to check some vital statistics about your inventory. If you're at home or in the office, you simply fire up your browser and link to your firm's Web site or intranet. But what if you're on your way to a meeting with an important client? Soon, you'll be able to access all the information you need over a cell phone or PDA (personal digital assistant) using WML (Wireless Markup Language).



We all know what HTML is and how Web documents are served to conventional browsers. Now, in the new, untethered world, there is a wireless equivalent to HTML: WML. WML documents are served to micro browsers that run on small wireless devices, such as cell phones. This feat is accomplished using a protocol known as WAP (Wireless Access Protocol).

WAP and WML are in their infancies, at about the same maturity level that HTML and the Web were four to five years ago. Developers learned the hard way from HTML, with its wildly inconsistent browser support, that standards are crucial. As a result, WML was implemented from the get-go as an XML (Extensible Markup Language) application, ensuring that all WML documents are well formed. XML applications don't allow the lax coding common with HTML documents, thus minimizing display variations among today's browsers. A big reason why browsers render many Web pages inconsistently is that, when the browser meets an improper HTML document, the browser's behavior is undefined. Different browser vendors elected different treatments; the result is widely varying presentations of the same document. To eliminate this problem, the W3C (World Wide Web Consortium) expressed HTML 4.0 in XML to produce XHTML. WML, on the other hand, started as an XML application.

In addition to being an XML application, WML has some subtle differences from HTML that make it better suited for small devices with limited bandwidth. For example, a WML page is known as a card; related cards form decks. A deck of cards shares one common set of headers and is downloaded in its entirety when one member card is requested. This saves on bandwidth because headers are not sent for each card. This setup also makes the Web site more responsive as the user navigates between different cards in the same deck.

WML also has variables, which are part of the WML definitions and don't need any extra scripting support. HTML does not support variables, and thus relatively complex client- or server-side scripts are required to track simple information. For example, if you require users to log on to your site, you will need to use hidden form elements, cookies, query strings or server-side scripts to track the user's identity. In WML, you can simply declare a "userid" variable and assign it the value of the logged in user's identity. Since a golden rule in WML is not to send any requests to the server unless absolutely necessary, and because cell phones typically have tiny and weak processors, this addition is very advantageous. In fact, this is one feature that I could have made extensive use of in HTML.

Another element that can be accomplished with scripting, but that makes complete sense as a native construct, is a timer. WML has the concept of a timer as a native tag; when the timer expires, an event such as navigation to the subsequent card in the deck can be invoked.

Before we dig too deeply into the specifics of WML, let's examine how a WML page is served from a server to the micro browser. Any leading Web server can be used to serve WML documents; you just need to configure it with some new MIME types. This task varies by Web server, but it is a routine system administration function and should not be difficult. Following are the MIME entries that need to be configured by the server:

  • text/vnd.wap.wml for .wml files (WML source files)

  • application/vnd.wap.wmlc for .wmlc files (WML compiled files)

  • text/vnd.wap.wmlscript for .wmls files (WMLScript source files)

  • application/vnd.wap.wmlscriptc for .wmlsc files (WMLScript compiled files)

  • image/vnd.wap.wbmp for .wbmp files (wireless bitmaps)
The Web server does not communicate with the micro browser in the wireless device. Instead, another piece of software -- known as a WAP gateway -- is needed. This gateway, which acts as the middleman between the micro browser and the Web server, has two main functions. The first is to compile the .wml source files into .wmlc compiled bytecode files. If you are familiar with the way Java applets work, you will immediately relate to the concept of compiling the source code into bytecode. This serves to minimize the size of the code traveling over the wireless network and to reduce the work that is required by the micro browser.

The other function of the gateway is to translate secure communications. The Internet's standard for secure communication is SSL (Secure Socket Layer). The wireless world does not use SSL, however; it uses instead a protocol known as WTLS (Wireless Transport Layer Security). Thus, the WAP gateway talks WTLS to the phone and SSL to the Web server, performing the intermediate translation. WAPDrive Ltd., one of the best WAP sources on the Internet, has compiled a list of WAP gateways. The list, which can be found at www.wapdrive.com/DOCS/wap_gateway/index.html, includes some free gateways and others for which you have to register and pay. Typically, your service provider will run its own gateway, which you can access through your wireless phone. If you are a developer and would like to run your own gateway, visit www.kannel.org, which provides an open-source WAP gateway.

Although these WAP gateways offer some security, the content on the gateway is unencrypted as it is translated from WTLS to SSL and back. This makes the gateway the weakest link in the chain. To address this concern, the WAP server was born. A WAP server is a Web server and a WAP gateway wrapped into one and is designed to minimize the security weakness of having a separate gateway. Nokia has such a Web server available for developers at: www.nokia.com/corporate/wap/trial_download.html.


   Page: 1 | 2 | 3 | 4 | Next Page





Ready to take that job and shove it?

Function:

Keyword(s):

State:
SPONSOR
RECENT JOB POSTINGS
CAREER NEWS
Go beyond Google and get vertical. These specialized search sites will help you find the business information you need -- fast.

Ari Balogh was named to the post of chief technology officer as the companys for a "realignment" of employees.










InformationWeek U.S. IT Salary Survey 2008
Salaries for business technology professionals are falling. Here's what you need to know in order to make good hiring decisions and personal career choices. Download Today
 
ROLLING RIGHT ALONG
Follow key Network Computing Reviews from conception to completion. This Week: Holistic APM.



Network Computing Reports Emerging Enterprise Podcast Series: Secrets to Success








TechSearch


Microsite of the Week


Powerful Information at Your Fingertips



InformationWeek Business Technology Network
InformationWeekInformationWeek 500InformationWeek 500 ConferenceInformationWeek AnalyticsInformationWeek CIO
InformationWeek EventsInformationWeek ReportsInformationWeek MagazinebMightyByte and SwitchDark Reading
Digital LibraryIntelligent EnterpriseInternet EvolutionNetwork ComputingNo Jitter
space
Techweb Events Network
InteropVoiceConWeb 2.0 ExpoWeb 2.0 SummitEnterprise 2.0 ConferenceMobile Business ExpoSoftware ConferenceCSI - Computer Security Institute
Black HatGTECEnergy CampMashup CampStartup Camp
space
Light Reading Communications Network
Light ReadingLight Reading EuropeUnstrungLight Reading's Cable Digital NewsConstantinopleInternet Evolution
Heavy ReadingLight Reading Live!Light Reading InsiderEthernet ExpoOptical ExpoTeleco TVTower Technology Summit
space
Financial Technology Network
Advanced TradingBank Systems & TechnologyInsurance & TechnologyWall Street & TechnologyAccelerating Wall StreetBank Systems & Technology Executive SummitBuyside Trading SummitInsurance & Technology Executive Summit
space
Microsoft Technology Network
MSDN MagazineTechNetThe Architecture Journal
space
App Infrastructure   |   Messaging & Collaboration   |   Network & Systems Mgmt   |   Network Infrastructure   |   Security  |   Storage & Servers   |   Wireless   |   Enterprise Apps
About Us  |  Contact Us  |  Site Map  |  Technology Marketing Solutions  |  Advertising Contacts  |   Briefing Centers
Copyright © 2008  United Business Media LLC  |  Privacy Statement  |  Terms of Service  |  Your California Privacy Rights