OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: More Parsers Questions

[ Lists Home | Date Index | Thread Index ]
  • From: richard@cogsci.ed.ac.uk (Richard Tobin)
  • To: xml-dev@xml.org
  • Date: 15 Jun 2000 22:45:01 GMT

In article <B1C2D4514427D2118C2E00104B3054A4D636F2@mail.upshot.com>,
Brown, Bryan <bryanb@upshot.com> wrote:

>Question 1. Test '../sun/valid/ext01.xml' 
>This test is supposed to be a valid document but the the document includeds
>the entity null, which doesn't exist.

It does exist and is an empty file.  Maybe you lost it somehow?

>Question 2. Test '../sun/invalid/pe01.xml'
>The document includes a reference to an external DTD 'pe01.dtd' .That
>external DTD includes a "reference" to an external PE %bad-PE which since
>the PE in question is not well formed should cause the parser to say the
>document is invalid. This test seems wrong to me. First off the %bad-pe is
>in an att-value, the XML spec says that PE's in attvalues are not recognized
>(which is exactly what my parser does).

You're right, that test is mistaken.  There is no PE ref in pe01.dtd,
so the question of whether the parameter entity is well-formed does not

This has been reported to Oasis and will no doubt be fixed in a new
release of the tests.

>Second if we ignore that 

Then you get into a confusing area.  The constraint that external PEs
must match markupdecl* only makes sense if external PEs can only
appear where declarations can appear, and there is no such rule.  And
if there were such a rule, the constraint would be unnecessary.  This
is part of the infamous "potential erratum #2" which isn't going to be
resolved any time soon.

My advice to users is to only use external PEs at the top-level of the
DTD.  Parser implementors should do whatever seems right to them :-)

>Also XML experts have told me that a parser can locate PEs in
>external subsets by checking for a PE wherever the production S can occur,
>which is not the case for attValue.

Since they're not recognised in AttValue, that question doesn't arise.
But they are recognised in EntityValue, so you're right - they can be
processed as part of whitespace handling except in EntityValue where
they have to be recognised everywhere.

-- Richard
Spam filter: to mail me from a .com/.net site, put my surname in the headers.

"The Internet is really just a series of bottlenecks joined by high
speed networks." - Sam Wilson

This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@xml.org&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS