<!DOCTYPE test [
<!ELEMENT test (#PCDATA)>
<!ENTITY % p0 "a quote (") test">
<!ENTITY % p1 "<!ENTITY e1 "">
%p1;%p0;">
]>
<test>This is&e1; .</test>
>From what I understand, this seems well formed!? And should process as:
<!DOCTYPE test [
<!ELEMENT test (#PCDATA)>
<!ENTITY % p0 "a quote (") test">
<!ENTITY % p1 "<!ENTITY e1 "">
<!ENTITY e1 " a quote (") test ">
]>
<test>This is a quote (") test .</test>
My first thought for expanding PEReferences at the lexical level was to
just convert any quotes in the replacement text to %, but that would
break the above example. How does one tell to escape the quote when
substituting p0, but not when substituting p1? Ahhh!
Tell me this isn't well formed? Please? XP can't hack it (unclosed
token) so I have hope.
--- Chris Hubick mailto:chris@hubick.com http://www.hubick.com/