Patent ID: 8924395

Claim:
A method, comprising the steps of: (a) determining a file type using a file typer for each document in a plurality of documents; (b) extracting data using a file ripper from each document typed in step (a), wherein the data is selected from the group consisting of metadata, text, records, tables, images, pictures, auditory data or combinations thereof; (c) testing the data extracted in step (b) for an embedded object, and if one or more embedded objects are detected, appending the data from the embedded objects to a buffer wherein the data in the documents; (d) repeating steps (a) to (c) recursively for each document until no additional embedded objects are detected in the documents; (e) repeating steps (a) to (d) iteratively for each document in the plurality of documents; (f) creating an object map which preserves respective locations of the embedded objects within each document in the plurality of documents; (g) replacing the embedded objects within each document of the documents with text, where the spatial relationship between the text at the location and the surrounding text is specified by the object map; and (h) generating an index which preserves hierarchial relationships among the documents and the embedded objects, where the documents and the embedded objects have at least one individual identifier associated with each of the documents and the embedded objects.