Subject: Re: [xsl] [Accumulators] Another stupid question From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Wed, 7 Oct 2020 07:45:42 -0000 |
Now I wonder whether nevertheless the sample shows that the accumulator wrongly did not fire for the parentless element.
A shorter test case is
<?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:accumulator name="a1" as="xs:string" initial-value="'init'"> <xsl:accumulator-rule match="foo" select="$value || ', matched ' || path()"/> </xsl:accumulator>
<xsl:param name="p1"> <foo/> </xsl:param>
<xsl:param name="p2" as="element(foo)"> <foo/> </xsl:param>
<xsl:template name="xsl:initial-template"> <xsl:apply-templates select="$p1/node(), $p2"/> </xsl:template>
<xsl:template match="foo"> <foo-processed accumulator-value="{accumulator-before('a1')}" root="{node-name(root())}"/> </xsl:template>
</xsl:stylesheet>
when run with Saxon 10.2 HE with option -it it outputs
<?xml version="1.0" encoding="UTF-8"?><foo-processed accumulator-value="init, matched /Q{}foo[1]" root=""/><foo-processed accumulator-value="init" root="foo"/>
Shouldn't the rule for `foo` elements be applied as well to the parentless `foo` and therefore it should have an accumulator-before value different from the "init" initial value?
<?xml version="1.0" encoding="UTF-8"?><foo-processed accumulator-value="init, matched /Q{}foo[1]" root=""/><foo-processed accumulator-value="init, matched /Q{}foo[1]" root="foo"/>
so there the parentless foo is matched by the accumulator (although I am not sure the value returned by "path()" is the right one for a parentless node).
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] [Accumulators] Another st, Martin Honnen martin | Thread | Re: [xsl] [Accumulators] Another st, Christophe Marchand |
Re: [xsl] [Accumulators] Another st, Christophe Marchand | Date | [xsl] Ungready Flag on Regex, Christophe Marchand |
Month |