The XML decl is not a PI (especially in SAX)
David Megginson
david at megginson.com
Sun Nov 14 12:29:11 GMT 1999
"Richard Anderson" <rja at arpsolutions.demon.co.uk> writes:
> The XML declaration is an indication to the application processing
> the document as to what version of the XML spec the following markup
> conforms to, what encoding is used, and whether or not there are
> dependancies of external entites within the document. All of those
> are processing hints (read PI) for the XML processor, arent they ?
Here are the productions for a processing instruction in XML 1.0:
[16] PI ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>'
[17] PITarget ::= Name - (('X' | 'x') ('M' | 'm') ('L' | 'l'))
The XML and text declarations cannot match this production -- the only
reason that the syntax is similar is so that XML could work with
legacy SGML tools.
> Certainly the SAX parser I use reports the XML declaration as a PI
> which is obviously very usual. Is that unusual ?
That is wrong. Note the documentation from DocumentHandler.java:
* Receive notification of a processing instruction.
*
* <p>The Parser will invoke this method once for each processing
* instruction found: note that processing instructions may occur
* before or after the main document element.</p>
*
* <p>A SAX parser should never report an XML declaration (XML 1.0,
* section 2.8) or a text declaration (XML 1.0, section 4.3.1)
* using this method.</p>
Please inform the author of the parser of this implementation bug.
> I will argue the XML spec doesn't define the declaration as a type
> of PI, but it does reserve the xml PItarget, and, quickly checking
> the nearest XML book on my desk (XML companion by Neil Bradley) that
> also says it is a PI.
That book is also wrong -- please inform the author.
All the best,
David
--
David Megginson david at megginson.com
http://www.megginson.com/
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To unsubscribe, mailto:majordomo at ic.ac.uk the following message;
unsubscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list