Subject: Re: [xsl] loop timing and result-document flush From: Abel Braaksma <abel.online@xxxxxxxxx> Date: Wed, 02 May 2007 16:39:55 +0200 |
XSL experts,
I have an XSL which loops over a set of elements in search of links and creates a result document for the link. In some cases there is more than one link to the same anticipated document, so I use the doc-available() to test first for its existence before creating the file.
This is intended to avoid a DynamicError related to writing more than one result document to the same URI.
<snip />
BUILD FAILED
/Users/dgran/dev/rose/build.xml:395: The following error occurred while executing this line:
/Users/dgran/dev/rose/build.xml:77: net.sf.saxon.trans.DynamicError: Cannot write more than one result document to the same URI: file:/Users/dgran/dev/rose/build/zoom/1-1861.wrenn.320-321.img.html
In the first case, the file (1-1861.wrenn.320-321.img.html) is correctly created because it doesn't exist yet. In the second case the doc-available() method should return true
and skip the result-document command, but it fails to work. My hypothesis is that the result-document() method isn't finished flushing before the call to doc-available() is made.
Assuming my guess is correct, is there a way in XSL to assure that the document is finished writing before continuing to the next iteration in the loop?
Maybe there is another way of skinning this cat.
I welcome suggestions. I'm using Saxon 8-7-3j. Below is a simplified version of my stylesheet:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="/">
<xsl:for-each select="ram|//repro|//page|//figure">
<xsl:variable name="zoomhtml">
<xsl:text>build/zoom/</xsl:text>
<xsl:value-of select="@image"/>
<xsl:text>.img.html</xsl:text>
</xsl:variable>
<xsl:message>
test for doc <xsl:value-of select="$zoomhtml"/> available: <xsl:value-of select="doc-available($zoomhtml)"/>
</xsl:message> <xsl:choose> <xsl:when test="doc-available($zoomhtml)"/>
<snip />
Cheers, -- Abel Braaksma
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] loop timing and result-do, David Carlisle | Thread | Re: [xsl] loop timing and result-do, Abel Braaksma |
Re: [xsl] XSL History, David Carlisle | Date | Re: [xsl] loop timing and result-do, Abel Braaksma |
Month |