1. A computer-implemented method of identifying matching media items: storing by a media server (i) a controlled vocabulary which is represented as a hierarchically linked set of nodes wherein a plurality of nodes are concept nodes that correspond to concepts, wherein a concept is a text description that corresponds to one or more keywords, and wherein each node, except for the top node, has a parent node, and wherein the distance between a first node and a second node is the number of parents in a path from the first node to the second node and wherein concept nodes that are closer to the top node correspond to concepts that have broader meanings than concepts that correspond to concept nodes that are further from the top node, and (ii) a library of media items, said media library including a database of records for each media item, wherein each record includes at least one metadata field that includes at least one assigned keyword and wherein each assigned keyword in a metadata field corresponds to a concept in the controlled vocabulary; receiving, by the media server, a designation of a media item from a user computer; retrieving, by the media server, from the record in the media library that corresponds to the designated media item, the at least one keyword assigned to the at least one metadata field; for each of the at least one assigned keyword: (i) obtaining, by the media server, all related concepts from the controlled vocabulary, wherein the related concepts for an assigned keyword include a concept that corresponds to the assigned keyword and each concept whose corresponding concept node is in a path from the node that corresponds to the assigned keyword to the top node; (ii) computing, by the media server, a search weight for each related concept wherein a search weight for a related concept is inversely related to the distance from the concept node corresponding to the related concept to the concept node that corresponds to the assigned keyword and wherein for at least one related concept there are multiple paths between the concept node that corresponds to the at least one related concept and the top node and a path weight is computed for each of the multiple paths wherein the path weight is proportional to the distance from the concept node corresponding to the at least one related concept to the top node and the search weight is further based on a weighted average of the multiple path weights; (iii) for each of the related concepts, querying, by the media server, at least one specified metadata field in each record in the library of media items to obtain a search score for the corresponding media item that measures how closely the related concept matches the contents of the at least one specified metadata field in the record for the corresponding media item; and (iv) for each obtained search score, applying, by the media server, the search weight to the obtained search score to obtain a weighted search score for the media item; and providing to the user computer a list of up to a specified number of the media items that obtained the top weighted search scores.