Re: [xsl] Push Processing

Subject: Re: [xsl] Push Processing
From: Vyacheslav Sedov <vyacheslav.sedov@xxxxxxxxx>
Date: Tue, 3 Mar 2009 23:32:53 +0300
what about this case?

<xsl:variable name="ttt" as="element()"><ttt/></xsl:variable>
<xsl:template match="/*">
    <xsl:apply-templates select="(ttt, $ttt)[1]"></xsl:apply-templates>
</xsl:template>

On Mon, Mar 2, 2009 at 8:07 PM, Michael Kay <mike@xxxxxxxxxxxx> wrote:
>> Also, is there any real advantage to specifying
>> as="element()" other then readability/documentation?  You've
>> recently discussed the advantages of doing this for
>> non-element data types (e.g. numeric functions).  Are there
>> similar advantages for element()?
>>
>
> It's always a good idea to declare your parameter type.
>
> (a) readability/documentation is a worthwhile end in itself
>
> (b) if your code is wrong, you will typically get error messages that are
> close to the point of failure (rather than just wrong or blank output)
>
> (c) it gives the compiler extra information to work with, which can
> sometimes make a big difference to the optimizability of the code.
>
> Michael Kay
> http://www.saxonica.com/

Current Thread