Representing and Reasoning with Qualitative Preferences