Executive Summary
Wireless Markup Language (WML) is an application of XML designed specifically for the Wireless Application Protocol (WAP) ecosystem. Its primary function is to deliver content to mobile devices characterized by small screens, limited processing power, and low-bandwidth network connections. Unlike HTML, which uses a page-based navigation model, WML’s fundamental unit is the “card.” Multiple cards are grouped into a single file called a “deck,” which is downloaded to the device at once. This architecture minimizes server requests and reduces latency as the user navigates between cards within the same deck.
The WAP model, in which WML operates, relies on a WAP Gateway as an intermediary between the wireless network and the internet. This gateway translates requests from the WAP protocol to standard HTTP and, crucially, encodes WML into a compact binary format to conserve bandwidth. Developing WML applications requires a specific environment, including a WAP-enabled web server configured with correct MIME types, a gateway simulator, and a phone simulator for testing.
WML provides a rich set of features for creating interactive mobile services, including elements for user input, variables for state management across cards, tasks for navigation control, and event handlers for dynamic responses. Later specifications, such as WAP 2.0, evolved WML towards convergence with web standards, introducing XHTML Mobile Profile and WAP CSS (WCSS), while maintaining backward compatibility with the large installed base of WML 1.x devices.