Question to OP: Can the name change? - If yes, you cannot partition by name.
Numbers for MartialStatus and EmploymentStatus can change from higher to lower, therefore you cannot really use MAX(), as I believe what you really want to see is the latest non-null value for them.
Can Email be NULL? If so, than it should be some logic for email as well.