Actions
Bug #4327
closedError SXST0067: No transmission filter available for parent::(document-node()|element())
Status:
Closed
Priority:
Normal
Assignee:
-
Category:
Streaming
Sprint/Milestone:
-
Start date:
2019-10-01
Due date:
% Done:
0%
Estimated time:
Legacy ID:
Applies to branch:
9.9, trunk
Fix Committed on Branch:
9.9, trunk
Fixed in Maintenance Release:
Platforms:
Description
In an attempt to run a stylesheet trying to split an input documents into chunks using streaming and Saxon 9.9.1.5 EE the processing is executed but then throws an error
Error SXST0067: No transmission filter available for parent::(document-node()|element())
The code is rather simple other than trying to use xsl:copy select=".."
inside of the positional for-each-group
:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="#all" version="3.0">
<xsl:param name="chunk-size" as="xs:integer" select="500"/>
<xsl:mode streamable="yes"/>
<xsl:output indent="yes"/>
<xsl:template match="/*">
<xsl:for-each-group select="*" group-adjacent="(position() - 1) idiv $chunk-size">
<xsl:result-document href="split-{position()}.xml">
<xsl:copy select="..">
<xsl:copy-of select="current-group()"/>
</xsl:copy>
</xsl:result-document>
</xsl:for-each-group>
</xsl:template>
</xsl:stylesheet>
Input can be any XML with at least two nesting levels.
Workaround for me that works is using <xsl:element name="{name(..)}" namespace="{namespace-uri(..)}">
instead of the xsl:copy-of
.
Please register to edit this issue
Actions