The phrase "and in any parameter entity that they read” is what is puzzling me.
How can I, as a non-validating processor, have a parameter entity that I have read?
The only way I can make sense of that paragraph is to interpret it as saying:
“…[non-validating processors] are required to process all the declarations they read in the internal DTD up to the first parameter entity reference. However, if a non-validating processor goes beyond the minimum required behavior and instead reads and processes the contents of some parameter entities, then it should stop processing the internal DTD at the point it encounters a reference to a parameter entity that it chose not to read (and process).”Is there some other interpretation of this that I’m missing? Or is that what most folks think this is saying?