A user interface for navigating among screens on a personal computer. The
screens, which include layers of a shell user interface and various
locations within applications, are presented as pages. In addition,
commands and help information of an application are presented as a web of
command pages. To this end, a unit of measure, called a "place" is
defined. In general, an application is a place, and separate documents
within an application may also define a place. Separate command windows
and dialog boxes within an application or a document typically do not
define a place. Backwards navigation takes the user to the previous
place, and forward navigation (if possible) takes the user to the next
place. Because the underlying data for a page may change between an
initial visit to a page and navigation back to the page, data objects and
page code are maintained separately, and are combined only when a request
for a page is made.