Here's my current setup on my notebook:
MBR 0 - Primary partition - XP partition, shows up as C:\ in XP, hidden in Win 7
MBR 1 - Primary partition - Win 7 partition (was Vista partition until August), shows up as C:\ in Win 7, hidden in XP
MBR 2 - Primary partition - Data partition, NTFS formatted, shows up as D:\ in XP and Win 7
MBR 3 - Extended partition - contains two logical partitions: Linux swap partition and Linux system partition, hidden in XP and 7.
I don't have the entirety of my Documents and Settings (XP) and Users (Win 7) folders on D:\, but I have moved My Documents, Music, Video, and Pictures to D:\ using TweakUI's "Special Folders" tweak in XP; Win 7 and Vista automatically allow you to specify a new location for these folders. XP and Win 7 share these folders without issue.
So yes, it is possible to dual boot XP and 7 with a common data partition. I've been doing it between XP and either Vista or 7 for over two years now. I don't know of any reason why you couldn't have a Documents and Settings folder and a Users folder on your data partition, as long as you redirected the folders correctly in each of the respective operating systems.
I use the Linux partition on my laptop frequently for some classes I'm taking, but even if I didn't I'd still use Linux for its incredible Grub bootloader. Grub allows you to set partitions as active, and hide partitions, on the fly; thus you can completely hide the XP partition from Win 7 and vice versa. This prevents Win 7 from corrputing XP's files, and XP from corrupting Win 7's files. For more information, see this post from a Linux forum:
A Linux way to triple boot itself, XP and Vista.