An expert system for generating user interfaces is provided. The expert system
includes one or more components for realizing one or more intentions of a user
interface designer. Each intention, when received by the expert system, identifies
and activates a corresponding component for realizing the received intention. Each
component programmatically contains a set of rules extracted from guidelines, conventions,
and principles of user interface design. A set of parameters is also supplied with
each received intention to aid the corresponding component to choose and execute
a rule from the set of rules. Each rule produces a user interface from a template
different from other templates used by other rules.