Metadata feature lists that drive User Interface Screens
Original Publication Date: 2001-Aug-01
Included in the Prior Art Database: 2003-Jun-20
Disclosed is a mechanism for dynamically generating User Interface (UI) screens specialized to a particular type of data based on metadata. Metadata is used in this context to refer to business data separated out from the business logic. In some applications, there is a need to gather information for a particular object that has a large number of options and information requirements that vary with the options chosen. When this occurs, it is difficult to develop the large number of screens to gather all of the information required. This invention solves this problem by putting the definition of the information into metadata and producing a single screen to display the fields to gather the information for the item. The invention has the advantage of being generic and of reducing the time required to develop the application by using the single screen. In this invention, item categories are modeled in metadata as a series of hierarchical lists of elements. The "leaf" elements contain a set of "feature" elements. Each of the "feature" elements describes a different feature of the item (manufacturer, color, etc.). There are three different types of feature elements: pick list features, free form features, and boolean features. The pick list features contain a name for the feature and a metadata list of elements representing the possible values of the feature. Free form features provide a name for the feature and a rule for inputting information. The boolean features contain only the name of the feature. When users select a particular item, they are presented with a screen that displays fields for the features of the item selected. The screen has a fixed layout and the fields are placed in a specific order, based on the type of feature. Fields that have been specified by pick lists are presented as a list-box from which an element is chosen. Fields that have been specified as free form are presented as a text box with a particular validation rule. Fields that have been specified by a boolean feature are presented as a series of check boxes that allow attributes to be selected or rejected. Once the user has entered all of the feature information for the item, the UI collects the information and puts it in a data object.