could you not accomplish this with a history or auditing table maintained by triggers or maybe even perhaps Change Data Capture provided SQL 2008. this design sounds disastrous like everybody else. Is this HIPPA compliance?
Keeping all of the inactive parent records in the table complicates your design, and it does not sound very maintainable. It sounds like you will bloat your parent table with history data which will cause you a number of issues trying to get usable information back out.