1. A system for processing information to identify product choices within a product domain for a user, comprising: a source of a machine-readable specification of the product domain including a plurality of products having attributes within a plurality of attributes; an user interface engine, coupled to the source of a machine-readable specification, the interface engine including resources to generate data specifying one or more frames for display on a graphical user interface, and to supply the data to a display to be viewed by a user, the one or more frames including a sequence of input prompts for providing input choices to gather preference and requirement data for attributes in the plurality of attributes of items in the product domain; and a decision engine coupled to the user interface engine and to the source of a machine-readable specification, which processes the received input data for the product domain to present a set of items according to the gathered preference and requirement data identified by the input data as product choices to the user, wherein the source of a machine-readable specification includes a data structure defining the plurality of attributes as structured elements in an array and resources to assign weights to at least some of the attributes as a function of associated gathered preference and requirement data and as a function of each attribute's associated position in the data structure.