[xquery-talk] fn:transform running with default call-template invocation - no result-documents created
Ihe Onwuka
ihe.onwuka at gmail.com
Thu Feb 11 11:23:07 PST 2021
Interesting. fn:transform overrides the side effects in the invoked
transform and returns them as a map of result documents.
Mba Mba Mba Mba (that's for Uche).
Not what I wanted or would expect.
On Thu, Feb 11, 2021 at 12:35 PM Ihe Onwuka <ihe.onwuka at gmail.com> wrote:
> Posted on SO. It happens on Saxon 10.3 btw.
>
>
> https://stackoverflow.com/questions/66159827/fntransform-running-with-default-call-template-invocation-no-result-documents
>
> On Thu, Feb 11, 2021 at 9:27 AM Ihe Onwuka <ihe.onwuka at gmail.com> wrote:
>
>> This transform test.xsl copies (for the purpose of a small test example)
>> a directory of XML data by calling an identity transform for each
>> recursively encountered XML file.
>>
>> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xmlns:xs="http://www.w3.org/2001/XMLSchema"
>> xmlns:fn="http://www.w3.org/2005/xpath-functions"
>> xmlns:map="http://www.w3.org/2005/xpath-functions/map"
>> version="3.0" exclude-result-prefixes="xsi fn xs map" expand-text="yes">
>> <xsl:output method="xml" indent="yes"/>
>> <xsl:strip-space elements="*"/>
>>
>> <xsl:variable name="currentStylesheet" as="document-node()"
>> select="doc('identity.xsl')"/>
>> <xsl:template name="xsl:initial-template">
>> <xsl:for-each
>> select="collection('file:///mnt/c/home/oneD/data/translatable' ||
>> '?select=*.xml;recurse=yes')">
>> <xsl:result-document
>> href="{replace(document-uri(),'/data/translatable/','/translated/')}">
>> <xsl:sequence select=" fn:transform(map {
>> 'stylesheet-node' :
>> $currentStylesheet,
>> 'source-node' : .
>> })?output"/>
>> </xsl:result-document>
>> </xsl:for-each>
>> </xsl:template>
>> </xsl:stylesheet>
>>
>> However if I invoke it from XQuery with fn:transform like so
>>
>> xquery version "3.1";
>> fn:transform(map { 'stylesheet-node' : doc('test.xsl')})?output
>>
>> none of the result-documents are created.
>>
>> Is there something wrong with the invoking XQuery? I have never before
>> tried this so it is my best attempt from reading the docs.
>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://x-query.com/pipermail/talk/attachments/20210211/92a3e8bc/attachment.html>
More information about the talk
mailing list