I guess an XML aware diff could work though? certainly not at all line based...
If it did node-based diffs.
Most diffs do that. The Diff that ships with gvim on Windows has this option on by default and I couldn't find where to turn it off because it was severely screwing up what I was diffing.