I could be mistaken, but I believe this is a DTD issue and not a
stylesheet issue. Isn't the DTD the place that specifies when to collapse
whitespace and how?
No, the DTD does not specify anything about this issue. Nor can it. This
is strictly a style-sheet issue (except for the special rules regarding RE
which I mentioned in an earlier message).