Cover image for WML & WMLScript : a beginner's guide
Title:
WML & WMLScript : a beginner's guide
Author:
Jamsa, Kris, 1960-
Personal Author:
Publication Information:
New York : Osborne/McGraw-Hill, [2001]

©2001
Physical Description:
xxvii, 466 pages : illustrations ; 24 cm
General Note:
"Essential skills for first-time programmers"--Cover.

"219294-1"--Spine.

"Essential skills for the firt-time programmers"--Cover.

Includes index.
Language:
English
ISBN:
9780072192940
Format :
Book

Available:*

Library
Call Number
Material Type
Home Location
Status
Central Library TK5105.5865 .J26 2001 Adult Non-Fiction Non-Fiction Area
Searching...

On Order

Summary

Summary

Create real-world Wireless applications--even if you've never worked with WML or WMLScript before--using this hands-on introductory resource. You'll get full details on WAP, and learn to build applications that will run on your Web-enabled cellular phone. From formatting text, displaying images, and creating wireless bitmap files, this beginner's guide provides you with all the tools you need to construct your own wireless Web site and other WML-based applications.


Table of Contents

Acknowledgmentsp. xix
Introductionp. xxi
1 Getting Started on the Wireless Webp. 1
What You Need to Access the Wireless Webp. 2
Previewing the Wireless Webp. 4
Wireless Search Enginesp. 4
Wireless News and Information Sitesp. 5
Wireless Sports Information Sitesp. 6
Wireless Financial Sitesp. 7
Wireless Mobile Commerce (M-Commerce) Sitesp. 8
Surfing the Wireless Webp. 9
Typing on a Phone's Numeric Keypadp. 10
Accessing the Wireless Web via a Web-Enabled Phonep. 11
Traversing Wireless Linksp. 11
Downloading a Phone Simulatorp. 12
Downloading the Phone.com Software Development Kitp. 12
Downloading the Nokia Software Development Kitp. 14
Downloading the Ericsson Software Development Kitp. 14
Understanding WML--the Wireless Markup Languagep. 18
Where to Place Your Wireless Sitep. 19
Creating Your First Wireless Sitep. 20
Project 1-1 Surfing the Wireless Webp. 23
Mastery Checkp. 24
2 Creating Your First WML Applicationp. 25
Selecting a Text Editorp. 26
Organizing Your WML Applicationsp. 28
Building Your First WML Application: Hello, Wireless World!p. 29
Using the Phone Simulator's Console Windowp. 34
Taking a Closer Look at Hello, Wireless World!p. 35
Building an Automated Phone Bookp. 45
WML and Arithmetic Operationsp. 50
Understanding Whitespacep. 51
Correcting Logic Errorsp. 54
Using the Personal Web Server to Launch Your Wireless Applicationp. 54
Project 2-1 Creating a Virtual Grocery Listp. 56
Mastery Checkp. 58
3 Formatting Outputp. 61
Aligning Paragraph Textp. 62
Controlling Line Wrappingp. 65
Using Styles to Format Textp. 66
Displaying Simple Imagesp. 68
Creating a WBMP Filep. 68
Placing a WBMP Image in a WML Applicationp. 70
Using Your Phone's Built-In Imagesp. 73
Organizing Data in Tablesp. 79
Formatting Table Datap. 83
Project 3-1 Creating a Virtual Cookbookp. 91
Taking Advantage of Special Charactersp. 93
Mastery Checkp. 96
4 Working with Multiple Cards and Variablesp. 99
Using Two or More Cardsp. 100
Understanding the [left angle bracket]do type="accept" label="text"[right angle bracket] Tagp. 104
Displaying a Week's Weather Reportp. 109
Moving Back to the Previous Cardp. 113
Project 4-1 Putting Your Favorite Recipes on the Wireless Webp. 117
Accessing Cards That Reside Outside of the Current Deckp. 119
Using an Anchor to Create a Linkp. 123
Creating a Link to a Card Within an External Deckp. 125
Storing Information in Variablesp. 130
Naming Your Variablesp. 132
WML Variables Store Character Stringsp. 133
Using the Value a Variable Containsp. 133
Using [left angle bracket]setvar[right angle bracket] to Assign a Value to a Variablep. 134
Changing a Variable's Valuep. 135
Understanding the Variable Contextp. 139
Viewing Variables with the Phone Simulator's Console Windowp. 140
Using Comments to Explain Your Application's Processingp. 141
Mastery Checkp. 144
5 Performing User Input Operationsp. 147
Performing Input Operationsp. 148
Restricting the Number of Characters the User Can Inputp. 150
Using a Microbrowser-Specific Input Fieldp. 153
Specifying a Title for the Input Fieldp. 154
Prompting the User for a Passwordp. 154
Providing a Default Input Valuep. 156
Controlling Input Formatp. 158
Controlling Empty Stringsp. 160
Structuring Input Formatp. 162
Repeating a Formatting Code a Specific Number of Timesp. 163
Using the [left angle bracket]select[right angle bracket] Tag to Create a Menu of Choicesp. 165
Assigning an Index Value that Corresponds to a User's Selectionp. 168
Letting the User Choose Multiple [left angle bracket]select[right angle bracket] Tag Optionsp. 170
Project 5-1 Checking Off Grocery List Items as You Shopp. 172
Grouping Options Within a [left angle bracket]select[right angle bracket] Tagp. 174
Understanding Field Setsp. 176
Understanding Eventsp. 179
WML Events Can Trigger Specific Tasksp. 180
Reviewing the [left angle bracket]go[right angle bracket] and [left angle bracket]prev/[right angle bracket] Eventsp. 180
Understanding the [left angle bracket]noop[right angle bracket] Tagp. 182
Understanding the [left angle bracket]refresh[right angle bracket] Tagp. 183
Using the [left angle bracket]do[right angle bracket] Tag to Respond to Eventsp. 184
Responding to Other Eventsp. 186
Using Templatesp. 195
Using the [left angle bracket]meta[right angle bracket] Tagp. 196
Mastery Checkp. 198
6 Building Real-World WML Applicationsp. 201
Creating Your Own Wireless Sitep. 202
Taking a Closer Look at MyInfo.wmlp. 204
Project 6-1 Adding a Photo to Your Wireless Web Sitep. 206
Creating a Wireless Site for Family Informationp. 207
Taking a Closer Look at FamilyInfo.wmlp. 210
Creating a Wireless Company Locatorp. 212
Taking a Closer Look at Locator.wmlp. 217
Creating a News Feedp. 218
Mastery Checkp. 224
7 Automating WML Applications Using WMLScriptp. 225
Place WMLScript Statements Within a.wmls Filep. 226
Understanding WMLScript Functionsp. 229
Understanding WMLScript Reserved Wordsp. 230
Looking at a Simple Examplep. 231
Project 7-1 Revisiting Hello, Wireless World!p. 232
Using Comments to Explain Your Script's Processingp. 234
Storing Information in WMLScript Variablesp. 236
Declaring Variables Within Your Scriptp. 237
Assigning a Value to a Variablep. 238
Using the Value a Variable Containsp. 239
Understanding Floating-Point Precisionp. 240
Performing Arithmetic Operationsp. 242
Incrementing a Variable's Value by 1p. 244
Using Prefix (Before) and Postfix (After) Increment Operatorsp. 246
Other WMLScript Operatorsp. 247
Understanding Operator Precedencep. 248
Controlling the Order in Which WMLScript Performs Arithmetic Operationsp. 250
Calling a WMLScript Function from Another Functionp. 251
Passing WML Variables and Other Values as Parameters to a WMLScript Functionp. 255
Using Conditional Processing to Make Decisionsp. 257
Using Relational Operators to Compare Two Valuesp. 257
Using the if Statement to Test a Conditionp. 258
Understanding Simple and Compound Statementsp. 259
Using the Else Statement for False Conditionsp. 260
Using Logical Operators to Test Two or More Conditionsp. 262
Understanding How WMLScript Represents True and Falsep. 263
Using the WMLScript Not Operatorp. 263
Performing If-Else Processingp. 264
Using Iterative Processing to Repeat Specific Statementsp. 265
Using the for Statement to Repeat Statements a Specific Number of Timesp. 265
Using a While Loop to Repeat Statements While a Condition is Truep. 268
Accessing WML Variables From Within WMLScriptp. 270
Using the use access Pragma to Restrict Access to a WMLScript Filep. 272
Using the use Pragma to Simplify Access to External Functionsp. 273
Mastery Checkp. 274
8 Using the WMLScript Librariesp. 275
Understanding Libraries, Functions, and Parametersp. 276
Using the WMLScript Dialogs Libraryp. 277
Alerting the User of a Problem or Eventp. 277
Confirming an Operation with the Userp. 279
Prompting the User for Inputp. 282
Using the WMLScript Float Libraryp. 286
Project 8-1 Checking a Phone for Floating-Point Supportp. 287
Determining the Range of Values Your Device Supportsp. 289
Rounding and Truncating Valuesp. 291
Raising One Value to the Power of Anotherp. 295
Calculating a Value's Square Rootp. 297
Using the WMLScript Lang Libraryp. 298
Aborting the Current Applicationp. 299
Determining a Value's Absolute Valuep. 301
Determining the Current Character Setp. 303
Testing for a Valid Integer or Floating-Point Numberp. 304
Determining Maximum and Minimum Valuesp. 306
Parsing a String for an Integer or Floating-Point Valuep. 308
Generating a Random Numberp. 310
Using the WMLScript String Libraryp. 314
Determining the Character at a Specific Location in a Stringp. 316
Comparing Two Character Stringsp. 318
Formatting a String's Contentsp. 320
Working with Delimited Stringsp. 322
Testing for an Empty Stringp. 328
Determining a String's Lengthp. 329
Removing Whitespace from Within a Stringp. 330
Extracting a Substring from Within a Stringp. 332
Converting a Result to a Stringp. 332
Using the WMLScript URL Libraryp. 333
Parsing a URLp. 335
Determining a URL's Base Addressp. 336
Extracting a Fragment from a URLp. 336
Extracting a Host Name from a URLp. 336
Extracting Parameters from a URLp. 337
Extracting a Directory Path from a URLp. 337
Extracting a Port Number from a URLp. 337
Determining the URL of the Referring Sourcep. 338
Project 8-2 Building an Absolute URLp. 338
Extracting the Schema from a URLp. 340
Testing for a Valid URLp. 341
Loading the Content That Resides at a URLp. 341
Escaping URL Stringsp. 341
Using the WMLScript WMLBrowser Libraryp. 342
Determining the Current Cardp. 343
Performing a WML Go Operation to Branch to a URLp. 344
Performing a WML Prev Operation to Return to the Previous URLp. 346
Performing a WML Refresh Operationp. 346
Setting and Retrieving Variable Valuesp. 346
Mastery Checkp. 348
9 Building Real-World WMLScript Applicationsp. 351
Using the Console Windowp. 352
Processing User Inputp. 354
Playing Tic-Tac-Toep. 357
Project 9-1 Reducing the TicTacToe.wmls Script's Sizep. 364
Mastery Checkp. 367
10 Advanced Conceptsp. 369
Interacting with a Serverp. 370
Using a Perl Script to Store Address Informationp. 375
Searching the Address Listp. 378
Using a Perl Script to Retrieve Information from a Databasep. 381
Interacting with an Active Server Pagep. 385
Building a To Do Listp. 388
Adding an Event to the To Do Listp. 391
Viewing a To Do List Entryp. 393
Project 10-1 Displaying Multiple Events One Page at a Timep. 394
Mastery Checkp. 398
A Answers to Mastery Checksp. 399
Module 1 Getting Started on the Wireless Webp. 400
Module 2 Creating Your First WML Applicationp. 401
Module 3 Formatting Outputp. 404
Module 4 Working with Multiple Cards and Variablesp. 407
Module 5 Performing User Input Operationsp. 410
Module 6 Building Real-World WML Applicationsp. 415
Module 7 Automating WML Applications Using WMLScriptp. 417
Module 8 Using the WMLScript Librariesp. 418
Module 9 Building Real-World WMLScript Applicationsp. 420
Module 10 Advanced Conceptsp. 421
B WML Language Referencep. 425
[left angle bracket]a[right angle bracket]p. 426
Descriptionp. 426
Formatp. 426
Attributesp. 426
[left angle bracket]access[right angle bracket]p. 426
Descriptionp. 426
Formatp. 427
Attributesp. 427
[left angle bracket]anchor[right angle bracket]p. 427
Descriptionp. 427
Formatp. 427
Attributesp. 427
[left angle bracket]b[right angle bracket]p. 428
Descriptionp. 428
Formatp. 428
Attributesp. 428
[left angle bracket]big[right angle bracket]p. 428
Descriptionp. 428
Formatp. 429
Attributesp. 429
[left angle bracket]br/[right angle bracket]p. 429
Descriptionp. 429
Formatp. 429
[left angle bracket]card[right angle bracket]p. 429
Descriptionp. 429
Formatp. 429
Attributesp. 430
[left angle bracket]do[right angle bracket]p. 431
Descriptionp. 431
Formatp. 431
Attributesp. 431
[left angle bracket]em[right angle bracket]p. 432
Descriptionp. 432
Formatp. 432
Attributesp. 432
[left angle bracket]fieldset[right angle bracket]p. 432
Descriptionp. 432
Formatp. 432
Attributesp. 432
[left angle bracket]go[right angle bracket]p. 433
Descriptionp. 433
Formatp. 433
Attributesp. 433
[left angle bracket]head[right angle bracket]p. 434
Descriptionp. 434
Formatp. 434
Attributesp. 434
[left angle bracket]i[right angle bracket]p. 434
Descriptionp. 434
Formatp. 434
Attributesp. 435
[left angle bracket]img[right angle bracket]p. 435
Descriptionp. 435
Formatp. 435
Attributesp. 435
[left angle bracket]input[right angle bracket]p. 436
Descriptionp. 436
Formatp. 436
Attributesp. 436
[left angle bracket]meta[right angle bracket]p. 438
Descriptionp. 438
Formatp. 438
Attributesp. 438
[left angle bracket]noop[right angle bracket]p. 439
Descriptionp. 439
Formatp. 439
[left angle bracket]onevent[right angle bracket]p. 439
Descriptionp. 439
Formatp. 439
Attributesp. 439
[left angle bracket]optgroup[right angle bracket]p. 440
Descriptionp. 440
Formatp. 440
Attributesp. 440
[left angle bracket]option[right angle bracket]p. 440
Descriptionp. 440
Formatp. 440
Attributesp. 441
[left angle bracket]p[right angle bracket]p. 441
Descriptionp. 441
Formatp. 441
Attributesp. 441
[left angle bracket]postfield[right angle bracket]p. 442
Descriptionp. 442
Formatp. 442
Attributesp. 442
[left angle bracket]pre[right angle bracket]p. 442
Descriptionp. 442
Formatp. 443
Attributesp. 443
[left angle bracket]prev[right angle bracket]p. 443
Descriptionp. 443
Formatp. 443
Attributesp. 443
[left angle bracket]refresh[right angle bracket]p. 443
Descriptionp. 443
Formatp. 444
Attributesp. 444
[left angle bracket]select[right angle bracket]p. 444
Descriptionp. 444
Formatp. 444
Attributesp. 444
[left angle bracket]setvar[right angle bracket]p. 445
Descriptionp. 445
Formatp. 445
Attributesp. 445
[left angle bracket]small[right angle bracket]p. 446
Descriptionp. 446
Formatp. 446
Attributesp. 446
[left angle bracket]strong[right angle bracket]p. 446
Descriptionp. 446
Formatp. 446
Attributesp. 446
[left angle bracket]table[right angle bracket]p. 446
Descriptionp. 446
Formatp. 447
Attributesp. 447
[left angle bracket]td[right angle bracket]p. 447
Descriptionp. 447
Formatp. 447
Attributesp. 447
[left angle bracket]template[right angle bracket]p. 448
Descriptionp. 448
Formatp. 448
Attributesp. 448
[left angle bracket]timer[right angle bracket]p. 448
Descriptionp. 448
Formatp. 449
Attributesp. 449
[left angle bracket]tr[right angle bracket]p. 449
Descriptionp. 449
Formatp. 449
Attributesp. 449
[left angle bracket]u[right angle bracket]p. 450
Descriptionp. 450
Formatp. 450
Attributesp. 450
[left angle bracket]wml[right angle bracket]p. 450
Descriptionp. 450
Formatp. 450
Attributesp. 450
C Wireless References on the World Wide Webp. 451
Indexp. 453

Google Preview