Re: Test query: standalone declaration preventing the reading of external entities?

> 
> I recently downloaded the latest conformance test suite to test the ElCel
> XML parser, and it disagrees with the conformance tests for the following
> cases:-
> 
> sun/not-wf/not-sa03.xml
> ibm/not-wf/P32/ibm32n09.xml
> ibm/not-wf/P68/ibm68n06.xml
> 
> In each case, the xml document is declared standalone, but it references an
> external DTD subset which contains a referenced entity declaration.  The
> latest conformance suite categorizes these as "not-wf" errors, which is
> puzzling.  The last time I downloaded these tests, they were categorized
> differently.
> 
> Since when has a standalone="yes" declaration meant that external entities
> *must* not be read?

I am currently dealing with these issues, since I want to fix some
non-conformance in Expat. The relevant specs are not easy to read, IMO.

But I agree with these test cases - they were previously classified wrong.
The point is, that even though the entity declarations are read and therefore
they do exist, they exist in the wrong spot. In the case of standalone="yes",
they must exist in the internal subset *and* they must exist outside of
a parameter entity.

I quote section 4.1 [68] of the spec:

<quote>
In a document without any DTD, a document with only an internal DTD subset
which contains no parameter entity references, or a document with "standalone='yes'",
for an entity reference that does not occur within the external subset or
a parameter entity, the Name given in the entity reference must match that
in an entity declaration that does not occur within the external subset or
a parameter entity
</quote>

Karl

Received on Monday, 17 June 2002 13:39:56 UTC