Page 1 of 1

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

Posted: Wed Dec 02, 2015 1:11 am
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

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

Posted: Wed Dec 02, 2015 9:53 am
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