P.Hovenkamp writes:
[...]
Programmers may be tempted to hard-code this hierarchy.
Programmers who hard-code /anything/ should be sent back to school for re-education.
Not only should software itself behave according to the principle of least amazement, but we know that this is best accomplished if the programmers never build in assumptions about how the clients will use the software or present the data.
The biggest advantage of XML for this group is its impending ubiquity, not its formal structure, and (in my opinion) the discussion here should return to discussing problems, not solutions because that ubiquity will make the community want to use it whether it is the best fit or not (just as has happened with HTML as a presentation vehicle).
I am reminded of a talk I heard from a high-level member of the technical staff at Adobe a few years ago about an aborted three-year language development project. By his cleverly crafted presentation it became clearer and clearer to the audience that this new language had exactly the design features of another, just recently released language, he finally ended his talk by saying: "As we prepared to take the cloak off this project, we stepped into the street, looked up and saw that we were in the path of a huge, oncoming train. Its name was Java. We scrapped the project."