11. A system comprising: one or more computers configured to perform operations comprising: obtaining an initial attribute whitelist, the initial attribute whitelist including one or more initial attributes; processing a first collection of documents, wherein each of the documents has content to be displayed and an underlying structure that defines how the content is to be displayed, to identify a plurality of pairings of candidate attributes with candidate values in the documents, wherein each candidate attribute and each candidate value is content found in the content to be displayed; grouping the candidate attributes into a plurality of groups according to both a particular document in the first collection in which each candidate attribute was extracted identified and the underlying structure in the particular document in the first collection in which each candidate attribute was identified; calculating a score for each unique attribute in the candidate attributes, where the score reflects a number of groups containing both the unique attribute and an attribute on the initial attribute whitelist; generating an expanded attribute whitelist, the expanded attribute whitelist including the initial attributes and each unique attribute having a respective score that satisfies a threshold; and using the expanded attribute whitelist to identify valid pairings of candidate attributes with candidate values.
11. A system comprising: one or more computers configured to perform operations comprising: obtaining an initial attribute whitelist, the initial attribute whitelist including one or more initial attributes; processing a first collection of documents, wherein each of the documents has content to be displayed and an underlying structure that defines how the content is to be displayed, to identify a plurality of pairings of candidate attributes with candidate values in the documents, wherein each candidate attribute and each candidate value is content found in the content to be displayed; grouping the candidate attributes into a plurality of groups according to both a particular document in the first collection in which each candidate attribute was extracted identified and the underlying structure in the particular document in the first collection in which each candidate attribute was identified; calculating a score for each unique attribute in the candidate attributes, where the score reflects a number of groups containing both the unique attribute and an attribute on the initial attribute whitelist; generating an expanded attribute whitelist, the expanded attribute whitelist including the initial attributes and each unique attribute having a respective score that satisfies a threshold; and using the expanded attribute whitelist to identify valid pairings of candidate attributes with candidate values. 14. The system of claim 11 , where the score further reflects a number of attributes on the initial attribute whitelist that are in a group with the unique attribute.