[Home] [By Thread] [By Date] [Recent Entries]

  • From: Rob Lugt <roblugt@e...>
  • To: Gary Stephenson <garys@i...>, xml-dev@l...
  • Date: Tue, 26 Jun 2001 12:02:32 +0100

Gary Stephenson wrote:
> > "When an XML processor recognizes a reference to a parsed entity, in
order
> > to validate the document, the processor must include its replacement
text."
> >
> > So, I suggest you only need to read external entities when they are
> > referenced.
>
> Assuming the above to be correct, it raises the obvious question as to why
> your validator allowed the test to pass. It wasn't in the original list of
> problems you posted - was it?  Or is the test actually still in error
despite
> this - for some reason that currently escapes me.
>

Gary,

our XML Validator allows this test to pass because the test doesn't contain
a recognizable reference to %bad-pe;.

pe01.dtd:-

<!ENTITY % bad-pe SYSTEM "pe01.ent">
<!ELEMENT root EMPTY>
<!ATTLIST root
    something CDATA   "%bad-pe;"
    evil (doctor | scott) "doctor"
    >

What appears to be a reference to %bad-pe; isn't really a reference because
it appears inside a literal.  PEs are not recognised within literals except
for entity value literals.  In this case the 'something' attribute has a
literal default value of "%bad-pe;" - which is perfectly valid.

Regards
~Rob

--
Rob Lugt
ElCel Technology
http://www.elcel.com/



Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member