Federer's biggest weakness is that he's playing in the weakest grasscourt era of all-time. So his 7 Wimbledons are worth substantially less than Sampras' 7 Wimbledons.
Whereas Nadal is playing in an era known for featuring players with the greatest stamina of all-time and the most consistent baseline skill of all time.....both traits very suitable for clay - therefore this may be the toughest clay era of all-time. Many argue that Federer is an all-time great clay player despite never beating Nadal at Roland Garros. Many argue that Djokovic would trouble Borg on clay, and beat Muster or Guga. And I suspect Ferrer would have won Roland Garros in the 90s.