I think there are two mainly methods.
One method is obviously the tags. We will need a tag manager. And add tags to the desired files.
A second point of view is possible filtering the files by tag. Or by a set of tags.
But I believe more in simple known folders. (the tags may be more nearer to the intuitive concept of virtual folders...)
Suppose is an inventory of my house. Made with photos. I classify the photos by room. Then by concepts. By example the ladders and staircases in my home. Or the movie dvd in the different rooms.
By ease the first classification by room I can easily organize with a folder for each room.
Then I create more folders according to any criteria. The folder for ladders will include a shortlink to the file with ladders or staircase.
I can use some of the scripts DC made for the ocassion some time ago (possibility to automate the creation of shortlinks for the selected files in the desktop, in a set of folder, in an open folder, etc....)
For me this is more intuitive.
For complex needs may be more powerful by tags. And by tag force the reorganization in a set of folders. But in any case using finally virtual folders or "virtual files" for not use duplicated files anywhere...
