1. In a warehouse management system, a method comprising: receiving a specification of an item from a user of the warehouse management system; receiving control data from the user, the control data indicating whether the specified item is lot controlled, serial controlled, or both lot and serial controlled; receiving a specification of one or more attributes of the item from the user; receiving a specification of a context defined by the one or more attributes specified for the item, the context representing a subset of attributes defined in the warehouse management system that are specific to the item; storing, in a computer-readable storage medium, a database record linking the context to the specified item; receiving a selection of a flex field from the user, the flex field being capable of storing attribute data values; receiving a selection of a user definable attribute of the item; receiving a specification of a descriptive flex field name from the user; storing, in a computer-readable storage medium, a database record linking the descriptive flex field name to the flex field; storing the descriptive flex field name and the user definable attribute in a flex field table, the flex field table providing a mapping of the descriptive flex field name to an internal flex field name in a lot table, a serial table, or both; storing, in a computer-readable storage medium, a database record assigning the context to the item; and displaying a record of the item indicating that the item is assigned to the specified context, the context including the user definable attribute.