If you have lots of data with duplicate namespaces, xml is the one for you:
I once had a colleague that told me that a properties file can do 97% of what an xml file does. Sure xml files have attributes (like leaves of a branch) but an xml source by the name of w3schools recommends only use of attributes as meta-data to describe the xml tag itself: for instance, the "id" attr.
So, I suppose the extra 3% comes from a forced "integrity" constraint on the relationship of data with the same namespace, using a spatial relationship more openly apparent in xml. For example,
a.b=The Joker
a.b.c.=Batgirl
a.b=Batman
a.b=Superman
a.b.c=Supergirl
Using properties, there is no constraint relationships like xml (for ex: alike superheroes or originals)
[a]
[b]Batman[/b]
[b]Superman[/b]
[a]
[a]
[b]Batman[/b]
[b]
[c]Batgirl[/c]
[/b]
[/a]
The difference in xml....
http://ilupper.blogspot.com/2010/05/xml-vs-properties.html