[xsl] Recursive entity reference "%ISOamsa" error

Subject: [xsl] Recursive entity reference "%ISOamsa" error
From: "Mark Peters" <flickrmeister@xxxxxxxxx>
Date: Thu, 13 Jul 2006 14:31:28 -0400
Hi All,

I'm encountering the error "Recursive entity reference "%ISOamsa" when
I apply a stylesheet to my XML file to simply copy all the nodes and
attributes to another document.

The complete error:

ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN//XML; Line #55;
Column #10; XSLT Error (javax.xml.transform.TransformerException): Recursive ent
ity reference "%ISOamsa". (Reference path: %ISOamsa -> %ISOamsa -> %ISOamsa),
Exception in thread "main" java.lang.RuntimeException: Recursive entity referenc
e "%ISOamsa". (Reference path: %ISOamsa -> %ISOamsa -> %ISOamsa),
       at org.apache.xalan.xslt.Process.doExit(Process.java:1153)
       at org.apache.xalan.xslt.Process.main(Process.java:1126)


My XSL:


<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.0">
	<xsl:output method="xml" version="1.0"/>
	<xsl:template match="node()|@*">
		<xsl:copy>
			<xsl:apply-templates select="@*"/>
			<xsl:apply-templates/>
		</xsl:copy>
	</xsl:template>
</xsl:stylesheet>


The information I found indicates that the replacement text for an entity cannot reference *another* entity:

"One word of warning: you cannot reference an entity within its
replacement text as this will create a recursive loop. For this
reason, the replacement string cannot contain any characters that
might be treated as short references which should be mapped to the
entity being defined."

However, my XML document (which is too large to paste here) doesn't
seem to include anything but simple entities. I don't have any
declared entities, and the only other character entities included are
as follows:

&trade (trademark)
&reg; (registered trademark)
&sol; (forward slash)
&ast; (asterisk)
&lowbar; (underscore)
&lt; (less than)
&gt; (greater than)
&boxv; (vertical line)
&mdash; (em-dash)
&lsquo; (left single quote)
&rsquo; (right single quote)
&ldquo; (left double quote)
&rdquo; (right double quote)
&equals (equals)

Can anyone think of another reason for the error?

Thanks in advance.

Mark

--

Mark Peters
Senior Technical Writer
Saba Software

Current Thread