Subject: Re: [xsl] xslt 3.0 possible feature - some sort of collection to help when streaming From: Michael Kay <mike@xxxxxxxxxxxx> Date: Fri, 11 Mar 2011 00:14:11 +0000 |
Michael Kay Saxonica
Hi,
Often we 'hack' xsl:message to output some information to post process later, and it struck me that it would be useful to have a way of accessing what has been sent to xsl:message during the same transform. This would be especially useful when streaming, as processing the data twice for different purposes is less than ideal.
For example, you for-each over some data but want to also do something with @names later:
<xsl:for-each select="/millions/and/millions">
[ process each item ]
<xsl:message select="concat('Processed ', @name)"/> </xsl:for-each>
then later in the same template, say to create an index or list of links:
<xsl:for-each select="get-messages()"> [ process the items stored earlier 'Processed name1' , 'Processed name2' etc ]
Is there anything conceptually wrong with this, other than the non-guaranteed order of processing? If not, then it could be a proper instruction rather than xsl:message, eg a top-level element to set it up:
<xsl:appender name="someAppender" option1="foo" option2="bar"/>
with:
<xsl:append name="someAppender"> text to append</xsl:append>
and then to access it:
get-appender('someAppender')
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] xslt 3.0 possible feature, Wendell Piez | Thread | [xsl] Re: xslt 3.0 possible feature, Vladimir Nesterovsky |
Re: [xsl] xslt 3.0 possible feature, Wendell Piez | Date | [xsl] Re: xslt 3.0 possible feature, Vladimir Nesterovsky |
Month |