1. A method comprising: performing, by a computer: receiving a first data set request; dynamically identifying metadata attributes associated with items in a first data set, in response to the first data set request, wherein dynamically identifying the metadata attributes comprises determining which metadata attributes associated with the items in the first data set are shared by at least a subset of the items; creating a first set of discriminative facets based on the identified metadata attributes; ranking the discriminative facets in the first set; selecting for display a subset of the first set of facets based on the ranking; causing display of only those facets that are in the selected subset; receiving a second data set request at a different time than a time of the first data request; dynamically identifying metadata attributes associated with items in a second data set, in response to the second data set request, the second data set being a modified version of the first data set, wherein at least one metadata attribute associated with the first data set is not present in the metadata attributes associated with the second data set; creating a second set of discriminative facets based on the identified metadata attributes for the second data set request; ranking the discriminative facets in the second set; and selecting for display a subset of the second set of facets based on the ranking of the discriminative facets in the second set.