Look at http://tkyte.blogspot.com/2006/08/evolution.html
if running on 9i or above, PIPELINE function can be used to do this.
-- //www.freelists.org/webpage/oracle-l