Getting "SXST0067: No transmission filter available for xsl:copy-of" when using "xsl:stream" with nested '<xsl:apply-templates select="copy-of(outermost(//p))[.//*[local-name() = $word-type]]">'
Replies (1)
Please register to reply
Added by Martin Honnen over 8 years ago
When trying to use @xsl:stream@ with a nested @xsl:apply-templates@ on a sequence created with @copy-of(outermost(//p))@ with a predicate @[.//*[local-name() = $word-type]]@ Saxon 9.7 EE compiles the stylesheet fine so assesses it as streamable but then gives a run-time error
Error at char 18 in xsl:apply-templates/@select on line 17 column 71 of test201607120104.xsl: SXST0067: No transmission filter available for xsl:copy-of No transmission filter available for xsl:copy-of
Here is a reduced test case:
A sample input document is
The quick brown fox jumps quickly over the lazy dog.
1 plus 1 yields 2.
Expected output is
The
quick brown fox
jumps quickly over the lazy dog.
When I use a @for-each@ with a nested @apply-templates@, as in
Saxon does not give an error and gives the wanted result, therfore I think the @<xsl:apply-templates select="copy-of(outermost(//p))[.//*[local-name() = $word-type]]">@ should also work.
Thanks for reporting it.
Raised as a bug at https://saxonica.plan.io/issues/2836
Test case si-copy-of-801 added to W3C test suite.
Please register to reply