A computer program product, tangibly embodied in a machine readable storage medium, for processing multimedia content and user preferences pertaining to multimedia consumption, the computer program comprising instructions to cause data processing apparatus to perform operations comprising:
- generating a user description including a user identifier to identify a user, the user description also including a user preference description and a usage history for the user, the user preference description having a hierarchical structure to describe the user's preferences for filtering and searching the multimedia content, the hierarchical structure including a parent preference element and first and second child preference elements of the parent preference element, each of the parent and first and second child preference elements including at least one corresponding multimedia preference description to identify preferred multimedia content, wherein the first child preference element includes a first preference condition to specify a first condition for applying the multimedia preference description corresponding to the first child preference element and the second child preference element includes a second preference condition to specify a second condition for applying the multimedia preference description corresponding to the second child preference element, and wherein the usage history describes events of the user's multimedia consumption and specifies a respective user action type for each of the described events of multimedia consumption;
- and
- selecting the first or the second child preference element for use in searching the multimedia content for the user based on the first and second preference conditions;
- wherein generating the user description includes receiving information about the events of multimedia consumption, using the information about the events of multimedia consumption to generate at least a portion of the user preference description, and generating at least a portion of the usage history based on the information about the events of multimedia consumption.