Index
A
Accept key 19, 65, 70?72, 76, 79, 83?93, 580
and HDML 172?185
context 112
setting variables 189?192
ActiveX
adOpenDynamic 284
adOpenForwardOnly 283
adOpenKeySet 284
adOpenStatic 284
cursors 283, 289, 297, 302
CursorType 290
ActiveX Data Objects 281, 282
ADO 281
ADO, data control 300, 302
Command object 282
Connection object 282
Record object 282
Recordset object 282
Stream object 282
activities (HDML) 197
CLEAR 205
RECEIVE 205
RETVALS 204
variables 203
VARS 204
Apache, running JSP on 437
Application object
application variables 257
Contents.Remove 259
Contents.RemoveAll 259
Lock 258
RemoveAll 259
Scope 259
Unlock 258
ASP 245, 351, 380
adLockBatchOptimistic 290
adLockOptimistic 290
adLockPessimistic 290
adLockReadOnly 290
application object 250
Application_OnEnd 266
Application_Onstart 266
ASPError object 250, 269
Authenticate.asp 327
configuration problems 343
Connection object 286,
287, 291
connection strings 299, 300
creating accounts 330
custom object 249
database authentication 327
editing document 305
emulator problems 343
Err object 267
explicit recordset 289
Global.asa 265
implicit recordset 289
invalid logon 328
LockType 290
logic errors 343
logon 326
memory problems 345
MIME errors 341
new account 329
object model 249
page caching 320
passing values 309
performance problems 346
POST method 309, 310
Recordset object 288
ActiveConnection 289
CursorType 290
LockType 290
Options 290
redirection errors 346
Request object 250
Response object 250, 254
Response.Buffer 253
Response.CacheControl
256, 323
Response.Expires 256
Response.Redirect 252
Response.Write 252
saving to web server 305
script errors 339
scripting language 248
Server object 250, 262
Server.CreateObject 262, 542
Server.Execute 263
Server.Transfer 263
Server.Transfer versus Response.Redirect 264
Session_OnEnd 266
Session_OnStart 266
setting cookies 254
transform.asp 542
user interface errors 344
version 246
ASPError object
ASPDescription 269
audio prompts 592
B
Binary Large Object
(BLOb) 379
bookmarks
design guidelines 219
enabling bookmarking
61, 205
browser caching 320
browser emulation
Nokia SDK 32?39
UP.SDK 24?32
C
Cache-Control 382
caching 59, 207, 255, 256, 319
cache.asp 322
controlling 320
device 321
disabling 322
errors 344
gateway 321
proxy servers 323
reasons for 321
Response.Expires 322
server 321
WAP gateways 324
CALL task (HDML) 175
CANCEL task (HDML) 175
card (and deck) paradigm 15
card-level events (WML) 76
case sensitivity (WML) 46
cHTML 17
cipher suite 641
circuit switched data 624
Class 368, 370?372, 375
forName 368, 370, 372, 375
common authentication 326
compiled style sheets 551
component interaction diagram 690, 691, 692, 693
content type 380, 381, 382
conversational approach 592
conversions
HTML to WML 629
text to WML 630
Cookie class 396
cookies 395, 613, 624
and Java servlets 396
creating 397
domain 399
expire, defining time-to-live (TTL) 399
expires tag 623
name 399
path 399
persistent 623
problems with 348
properties 399
retrieving 399
secure 399
session 623
session object 312
support 319
testing device support 312
values 399
cookies, developing with
Cookie 396
getDomain 397
getMaxAge 397
getName 397, 399
getPath 397
getSecure 397
getValue 397, 399
setDomain 396
setMaxAge 396
setPath 396
setSecure 396, 397
setValue 396
cryptography 636
asymmetric 636
ciphertext 636
private key 636
secret key 636
symmetric key 636
CSD 624
D
data entry
preformatting 90, 182
restricting 89, 180?182
data source name (DSN) 277, 369, 373
DSN-less 282
file DSN 282
system DSN 282
database 366, 367, 368, 369
access 366, 377, 415?435
access property file 371
addTraceListener 549
authenticating logon 327
basic access tasks 368
common pitfalls 431
connection with 368, 379
connectivity 367, 369
executing SQL 369, 416
front end 372
good practices 431
handle 379
independent code 370
JDBC 366
logging on 326
programming issues 425
property file 370
servlet example 372
tables 373
too many matches 432
transparency 366
troubleshooting 378
database access using ASP 284
adding records 286
deleting records 291
displaying records in multiple pages 295
navigating records 292
retrieving records 284
searching for records 294
updating records 290
database management system (DBMS) 367
debugging. See troubleshooting
deck (and card) paradigm 15
deck access control 58?60, 209
deck size limitation 16, 333
deck-level events 78, 207
designing the presentation
214?224, 557, 571, 591
HDML 557
VoiceXML 591
WML 571
development challenges 18, 214?224
digital certificates 637
directives 587
display characteristics 6,214?216
document elements 587
DOM (Document Object Model) 526, 527
classes and interfaces 527
creating a document 527
DOMDocument 533
DOMParser 535
org.w3c.dom.Attr 527
org.w3c.dom.Document 527
org.w3c.dom.Element 527
org.w3c.dom.Node 527
org.w3c.dom.NodeList 527
org.w3c.dom.
ProcessingInstruction 527
org.w3c.dom.Text 527
versus SAX 529
DriverManager 366, 368,
369, 370
getConnection 368, 369, 370, 371, 375
DSN 277, 369, 371
DTD 44, 49, 339, 495
<!ELEMENT> 497
attribute list specification 499
attribute type 499
constraints 495
document type declaration 495
element type declaration 497
elements 497
external 496
internal 496
specifying 495
dynamic HTML content 362
dynamic transformations 551
E
email
content-type header 450
IMAP4 450
message content 449
message header 448
message structure 448
MIME 450
multipart container 449
POP3 450
protocols 449
retrieval protocols 450
SMTP 450
transport protocols 450
Email Facade 463, 468, 471
emulators 24, 307
problems 343
Ericsson
R320 647
R380 647, 649
WapIDE 24
event handlers 587
events (WML)
card-level 76
deck-level 78
eXtensible Markup Language. See XML
Extensible StyleSheet Language Transformation. See XSLT
F
File Transfer Protocol 641
form elements 587
formatting text 50
G
GenerateEvent 547
GenericServlet 355, 356
GET method 195, 310, 319
pitfall 311
GO task (HDML) 174, 199
GOSUB task (HDML) 174, 200
H
Handheld Device Markup
Language. See HDML
HDML 162, 555
access 229
access control 208
action elements 783
activities, defined 198
activities, navigating between 199
activities, providing help with 202
activities, using variables 203?205
assigning actions to buttons 172
attributes 163
bookmarks 205, 229
cache 228
cache control 207
CALL task 175
calling external applications 202
CANCEL task 175
card concept 165
cards 230
case sensitivity 164
CHOICE cards 178
commenting 164
controlling data entry 180
converting to WML 227
deck access 209
defining cards 780
definition 16, 161
elements 559
entering data 177?180
ENTRY card 179, 192
escape characters 779
example 165
formatting text 166?168, 778
GO task 174, 199
GOSUB task 174, 200
HDML?s unique
problem 559
header element 163
Hello World example 165
history stack 75
icons 185
images 183?185
interaction basics 172
introduction to 161?162
navigating within a deck 177
positioning text 168
PREV task 175, 199
providing help 202
reasons for learning 161
referencing variables 188
reserved characters 166, 167
sending variables 194, 203
setting bookmarks 206
source 567
starting a document 561
state, maintaining 198
structure 162
supported devices 162
syntax 162
TASK attributes 173, 792
text entry modes 182
text formatting 166
text justification 168
user interaction 172
using the cache 207
variables, explicit setting 189
variables, implicit setting 191
variables, in activities 203
variables, introduction 187
variables, naming conventions 188
variables, overview example 193?194
variables, referencing 188
variables, sending externally 194
versus WML syntax 228
white space 164
WML quick reference
237?242
wrap versus Times Square 169
wrapping text 168
HDML elements
<A> 172, 176, 559, 573, 577
<ACTION> 172, 173
<BR> 168
<CANCEL> 199
<CE> 178, 559
<CENTER> 168
<CHOICE> 178, 191, 231, 559, 561, 567
<DISPLAY> 165, 230, 559, 562?564, 567
<ENTRY> 179, 192, 232
<GOSUB> 199, 200
<HDML> 162, 565
<IMG> 183
<LINE> 168
<NODISPLAY> 190, 234
<RETURN> 199
<RIGHT> 168
<TAB> 168
<WRAP> 169
HTML client and servlet 362
HTTP
Error 405 386
Error 500 412
response headers 811?822
HTTP Direct 30, 31, 37, 612
HTTP GET 386, 392, 393, 406
HTTP headers
Set-Cookie 396
HTTP POST 392, 406, 412,
432, 434
HTTP Redirect 612
HTTP_ACCEPT 314, 389
getting the value 315
HTTP_USER_AGENT
314, 389
HttpServlet 355, 382
HttpServletRequest 360, 389
getCookies() 396
getDateHeader() 389
getHeader() 389
getHeaders() 389
getIntHeader() 389
getSession() 404, 412
HttpServletResponse 361, 382, 388, 396, 426, 429
addCookie() 396
getCookies() 396
sendRedirect() 411
setContentType() 439
setHeader() 427, 430
HttpSession 395, 404
getAttribute() 404, 405, 412
getAttributeNames() 404, 405
removeAttribute() 404, 405
setAttribute() 404, 405
I
icons 93, 185
identifying a client type 266
IE5 browser, MIME types 317
IEC 637
IIS 246
images 91, 183
rules in design 220
IMAP4 450
iMode 4
input fields 87
formatting 89
oder of, 91
ISO 637
ITU-T 637
J
JAF 451, 693
Java
absolute() 426
accessing property file 371
Connection interface 366, 369, 371, 375, 431
cookie support 396
creating a WAP application 383
cursor 431
database access 367
destroy() 355
development tools 354
doGet() 358, 386, 406,
410, 468
See also servlet
doPost() 358, 386, 406,
409, 468
See also servlet
DriverManager 366, 368, 369, 370
dyamic WAP content 380
EJB 478
email applications 447?482
EVENTTYPE_CDATA 547
EVENTTYPE_
CHARACTERS 547
EVENTTYPE_
COMMENT 547
EVENTTYPE_
ENDDOCUMENT 547
EVENTTYPE_
ENDELEMENT 547
EVENTTYPE_
ENTITYREF 548
EVENTTYPE_IGNORABLEWHITESPACE 548
EVENTTYPE_PI 548
EVENTTYPE_
STARTDOCUMENT 548
EVENTTYPE_
STARTELEMENT 548
executeQuery() 423, 426, 427
GenerateEvent 547
generating output to WAP 382
getAttribute 535
getBundle 371
GetCookieServlet 403
getDocument 534
getElementsByTagName
534, 535
getNodeName 535
getNodeValue 535
getOutputStream 361
getParameter 360, 390
getParameterValues 360, 390
getParserDescription 540
getProperty 371
getRow 426
getServletConfig 355
getServletInfo 355
getString 372
getWriter 361
getXMLProcessorLiaison 540
init 355
InputStream 370
JSP 436
last 426
life cycle of servlet 355?356
load 371
message stores 455
methods 533
next 425
overriding init 357
properties 533
properties, accessing 371
property file 370, 418
ResourceBundle 370?371
ResultSet 369, 375, 378,
379, 431
ResultSet interface 366
SelectionEvent 547
Serializable 354
server-side 351, 359, 361, 448, 727
server-side, definition 352
service methods 359
service 355
servlet 351?353, 366, 379
See also servlet
setContentHandler 534
setContentType 361, 382
setDateHeader 382
setHeader 382
TooManyListenersException 549
TraceListener 548
Tracer 548
tracing 546
Xerces parser 526
Java 2 Enterprise Edition (J2EE) 448
Java Database Connectivity.
See JDBC
Java Naming and Directory
Interface (JNDI) 379, 475
naming service 379
Java Servlet Development Kit (JSDK) 353
Java Web Server (JWS) 437
java.sql 366, 375, 378
JavaBeans Activation
Framework. See JAF
JavaMail 448, 450, 693
application layer 451
architecture 450
classes 452
connecting to message store 457
creating a message 455
deleting messages 459
Email Facade 472
error conditions 453
establishing a session 454
implementation layer 451
initializing a message 456
initializing properties 454
interfaces 452
JAF 451
opening the folder 457
retrieving messages 456
sending a message 456
viewing email content 458
See also email
JavaScript 121
JavaServer Pages. See JSP
javax.servlet.http 396, 404
javax.sql 379
JDBC 353, 366, 367, 368
drivers 367, 368, 369, 379
executing SQL 369
java.sql 378
jdbc.drivers 368
pure Java drivers 368
Type 1 driver 367, 368
Type 2 driver 367
Type 3 driver 368
Type 4 driver 368
URL 368, 369, 370
JDBC 1.0 367, 378
java.sql 378
JDBC 2.0 367, 425
batch processing 379
BLOb 379
Core API 378
cursor 425
features 378
java.sql 378
javax.sql 379
Optional Package API 379
JDBC-Net 368
JDBC-ODBC 353
bridge 367, 368, 369,
379, 426
JDK1.2 569, 589
JRun 437, 439, 693
JSP 435, 436, 437
comments 460
compilation error 443
directives 460
expression 460
generating a WML deck 437?439
implicit object 441
out object 439
page compilation engine 437
predefined variable 441
response object 439
run-time error 444
scripting elements 440
scriptlets 460
server-side troubleshooting 443?446
servlet loaders 437
standard action 442
WAP email 459
K
keypad 577
assigning actions to 577
L
languages 16
life cycle of servlet 355, 356
location paths 506
absolute 506
relative 506
location steps 505, 506
axis 506
node test 506
predicate 507
LockType
adLockBatchOptimistic 290
adLockOptimistic 290
adLockPessimistic 290
adLockReadOnly 290
logon 326
creating an account 330
database authentication 327
invalid 328
new account 329
M
MADK 24
mail retrieval protocols 450
mail transport protocols 450
MDAC 281, 339
Microsoft Access 372, 373, 426
Microsoft Active Server Pages. See ASP
Microsoft Active ServerError handling Pages
Error handling 267
Microsoft Data Access Components 281, 282, 288
Microsoft Internet Information Server 693
Microsoft SQL 426, 693
Microsoft SQL Server 417
Microsoft XML parser. See MSXML
Microsoft XSLT processor 536
example 537
migrating to a database server 299
MIME 450
errors in ASP 341
types of 316?317
mobile switching center 633
Motorola?s Mobile Application Development Kit 24
movie description 578, 583
MSC 633
MSXML 526, 533
and ASP 541
and ASP, example 541
DOMDocument 533
methods 533
parsing a document 533
properties 533
MSXML2.DOMDocument
542, 543, 566
Multipurpose Internet Mail Extension 341
MXSLT processor
transformNode 536
MyContentHandler 530
N
naming service 379
native-API 367
navigating multiple records 337
nbsp 54
Net News Transfer Protocol 641
neutral representation 486
new account 329
Node set functions 508
examples 509
Node tests 507
Nokia Activ Server 624
Nokia browser 224?225
WAP toolkit 32?39
Nokia emulator toolkit 32
Nokia WAP Server 38, 614, 624
Nokia WAP Toolkit 24, 569, 620, 621
Blueprint Phone Emulator 37
configuring 36, 619
connecting to WAP server 626
connecting to WAPlite 619
converting to WML 629
debugging 35
installing 32
Nokia 7110 Emulator 38
obtaining 32
reloading a document 36
server console window 627
starting 33
nonvalidating 525
NOOP task 176
number functions 510
ceiling 510
floor 510
number 510
round 510
sum 510
O
Object linking and embedding databases (OLE DB) 280, 281
ODBC 275, 368, 369, 379
APIs 367
components 276
JDBC drivers 368, 369
Open DataBase Connectivity. See ODBC
Options
adCmdFile 290
adCmdTable 290
adCmdTableDirect 290
adCmdText 290
adCmdUnknown 290
P
Phone.com
MIME types 316
UP.SDK 24?31
planning the application 64
POP3 450
POST method 195, 309,
310, 319
pragma 147, 152
access pragma 153
meta pragma 153
URL pragma 152
predicates 508
PreparedStatement 370
PrintTraceListener 547
PrintWriter 383
process 538
processStyleSheet 552
product catalog
(XML example) 555
product descriptions
(XML example) 562
product inventory
(XML example) 564
products.xml 566
properties 371
getProperty 371
property file 370
prototyping the presentation 558, 572
WML 572
proxy server 256, 320
caching 256
push framework 477
Push Initiator 477
Push Proxy Gateway (PPG) 477
PutCookieServlet 401
PWD 369
Q
query string 387
R
RADIUS 633
RAS 615, 655, 656
server 633
record object 291
redirection 418, 612
Remote Authentication Dial-In User Service 633
Request object
Cookies 255
Form 251
QueryString 252
ServerVariables 267
Request.Form 312
reserved characters 53
ResourceBundle 371
result tree 512, 521
retrieving values 311
Request.Form 312
RETURN task 175
S
S/MIME (Secure/Multipurpose Internet Mail Extensions) 480
SAX 526, 529
ContentHandler 530
events 526
examplie 531
org.xml.sax.ContentHandler 529
versus DOM 529
XML parse example 529
SAXParser 531
scratch pad 605
SDK 20
Secure Sockets Layer (SSL)
480, 635, 641
ClientHello message 641
ServerHello 641
securing communication channels 480
security 632, 634
asymmetric cryptography 636
cryptography 636
cryptography, ciphertext 636
cryptography, secret key 636
digital certificates 637
private key 636
symmetric key 636
self-closing tag 45, 52
Server object 262
server-side 352
servlet 351?353, 366, 379
<go> element 385
adding cookies 396
and WAP-based applications 381
back-end 372
calling from a card 385
class 359
classes 353, 354
Cookie class 396, 397
creating a WAP application 383
creating cookies 397
database connection example 372
database example 374
definition 352
destroy 355, 356, 358
displaying email 470
doGet() 358, 359, 386, 388, 406, 410, 412?414, 421
doPost() 358, 359, 386, 388, 406, 412, 413, 421, 422, 432, 434
dynamic WML content
381, 385
framework 354
GetCookieServlet 403
getOutputStream 361
getParameter 360, 390
getParameterValues 360, 390
getServletConfig 355
getServletInfo 355
getWriter 361
hierarchy 354, 355
init 355, 356, 357
initializing 356, 357, 388
interface 355
invocation 358
invoke 385, 386, 388
life cycle 356
loader 353, 359, 378, 384, 432
loading 356
Nokia WAP server 624
passing parameters 387
processing client requests 388
PutCookieServlet 401
reading email 469
reason for, 352
responding to client 361
retrieving cookies 396, 399
retrieving parameters
360, 390
service 355, 356, 357
setContentType 361
setDateHeader 382
setHeader 382
troubleshooting dabase access 378
URL 359
user interface 373
servlet interface 354
getServletInfo 355
ServletConfig 354
ServletOutputStream 383
ServletRequest 358, 360
ServletResponse 361
session 395, 404, 412, 623
application layer data
404, 405
session management 405
Session object
Abandon 262
Contents.Remove 262
Contents.RemoveAll 262
implementation 261
session variables 260
SessionID 261
Timeout 261
setHeader 382
short message service 624, 634
show times 598
Siemens S35 647, 654
simple API for XML 529
single quotes 333
SMS 624
SMSC 634
SMTP 450
softkey labels 221
Softkey1 19
SQL 274
DELETE FROM 275
INSERT INTO 275
SELECT 274
UPDATE 275
SQL Server 276, 277, 299, 300
startDocument 530, 534
startElement 530, 534
Starting the VoiceXML document 594
state of original activity 199
Statement object 431
statements (WMLScript) 133
block 135
break 136
continue 136
empty 136
expression 137
for 137
if 137
return 138
types of, 135
variable 139
while 139
static transformations 550
strategy classes 458
Structured Query Language.
See SQL
style sheets 511, 519
document processing 521
how they work 521
result tree 521
validation 521
writing 517
XSLT processor 525
Symbian 650
T
tables (WML) 55
TASK attribute (HDML) 174
CALL 175
CANCEL 175
GO 174
GOSUB 174
NOOP 176
PREV 175
RETURN 175
task elements (WML) 65?69
TellMe Studio 587, 605
account 601
introduction 600
scratch pad 601
sign in 605
template 536
text/vnd.wap.wml 382, 389, 439
text/x-hdml 566
Times Square wrapping 54, 169
TLS 641
Tomcat 437
transformation 486, 487, 536, 555, 568
example 517
HDML 555
implementing 554
input document 518
Java 568, 581, 585
rules 519
running 580
VoiceXML 585
WML 568
transformNode 536, 542, 543
Transport Layer Security (TLS) 480, 641
troubleshooting 568, 585, 607
ASP scripts 270
database access 378
server-side JSP 443?446
UP.Simulator 30
VoiceXML 607
WAP 338?348
WML 585
typical session 12
U
UID 369
unified communications (UC) 478
UP.Browser 384, 386, 404
UP.Link 31
UP.SDK 24, 404
installing 25
UP.Simulator 24, 25, 568,
621, 693
configuring 30
debugging applications 30
installing 25
obtaining 25
Phone Information window 27, 28
reloading 30
reloading a document 30
starting 25
URL escaping rules 98
URL library 152
URL pragma 152
user agent 397, 401, 429
user device, detecting 344
V
valid documents 500
validation 525
variables 187
definition 96
from child context 119
get method 105
naming 97, 188
passing between contexts 118
post method 104
referencing 97, 188
selection menus 101
sending to programs 194
server-side programs 103
set implicitly 99
setting 99
setting explicitly 189
setting implicitly 191
to child context 118
using input fields 100
WMLScript 127
voicemovies.vxml 604
voicemovies.xml 603
VoiceXML 585
conversational approach 592
directives 587
document elements 587
document played 606
elements 587, 593
event handlers 587
field elements 587
form elements 587
grammar fragment 597
interpreter 586
introduction 586
menu choices 596
menu elements 587
movie show times 598
sample 588
source 603
VoiceXML elements
<audio> 588, 589, 593, 595, 603
<block> 588, 589, 604
<choice> 588, 593
<form> 588, 589
<goto> 588, 593
<menu> 588, 593, 595
<noinput> 588, 593,
595, 603
<nomatch> 593
<pause> 588, 593, 595, 603
<prompt> 588, 593, 595, 603
<reprompt> 588, 593, 595
<vxml> 588, 595, 603
W
W3C DOM 527
W3C XML 501
WAP 3
advanced messaging 474?482
architecture 612
browser detection 314
caching on gateways 324
carriage return 51
Certification Authority 638
creating a dynamic application 304
data entry 331
definition 10
development challenges 18
development platform 23
directory services 475
email architecture 461
emulators 23
environment variables 313
how information moves 7
JNDI API 475
navigation 332
new messages 476
protocols 12
sample email application 461
securing channels 480
security 479
terms 14
test using emulator 305, 307
troubleshooting 338?348
UP.Simulator emulator 25
WBMP format 92
WAP design
bookmarks 219
browser considerations 224
data entry 223
default phone 216
device 215
goals 217
guidelines 218
hyperlinks 222
images 220
menu rules 222
navigation 218
softkey label 221
text 219
user 214
WAP devices
detecting 317
size constraints 320, 214?217
WAP gateway 385
WAP services configuration 647, 650, 651, 657
access set up 647
Ericsson R320 647?649
Ericsson R380 649?654
loading WML deck 648
Siemens S35 654?655
typical parameters 646
WAP technologies 3, 12
WAPlite 614, 616
Connection-Less Mode 620
Connection-Oriented Mode 620
WBMP image format 92
web browser detecting 314
well-designed applications 214
well-formed documents 500
Wireless Telephony Application Interface (WTAI) 72
Wireless Transport Layer Security 643
WML 17, 44?47
access control 57
attributes described 46
backward navigation 75
bookmarking 61, 229
case sensitivity 46
closing tags 44
comments 47
contexts 111?114, 198
contexts, return to specific card 115
data input 87?91
data input, formatting 89?91
data input, ordering fields 91
data input, restricting 89
deck caching 59
defining tasks 69
definition 44
displaying email 466
document 575
DTD 44, 49
elements 573
emulating HDML 230, 231, 232, 234, 235
emulating HDML TAB 234
escaping characters 51
events, deck-level 78
events, intrinsic 76
extended elements, list of 110
extensions, explained 110
fonts 51
formatting input fields 89
formatting text 50
Hello World example 48
history stack 75
icons 93
images 91
implementing contexts 112
input fields 87
introduction to 41
justifying text 54
linking text 70
logging in 464
logging off 468
managing nested contexts 111
menu elements, overview 82
menus 73?74, 82?87
meta information 57
multiple-selection list 84
navigating contexts 114
navigation 63
nesting elements 44
order of input fields 91
output 582
passing variables, contexts 118
placing a call 72
planning 64
planning an application 64
reserved character 53
returning 115
self-closing elements 45, 52
self-closing tag 45, 52
sending email 467, 471
source 583
standard 236
state, maintaining 111
state, navigating between two states 114?118
structure 44?47
tables 55, 234
task elements 65?69
tasks, defining 69?73
text alignment 54
text wrapping 169
using menus for navigation 73
using tags in 44
variable state contexts 112
variables 96?107, 380
variables, exchanging
103?107
variables, maintaining state 112
variables, naming 97
variables, passing between contexts 118?120
variables, referencing 97
variables, setting 99?102
versus HDML, quick reference 237?242
white space 44?47
wrapping text 51, 54
WTAI 72
WML deck
multiple pages 334
size 15?16, 333
WML elements
<A> 577
<a> 71, 386, 737
<access> 57, 731
<anchor> 70, 736
<b> 51, 744
<big> 51, 744
<br /> 51, 744
<CARD> 573, 575, 577, 583
<card> 49, 77, 734
<do> 69, 115, 577, 579,
583, 737
<em> 51, 744
<go> 104, 385, 738
<head> 57, 731
<i> 51, 744
<img> 91, 744
<input> 88, 309, 739
<link> 751
<meta> 59, 732
<noop> 65, 69, 740
<onevent> 77, 741
<optgroup> 82, 86, 736
<option> 73, 83?84, 741
<p> 49, 745
<postfield> 388
<prev> 67, 115, 584, 742
<refresh> 68, 742
<select> 73, 82, 84, 331, 743
<setvar> 99, 104, 408, 733
<small> 51, 745
<strong> 51, 746
<table> 55, 746
<td> 55, 746
<template> 79, 733
<timer> 77, 734
<tr> 55, 747
<u> 51, 747
<wml> 49, 734
WML extended elements
<catch> 110, 112, 115, 747
<exit> 110, 112, 115, 748
<receive> 110, 118, 751
<reset> 750
<send> 750
<spawn> 110, 112, 749
<throw> 110, 112, 115?116
WMLScript 121
access pragma 153
accessing variables 129
addition example 130
arithmetic operator 140, 143
assignment operators
140, 143
binary operator 143
block statemtents 135
break statements 136
case sensitivity 126
comma operators 140
comments 126
comparison operators
141, 144
conditional operators 141
conditional statement 134
console library 150, 775
continue statement 136
data type 128
data type assumptions 129
declaring variables 128
dialogs library 151, 774
empty statement 136
expression statement 137
external function 149
float library 151, 752
for statement 137
function 146
function rules 147, 148
if statement 137
invoking functions 148
isvalid operator 142
keywords 127
lang library 151, 754
library functions 149
local functions 148
logical operators 142, 144
meta pragma 153
operators 134, 140
overview 124
pragma 147
reserved words 127
return statement 138
scope of variables 129
statements 133, 135
string library 151, 759
string operators 142
structure 125
syntax 125
typeof operator 142
unary operator 144
URL library 152, 767
using a function 134
using WMLScript 124
variable statement 139
variables 127
while statement 139
white space 126
WMLBrowser library
152, 772
WTLS 480, 617, 620, 621, 624
X
X.509 standard 637
Xalan and Java 544
example 544
Xalan XSLT processor 537,
569, 589
example 538
xalantransform 544, 552,
581, 603
Xerces parser 526, 533
classes 534
getDocument 534
interfaces 534
parsing 534, 535
xercesParse 528
xHTML 17
XML 485, 488
<!DOCTYPE> 496
absolute location paths 506
axis location steps 506
Axis specifiers 507
Axis specifiers, ancestor 507
Axis specifiers, child 507
Axis specifiers, descendant 507
Axis specifiers, parent 507
Axis specifiers, self 507
basic components 489
boolean functions 509
case sensitivity 495
catalog 556
CDATA 491, 499
CDATA sections 491
character data 492
Child Element Frequency 498
comments 489
ContentHandler 530
createAttribute 534
createComment 534
createElement 534
createObject 542
declaring internal entities 491
definition 488
document type definition 495
DOM parser 526
double quotes 333
DSN 277, 369, 371
DTD 495
dynamic 393, 395, 405, 415
element attributes 493
element type declaration 497
elements 489, 492
elements versus attributes 494
endDocument 530, 534
endElement 530, 534
entities 490
entity reference 490
example attribute list declarations 500
external entity 490
field elements 587
FileInputStream 370
games.xml 541
games.xsl 542
internal entities 490?491
internal versus external entities 490
location paths 506
location steps 505, 506
malformed documents 501
markup types 488
Microsoft parser 533
node test 506
parsers 524
predicate 507
processing instructions
486, 489
relative location paths 506
reset 538
SAX parser 526
schemas 501
specification 488
specifying a DTD 495
start and end tag 489, 493
well-formed documents
500, 511
Xerces parser 533
XPATH 502
XPATH node representation 503
XML catalog
described 556
XML elements
<!ATTLIST> 499
attribute_name 499
default value 499
element_name 499
TYPE 499
<!DOCTYPE> 495
placement 496
<!ELEMENT> 497
ANY 497
child element ordering 498
children 497
components 497
EMPTY 497
examples 497
MIXED 497
XML example
movie list 569, 570, 575, 585, 589, 590, 595
movie list, described 570, 591
movie show times 578, 583, 598
movies.wml 582
movies.xml 570, 582
&n