Hi Mark,
You can put those into a plsql function. This is what I did when I had to nuke out 90% of a site and keep 10% alive. It took me about 3 days to do it. Its a real short coming of OpenACS when it comes to removing data on a per instance basis. The per package is problematic enough, the per instance basis is really bad. As of now what you are proposing seems to be logical, but if you need a lot of deleting to do now. Run the it using a plsql function. Also if you have CR item on the file system, make sure to run the sweeper to nuke out the file in the file system.