Daniel Pittman writes: > Because XML isn't, you know, self-framing or anything.
It's not entirely self-framing, no. Here is a well-formed XML instance: <a/> <?a?> Here is another: <?b?> <b/> If you concatenate them, you can't tell which PI goes with which instance. (Though the problem goes away if you require an XML declaration on every instance; an XML declaration if present must appear before any whitespace or comments or PIs.) I seem to recall reading that this wasn't intentional, and that when the WG realised that their published spec had this property, they were somewhat surprised. I think that pushes XML firmly into the "hateful" category, even for people who didn't think it was there already. -- Aaron Crane