Patent Document ID: 8228542
Application ID: 12415625

Base Claim:
1. A computer system for storing a plurality of electronic documents, the system comprising: a first dynamic storage profile table; a second dynamic storage profile table; memory; and at least one processor coupled to the memory, the at least one processor being adapted to execute an upload module and a profile module, wherein: (A) the upload module is adapted to: (1) receive an electronic document that is associated with a first profile, the first profile defining a first set of one or more attributes, (2) identify values associated with the electronic document for at least one attribute of the first set of one or more attributes defined for the first profile, and (3) upload the electronic document to the memory; and (B) the profile module is adapted to: (1) store the electronic document in a storage medium, (2) store a first record associated with the electronic document in a first table, the first record comprising: (a) a document identifier that identifies the electronic document, (b) a location identifier that identifies a storage location of the electronic document, and (c) a first profile identifier that is associated with the first profile and identifies the first dynamic storage profile table, (3) store a second record in a second table, the second record being a record for at least one attribute of the first set of one or more attributes defined for the first profile, the second record comprises: (a) the document identifier, (b) the first profile identifier, (c) a first attribute identifier that identifies the particular attribute of the first set of one or more attributes, and (d) the value of the identified values identified for the particular attribute of the first set of one or more attributes, (4) store a third record in the first dynamic storage profile table, the first dynamic storage profile table comprises a field for each attribute of the first set of one or more attributes stored in the second table for the electronic document, and the third record comprises: (a) the document identifier, and (b) the identified value stored in the corresponding field for each attribute of the first set of one or more attributes stored in the second table for the electronic document, (5) receive input to associate the electronic document with a second profile, the second profile defining a second set of one or more attributes, and (6) in response to receiving the input to associate the electronic document with a second profile: (a) receive values associated with the electronic document for at least one attribute of the second set of one or more attributes defined for the second profile, (b) update the first record in the first table with a second profile identifier that is associated with the second profile and identifies the second dynamic storage profile table, (c) store a fourth record for at least one attribute of the second set of one or more attributes defined for the second profile in the second table, the fourth record comprises: (1) the document identifier, (2) the second profile identifier, (3) a second attribute identifier that identifies the particular attribute of the second set of one or more attributes, and (4) the value of the identified values identified for the particular attribute of the second set of one or more attributes, and (d) store a fifth record in the second dynamic storage profile table, the second dynamic storage profile table comprises a field for each attribute of the second set of one or more attributes stored in the second table for the electronic document, and the fifth record comprises: (1) the document identifier, and (2) the identified value stored in the corresponding field for each attribute of the second set of one or more attributes stored in the second table for the electronic document.

---

Claim 13:
13. The system of claim 1 , wherein: the profile incorporates processing rules that comprise code to obtain values for one or more attributes of the first set of one or more attributes from an external resource; and the profile module is adapted to execute the processing rules to obtain the values for the one or more attributes prior to storing the electronic document in the storage medium.