Re: [xsl] How do I do this?

Subject: Re: [xsl] How do I do this?
From: Mike Brown <mike@xxxxxxxx>
Date: Wed, 21 Aug 2002 14:40:54 -0600 (MDT)
Wendell Piez wrote:
> Soumen,
> 
> It would be easier if instead of a "for-each" instruction, you simply had 
> an <xsl:apply-templates/> there and then a template specifically for the 
> <param/> elements, as in:
> 
> <xsl:template match="param">
>    <xsl:text>{</xsl:text>
>    <xsl:number/>
>    <xsl:text>}</xsl:text>
> </xsl:template>

Oh yeah, xsl:number :) But I think he wants numbering to start at zero.

By the way, why does adding format="{{1}}" produce the number enclosed in
single curly braces unless the number is 0, while format="{1}" seems to be no
different than format="1"? format="[1]" works as expected, so what rule in the 
spec am I overlooking?

And why is <xsl:number/> treated differently
than <xsl:number value="position()"/> (at least with Saxon)?
I thought value="position()" was the default.

The spec says "If no value attribute is specified, xsl:number determines a
sequence number based on the position of the curent node in the source
document", which I think is rather ambiguous since a current node has no
position except with respect to the current node list. XSLT 2.0 currently says
"...based on the position of the context node within its containing document" 
which is no more helpful.

   - Mike
____________________________________________________________________________
  mike j. brown                   |  xml/xslt: http://skew.org/xml/
  denver/boulder, colorado, usa   |  resume: http://skew.org/~mike/resume/

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread