A constraint solver is encapsulated in a service adapted to participate in
a negotiation. In operation, the system constructs a graph in its memory
for negotiating a set of actions to be performed by selected ones of a
plurality of participants. Each node of the graph defines a negotiation
context that has associated therewith a constraint store with at least a
set of domain constraints stored therein that limit during the
negotiation a set of semantic constraints of the service on variables of
the constraint solver.