1. A computer-implemented method for extracting facts, the method comprising: at a computer system including one or more processors and memory storing one or more programs, the one or more processors executing the one or more programs to perform the operations of: identifying a first fact having an attribute and a value obtained from a first document; retrieving a second document that contains the attribute and the value of the first fact; identifying in the second document a contextual pattern associated with the attribute and value of the first fact; extracting a second fact from the second document using the contextual pattern, the second fact having an attribute that is different than the attribute of the first fact and having a value that is different than the value of the first fact; and storing the first fact and the second fact in a fact repository of the computer system.