Good question Richard ...
I'm looking to link an MP3 file with a physical location, but this needs to dynamic as I might re-sort the hard drive, as I do from time to time with my CD wallet.
Therefore, the question I'm asking myself is should I use the MP3 tags to store my data in, or should I store the data and file location in a seperate database?
I'm leaning towards the former, in that after re-sorting my hard drive, I could easilly re-catalogue everything by iterating through the folder structure in my application, reading in the data from the MP3 tags as I go.
Another reason is that I could also hook into the api of the software used for playback to load my selected track.