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


Help: OASIS Mailing Lists Help | MarkMail Help



   Which XML Processor is behaving correctly.

[ Lists Home | Date Index | Thread Index ]
  • To: "Xml-Dev@Lists. Xml. Org (E-mail)" <xml-dev@lists.xml.org>
  • Subject: Which XML Processor is behaving correctly.
  • From: "Doug Ransom" <Doug.Ransom@pwrm.com>
  • Date: Mon, 20 Jan 2003 14:42:36 -0800
  • Thread-index: AcLA1Tqq4bI5nwEKTleWaUYgpZR/ew==
  • Thread-topic: Which XML Processor is behaving correctly.

I have one parser ("A") that loads the document inline below, and one that does not (B);

B  returns an error message "Reference to undeclared namespace prefix: 'xsl'. Error processing resource 'file:///D:/junk/foo.xml'. Line 1, Position 43 " due to the use of a namespace within an entity definition. 

<?xml version="1.0" encoding="iso-8859-1" ?>
<!DOCTYPE xsl:stylesheet
	<!-- Namespaces -->
	<!ENTITY  xsl "http://www.w3.org/1999/XSL/Transform";>
	<!-- Match strings -->
	<!ENTITY CopyAttsAndNodes 
	"<xsl:apply-templates select='node()|@*' />">
<xsl:stylesheet xmlns:xsl="&xsl;">

Note the above sample is intended to be good xml, not necessarily good xslt.  I ripped it out of a working XSLT.  Note both parsers are capable of expanding internal entity references -- only when the prefix is included above does B run into problems.

I am leaning towards believing parser A behaving correctly, because the infoset is the tree created after the entity references have been expanded;  the entities in the DOCTYPE section should be namespace unaware (i.e. just text).

Doug Ransom
Interoperability Architect
Power Measurement
2195 Keating X Road
Saanichton, BC, Canada  V8M 2A5
Tel: 1-(250) 652-7100  
E-Mail: <mailto:doug.ransom@pwrm.com>
Website: <http://www.pwrm.com/>

ION(r)  smart energy everywhere(tm)


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

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