Appendix A
User Interface System Reference Model (UISRM)
Developed by the National Institute of Standards and Technology
(NIST), the User Interface System Reference Model (UISRM) describes
components of a window system in terms of six layers (see figure
2-2). Systems based on this reference model will have one or
more layers represented in the model. In particular, many applications
are built directly on the Toolkit layer, with no Dialogue/Presentation
layer support from a user interface management system (UIMS).
In some systems, the Toolkit, Subroutine Foundation, and/or Data
Stream Interface layers may be combined.
The layers are arranged from bottom to top in ascending complexity.
The bottom layers contain primitive constructs on which the upper
layer functions are built. Each layer is described below:
- Layer 0: Data Stream Encoding defines the format and
sequence of byte streams passed between client processes that
require services and server processes on the same or separate
platform that provide the services required. The Data Stream
Encoding is the "wire" or "network" protocol.
As a specification of message formats, the Data Stream Encoding
is independent of operating system, programming language, or network
communication.
- Layer 1: The Data Stream Interface specifies a function
call interface to build the messages defined in the Data Stream
Encoding layer. In programs, this interface is a function library.
The Data Stream Interface converts parameters passed from a program
into the bit stream that is transmitted over the network, and
converts messages from the server into values passed to the program.
The Data Stream Interface provides access to basic graphic functions
from Layer 0, and may support system functions such as error handling
and synchronization.
- Layer 2: The Subroutine Foundation uses features of
the Data Stream Interface to provide the means to build components
of window interfaces, such as scroll bars. Functions often provided
by the Subroutine Foundation include initialization and destruction
of objects, management of events and object hierarchy, and the
saving and restoration of the interface state. The Subroutine
Foundation can be thought of as a toolkit with which to build
toolkits.
- Layer 3: Toolkit components such as menus, pushbuttons,
scroll bars, or help boxes can be used to build an application
interface. These "prefabricated" components make up
the Toolkit. The components of Toolkits vary with vendors, but
they typically contain most of the common user interface elements.
- Layer 4: The Presentation layer determines the appearance
of the user interface, including aspects such as size, style,
and color. It specifies how the components in the Toolkit should
be composed to create windows. The appearance may be specified
using a User Interface Definition Language (UIDL) and may be enforced
by a window manager, which controls the size and location of window,
and decorates windows in the style specified by the user.
- Layer 5: The Dialogue layer coordinates the interaction
between the computer system and the user. It can be thought of
as a mediator between the user and the application program. Communication
between user and application program is through the Dialogue layer,
which may be implemented by a User Interface Management System
(UIMS). The user/application interaction is specified by a "dialogue"
that associates user actions, such as clicking on a menu item,
with application actions. Some UIMS tools can accept a dialogue
and a presentation style from which to generate an instance of
the UIMS that controls the interaction between user and application.
- Layer 6: The application program implements the functions
required by the user. Its interaction with the user is through
the Dialogue layer. The application may call routines at the
Toolkit, Subroutine Foundation, or Data Stream Interface levels
as well, but portability may be reduced.
The services provided in these layers are spread across the user
interface services portion of the DODIIS Profile in the API and
EEI, depending on specific implementation.
[ TOC ]
[ Next ]
DoDIIS Profile of the Technical Reference Model - Feb 1995