1. A method of searching for a desired object stored on a computer system comprising: retrieving one or more objects based on an object attribute to produce initial search results; selecting an object from the initial search results, wherein the selected object is associated with one or more other attributes; and retrieving one or more additional objects based on one or more of the other attributes of the selected object to expand the initial search results and provide the desired object, wherein the objects are linked to one or more tree structures each associated with an object attribute, and the retrieving one or more additional objects includes traversing the tree structures linked to the selected object and associated with the one or more other attributes to identify the one or more additional objects.