I have a stylesheet whose purpose is to merge a number of small XML documents.
The number is 24. I do this in a stylesheet whose general form is:
<xsl:param name="document-name-1" />
..
<xsl:param name="document-name-23" />
(For those of you who are wondering, the twenty-fourth document is the one
passed to the transformation on the command line.)
<xsl:variable name="doc-document-name-1" select="document($document-name-1)" />
..
<xsl:variable name="doc-document-name-23" select="document($document-name-23)"
/>
<xsl:template match="/">
<report>
<xsl:copy-of select="ROWSET/ROW/*" />
<xsl:copy-of select="$doc-document-name-1/ROWSET/ROW/*" />
...
<xsl:copy-of select="$doc-document-name-23/ROWSET/ROW/*" />
</report>
</xsl:template>
Processing this with Saxon 8.7.1J, when the transformation gets to the
<xsl:copy-of> that corresponds to document 21, the transformation fails with
this error message:
"Fatal Error! Attempt to access a lazily-evaluated variable while it is being
evaluated"
All the variables are defined in the same format, so I'm stumped for a reason
why document 21 is a lazily-evaluated variable while documents 1 - 20 are not.
Can anyone shed some light on this?
Thanks.
--
Charles Knell
cknell(_at_)onebox(_dot_)com - email
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--