Patent ID: 8856074

Claim:
A machine implemented method of managing data, the method comprising: receiving a notification from an operating system element that a data file has changed or been created, wherein the notification indicates a file type of the changed or created data file; selecting, in response to the notification and based on the file type indicated by the notification, a first plug-in software element for a software application that created the data file, the first plug-in software element from a group of plug-in software elements, wherein the group of plug-in software elements include a plurality of plug-ins for a plurality of different software applications that execute on a data processing system, wherein the plurality of plug-ins obtain metadata from files created by the plurality of different software applications according to file type; importing, by the first plug-in software element, metadata from the data file into a metadata database, wherein the metadata includes information describing an attribute of the data file, and wherein the metadata includes a format specific to the file type; storing, in the metadata database, the metadata from the data file in a metadata file, wherein the metadata database includes a plurality of other metadata files having metadata from respective files created by the plurality of different software applications, wherein the metadata in the plurality of other metadata files is obtained by the plurality of plug-ins according to file type, wherein the metadata database is stored on a storage medium in a flat file format such that the metadata files are stored as a sequence of data items, and wherein each metadata file includes a plurality of fields without a reference or a pointer to another field in the metadata database.