A constraint is the return value of an expression and is often assigned to an attribute. You use a constraint if you want an attribute to have a dynamic value that changes according to some external state. States are conditional constraints. Both constraints and states are very useful features in OpenLaszlo.
This chapter discusses constraints and states and show how to use them.