The following examples each show code snippets of external DTD subsets that define a general entity
B whose replacement text
The examples were tested with the help of a minimal XML document that includes the appropriate DTD files and
displays the entity
B, using various well-known software tools.
Below the results of these tests are shown.
|Software used||Critical passages in external DTD file|
|MSXML 3–6 (e.g. in MS Internet Explorer)||OK||OK||OK||';' was expected||'>' was expected||“internal error”|
|.NET XML parser||PE replacement text must nest properly within markup declarations||PE replacement text must nest properly within markup declarations||unexpected end of file parsing NAME||';' was expected||OK||OK|
|RXP parser (e.g. at this online validator)||Quoted string goes past entity end||Quoted string goes past entity end||Expected name, but got <EOE> for PE||Expected ';'. but got '%'||OK||OK|
|Stylus Studio (proprietory software) built-in validator||partial markup in entity value||partial markup in entity value||parameter entity name expected||PE reference "%te;" must end with ';'||OK||OK|
|Java XML API||error||OK||OK||unterminated entity reference 'te'||OK||OK|
|Validome online validator||unexpected premature end of file||OK||OK||PE reference "%te;" must end with ';'||OK||OK|
|“xmlvalidation” online validator||file ended||OK||OK||PE reference "%te;" must end with ';'||OK||OK|
Which of these software implementations are probable to be conforming to the XML standard according to these examples, or, how would a correctly implemented validating XML parser have to react to each of the examples?