There are lots of PermutationDependent data formats. For example, a graph's connectivity matrix is hideously permutation dependent. Shuffle the rows and columns and suddenly detecting obvious features, like MaximumClique, becomes an NpComplete problem. SaulAmarel showed how to take one of these NpComplete problems, the CannibalsAndMissionaries, and take the complexity out of it by decomposing it into a NonPermutationDependent representation. Unfortunately, he was never able to do this for any other problem ... One of the BenefitsOfXml is that, at least in principle, it makes hierarchical data representations NonPermutationDependent. And in practice that's a lot better than just making them into plain text. ''Wha'? I don't understand. Please explain more clearly.'' In the case of a graph, GraphTheory doesn't care about node labelling; so lots of permutations of a connectivity matrix are equivalent to the same graph. The connectivity matrix is PermutationDependent. The problem of finding a MaximumClique, then, appears to be an artifact of the representation used. No one has been able to come up with a NonPermutationDependent representation of a graph, so we're stuck with the silly fact that MaximumClique (and all its equivalent problems) is NpComplete. And that's why the trains don't run on time. ''Shucks, we know that's why timetables cause infernal complexities. Are you try'na say that an XML file contains identical labels, so the order from top to bottom of them labels don't matter? But you can say that about a flat tab-separated text file.'' No, silly, I'm trying to provoke someone into correcting me so I can go back into wale-on-XML mode. I woke up this morning and wanted to give XML a good old poke. Then regrettably figured out some real BenefitsOfXml ... though in this particular respect XML ain't exactly what you'd call consistent ...