The XML specification (1.0 and 1.1, latest
versions) allows the placement of parameter entity references in external DTD
subsets in ways that are rather pathological. Although they normally do not
occur in real documents, software would have to be able to deal with them in
ways conforming to the standard.
I have written several short examples of such
constructions that according to my understanding can all be considered as being
allowed and valid by the XML specifiaction, yet, when tested with various
widely-used validating XML parsers, lead to a variety of different
results, depending on which software is used. It follows that either
most of these software implementations do not conform to the standard or that
the standard itself does not uniquely determine whether the tested examples are
valid or not.