Patent ID: 8285697

Claim:
A method implemented by data processing apparatus, the method comprising: analyzing a data object using one or more trained classifiers to extract a plurality of text values from the data object and determine corresponding attributes for the text values based at least in part on an ontology, wherein each of the corresponding attributes is associated with a respective confidence value determined by one of the trained classifiers; assigning each of one or more of the plurality of text values to a corresponding attribute for the text value that is associated with a respective confidence value that satisfies a threshold; providing a user interface to a client, the user interface configured to present at least one question as to whether an extracted text value of the plurality of text values paired with its assigned attribute accurately characterizes the data object, wherein at least one extracted text value is a candidate ontology term not found in the ontology and is presented in the at least one question; receiving a response to the at least one question from the client indicating that the attribute-value pair accurately characterizes the data object; in response to receiving, storing the attribute-value pair in association with the data object; serving the data object to a remote computer over a network in response to a request for one or more data objects characterized by the attribute-value pair; and wherein analyzing, assigning, providing, receiving and serving are performed by the data processing apparatus.