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

  • From: Staffan Måhlén <staffan.mahlen@a...>
  • To: xml-dev@l...
  • Date: Wed, 07 Mar 2001 16:44:37 +0100

I have been working my way through the errata updates to comfirm XML second
edition compliance and one item has been bothering me. E29 removes a
sentence to make the text comply with the constraints, removing the
necessity for PEs to be declared before being used when in non-validating
mode. 

Does this indicate that non-validating processing should be "harder" for the
processor and require some kind of two pass parse or delayed resolution? 

In an attempt to see if i understood the issue correctly i tried running the
following example with MSXML without validation and it seemed to require
declaration of the PE: "Parameter entity must be defined before it is used".
The way i am reading the errata i guess that should be considered a bug
nowadays? (Or is it coverted in one of the "if-not-validating" sections?)

Example:

<?xml version="1.0"?>
<!DOCTYPE test [
<!ELEMENT test (#PCDATA)>
%zz; 
<!ENTITY % zz '&#60;!ENTITY nonTricky "error-prone" >' >
]>
<test>
	&nonTricky;
</test>

Looking at the errata for the second edition it seems the E8 clarification
applies to this. However i am having trouble seeing the rationale for this,
would someone fill me in on the reasoning behind allowing non-declared PEs
when not validating? I would have found the correction to make it as a WFC
more "appropriate". I did try searching the archive but any pointers would
be helpful.


/Staffan Måhlén

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