Transform breaking in Oxygen 17 and 17.1 that worked in 15 and 16

Here should go questions about transforming XML with XSLT and FOP.
psbentley
Posts: 20
Joined: Mon Aug 04, 2014 5:18 pm

Transform breaking in Oxygen 17 and 17.1 that worked in 15 and 16

Post by psbentley »

Hi all,

I'm having a bit of a weird issue with my DITA to InCopy transform. It works in Oxygen 15 and 16, but not in 17 or 17.1. The error I get is:

C:\Program Files\Oxygen XML Author 17\frameworks\dita\DITA-OT\plugins\com.kpe.sp_idml\build_dita2sp_idml.xml:72: Fatal error during transformation using C:\Program Files\Oxygen XML Author 17\frameworks\dita\DITA-OT\plugins\com.kpe.sp_idml\xsl\re.xsl: An empty sequence is not allowed as the value of parameter $nextitem; SystemID: file:/C:/Program%20Files/Oxygen%20XML%20Author%2017/frameworks/dita/DITA-OT/plugins/com.kpe.sp_idml/xsl/dita2idml.xsl; Line#: 1631; Column#: -1

When I open the XSL file associated with the error, this is the code that appears to be the issue:

Code: Select all


<xsl:variable name="appendspace">
<xsl:call-template name="appendspace">
<xsl:with-param name="nextitem" select="following::node()[1]" as="node()"/>
<xsl:with-param name="nexttext"
select="following::text()[normalize-space() != ''][1]"/>
</xsl:call-template>
</xsl:variable>
Has something changed in 17 that would suddenly cause this to error out? Thanks for any advice/feedback/help!

Peyton
Radu
Posts: 9057
Joined: Fri Jul 09, 2004 5:18 pm

Re: Transform breaking in Oxygen 17 and 17.1 that worked in 15 and 16

Post by Radu »

Hi Peyton,

Each Oxygen version comes with the latest Saxon 9 XSLT processor available and it uses it during DITA OT transformations. It's possible that the Saxon processor may signal certain errors which it tried to silently ignore in older versions.
But there is definitely a problem in the XSLTs.
Could you look at the place where the "appendspace" template is defined?
It probably defines the "nextitem" parameter as having a certain type which requires at least one node but when the template gets called from the "appendspace" variable in some cases it has an empty node sequence value.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
Post Reply