June 1, 2000 - Introducing WML | WebReference

June 1, 2000 - Introducing WML

Yehuda Shiran June 1, 2000
Introducing WML
Tips: June 2000

Yehuda Shiran, Ph.D.
Doc JavaScript

A WML code includes a header and a body. Here is the header of currency.wml as an example:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
    "https://www.wapforum.org/DTD/wml_1.1.xml">

As you can see, the header specifies two links and the WML version, as well as that of XML, on which WML is based.

The body of WML code is enclosed within a pair of wml tags (<wml> and </wml>). You'll often read and hear about a WML deck (the metaphor used for WML code is a deck of cards). User agents are capable of displaying and navigating between cards. A card starts with a <card> tag and ends with a </card> tag. In our example, there are two cards: card1 and card1_help. The <card> tag specifies the ID of the card and its title. The title is displayed on the user agent's screen. Here is the first card tag in our example:

<card id="card1" title="Currency" newcontext="true">

When you show a card in the user agent's display, it will show all strings and input fields defined in the WML card. Here is the first card:

<card id="card1" title="Currency" newcontext="true">
  <p>
	Amount: <input format="*N" name="amount" title="Amount:"/>
	From: <select name="from" value="USD" title="From:">
		<option value="DEM">German Mark</option>
		<option value="FRF">French Franc</option>
		<option value="FIM">Finnish Markka</option>
		<option value="USD">US Dollar</option>
	</select>
	To: <select name="to" value="FIM" title="To:">
		<option value="DEM">German Mark</option>
		<option value="FRF">French Franc</option>
		<option value="FIM">Finnish Markka</option>
		<option value="USD">US Dollar</option>
	</select>
	<br/> = <u>$(conversion)</u>
	<do type="accept" label="Calculate">
	 	<go href="currency.wmls#convert('conversion','$(from)','$(to)',$(amount))"/>
	</do>
	<do type="help" label="Help">
		<go href="#card1_help"/>
	</do>
  </p>
</card>

Look carefully and find all strings that are not part of any wml tag. You should identify the following words: Amount:, From:, To:, and =. When you show this deck in the user agent, you'll see these strings:

To see how this application works with a simulated phone, visit Introducing WML and WMLScript.