This whole section is evidence of near-fanatical concern on the part of some members of the Working Group for exactness and predictability. In my opinion, since the spec makes it clear that non-validating parsers don't have to read external entities, anybody who's building an app that doesn't require a validating parser just won't use them, if they have a brain in their head. Thus, in operational terms, I expect no nasty surprises as a result of the fact that a non-validating parser might or might not read an external entity.
But some among us feel that optional behavior is dangerous and highly undesirable; therefore, this section explains in agonizing detail exactly what consequences optional entity reading can have, and gives some motherhood advice on how to avoid it.
Copyright © 1998, Tim Bray. All rights reserved.