15. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause: accessing metadata items that specify at least structural constraints on data objects within a data repository, the metadata items being separate from the data objects for which the metadata items specify the structural constraints; generating an index, the index mapping the metadata items to terms associated with the metadata items; generating a graph describing relationships between each of the metadata items; receiving a search request comprising at least one or more search terms; based on the one or more search terms and the index, locating a candidate set of the metadata items; performing a link analysis of the graph to determine a relationship score for each particular metadata item in at least the candidate set of metadata items; for each particular metadata item in the candidate set of the metadata items, calculating a ranking score based at least on the relationship score for the particular metadata item; generating a ranked result set based on comparing the ranking scores for the candidate set of metadata items, the ranked result set including at least one metadata item in the candidate set; providing information indicating the ranked result set in response to the search request; wherein the method is performed by one or more computing devices.
15. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause: accessing metadata items that specify at least structural constraints on data objects within a data repository, the metadata items being separate from the data objects for which the metadata items specify the structural constraints; generating an index, the index mapping the metadata items to terms associated with the metadata items; generating a graph describing relationships between each of the metadata items; receiving a search request comprising at least one or more search terms; based on the one or more search terms and the index, locating a candidate set of the metadata items; performing a link analysis of the graph to determine a relationship score for each particular metadata item in at least the candidate set of metadata items; for each particular metadata item in the candidate set of the metadata items, calculating a ranking score based at least on the relationship score for the particular metadata item; generating a ranked result set based on comparing the ranking scores for the candidate set of metadata items, the ranked result set including at least one metadata item in the candidate set; providing information indicating the ranked result set in response to the search request; wherein the method is performed by one or more computing devices. 27. The one or more non-transitory computer-readable media of claim 15 , wherein the instructions, when executed by the one or more computing devices, further cause: receiving definition data for a new metadata item that references a first metadata item in the result set; adding the new metadata item to the data repository; enforcing one or more constraints described by the new metadata item and the first metadata item on a particular data object within the data repository.