The Wireless Universal Resource File

7.20 What are WML Extension "nested contexts/activities" (<spawn> tag)?

Nested contexts are similar to functions in conventional programming languages, in that they provide a protected memory space (context) for local variables. This can be very useful for protecting private user data (e.g. credit card numbers) from other WAP applications. Nested contexts also allow the history stack to be segmented, so that several cards can be popped at once (using the <exit> element). This can be useful for navigating the user out of some complex set of cards (e.g. an E-commerce input form) without forcing the user to hit the back key several times. It also allows applications to keep the history stack small, which minimizes the risk of stack overflow on memory-constrained devices.

A very comprehensive overview of nested contexts is described in the UP.SDK Developer's Guide in Chapter 2 ("Doing More with WML").

Here is an online reference to the guide on the Openwave Developer web site:

[ Main ]   [ 07 - Making it look fancy ]