Patent ID: 7383277

Claim:
A method for user modeling, within a computer system, of a lifecycle of uniquely identified computer data objects that are members of a computer data object family, the method comprising: accessing user-defined state information associated with a data object family, the state information including: a set of permissible states for data objects associated with the data object family, the set of permissible states including at least a first permissible state and a second permissible state that is different than the first permissible state, conditions defining events that result in transitions between permissible states included in the set of permissible states, the conditions including a first condition defining a first event that results in transition from the first permissible state to the second permissible state, and actions that occur in response to transitions between permissible states included in the set of permissible states, the actions including a first action that occurs in response to a transition from the first permissible state to the second permissible state; and creating a data object associated with the data object family that includes one or more data attributes, history data, and data identifying a state of the data object, the state of the data object being at least one of the permissible states included in the set of permissible states associated with the data object family and the first data object corresponding to a tangible asset associated with an asset family that corresponds to the data object family; configuring the data identifying the state or the data object to identify the state of the data object as the first permissible state; receiving an indication of occurrence of an event associated with the tangible asset corresponding to the data object; determining whether the event is the first event defined by the first condition; and in response to determining that the event is the first event defined by the first condition, transitioning the data object from the first permissible state to the second permissible state by: updating the data identifying the state of the data object to identify the state of the data object as the second permissible state; performing the first action; modifying an attribute value for at least the one or more data attributes included in the data object based on the event; and storing, in the history data included in the data object, data related to the event.