User specifies prioritization/relative importance of various factors (including characteristics of other users), perhaps in terms of percentages of the whole. These percentages may (and almost certainly will) vary for different domains, times, external circumstances, and people. However, if we always specify the prioritization for every transaction (possibly only specifying deviations from a predefined template) then it will be easier for other agents/users to incorporate the associated evaluations/recommendations into their own experiences. (See, however, the third paragraph of "Evaluations, User Characteristics, and Prioritization" in the main page of my working notes .)
Note for simulation: each agent should have, in addition to its preferences (prioritizations) and its parameters, a set of properties or characteristics that determine its performance in various areas to be evaluated by other agents.
After a transaction, each user is prompted by his or her agent to evaluate the transaction (see "big questions"). Some objective information, e.g.a record of goods/money/services exchanged, would be nice; ideally this would be fed to the agent automatically. This evaluation would be several-dimensional, with perhaps room for additional comments and keywords for aspects of the evaluation that did not fit into the given evaluation format.
Reputation information is passed around either in response to active queries (asking for recommendations) or passively (enabling database exchange in the context of a transaction, or, I suppose, with random passersby, if that means anything). Note that passive information gathering may be filtered according to the user's needs and preferences, and that any information gathered by either method will be interpreted in the light of the agent's view of the credibility of its source.
In any event, the various methods for information-gathering cause some recommendations to be dumped in the agent's metaphorical lap. The agent must then, according to the parameters specified by the user, incorporate the new data with the old "known" data (i.e., experiences and recommendations), taking into account the credibility of the source(s) and the path travelled by the data.
re: the datapath: Abdul-Rahman suggests that the return path ought to be the same as the outgoing path (for active queries) so as to ensure that the return path has at least one known entity, i.e., the agent which was the first one queried. This may mean that the information is more "attenuated" than it need be, if one of those queried is also known to the originator of the query and has good credibility. Some minor graph-theoretical stuff should probably happen here to prune the return path as necessary. (Others on the way back should perhaps do this too...although note that the only way that such pruning can be done is if the entire chain is exposed, which may not be desirable for security purposes.)