I don't see it is a right way to utilise SharePoint. This approach is not efficient for searching and re-using past work because only one category can be applied to each document.
Today, a new approach of taxonomy is to use labels. Multiple labels can be applied to a single document. A good example is Gmail, which puts all emails in one logical repository and uses labels to personalise email classification. Another example is blogging systems, most of them are now provide labelling ability for quick search and easy organisation.
To maximize the search ability of SharePoint, you may consider to:
- Use labels, as metadata, to category documents in a document library. This can be implemented by using a document property or a custom column.
- Store documents in a single specific folder (not several folders). One document, one physical location, multiple logical views (explained in Point 4.)
- Enable versioning in turn to hide old versions for general access.
- Instead of presenting end-users a friendly interface to browse documents, similarly as they browse file folders, use Customised Views based on the metadata that the system (better automatically) collected from custom list, document properties, and database if applicable.
- Create simple, standard folders for each document library, such as Work, Published, and Temp. This is for easy file maintenance (Backup/Restore/Archive), not for document management from the point of view of business.
- Use label based metadata;
- Use customised views.