Indeed. This idea has quickly sprouted many leaks. Instead of constantly revising the game to fix them. I'm scrapping my original ideas, and replacing this with a much more elegant, and more random system I worked up while bored in class today.
Okay, many improvements have a chance for them to cause a resource to appear. I will add an exactly similar XML tag for them to cause specified resources to disappear. That way, the resource with that improvement has a X/10000 chance each turn of disappearing. (With X being the number I choose, probably 50.) This will simulate resources being consumed.
At the same time, improvements will be marked with a tag "iDepletionChance" , again, a number out of 10000, which will give improvements a chance at consuming all useful materials at the location, and replacing the improvement with a depleted mine. However, the mine will not deplete if there is a resource that the mine is mining (like Gold). The gold has to deplete via the above method before the mine can deplete. If a new resource appears on the plot that could be mined, and there is a depleted mine (or was a depleted mine) at the spot, players will be able to build a new mine. (This will simulate the discovery of new minerals in older mines, making them worth working.)
This way, mines can still be pillaged, replaced by workers, affected by events, amongst other things, without causing exploits. It's also much more random.