How can I compare two .blend files?

I would like to compare the contents of two similar .blend files. Is there any way to do this?

I’m thinking there must be a way to extract the contents of a .blend file into a human-readable XML file. If I’m able to do that, then it’d be easy to compare two similar .blend files in a diff program.