Hello,
I'm stuck with this again.:)
2. I want to do a number like <xsl:number level="any"
count="productId"/>. However, I only want to get the xsl:number for
productId that has publisher of "NETg" or "Wave".
For this, you need to change the XPath pattern that is used in the @count
attribute of xsl:number. An XPath resource could help you teach yourself to
formulate that productId[publisher='NETg' or publisher='Wave'] would be a
start (but that there are also other, more sophisticated ways).
After I changed to <xsl:number level="any" count="productId[publisher='NETg' or
publisher='Wave']"/> or
<xsl:number level="any" count="//productId[publisher='NETg' or
publisher='Wave']"/>, only productId 5 is displayed on my Excel spreadsheet. 5
is the last product in the xml tree. Why is that? Please see my xml and
stylesheet below:
=========================================================
<?xml version="1.0"?>
<solution>
<product>
<productId>1</productId>
<publisher>NETg</publisher>
</product>
<product>
<productId>2</productId>
<publisher>Wave</publisher>
</product>
<program>
<product>
<productId>3</productId>
<publisher>Course</publisher>
</product>
<product>
<productId>4</productId>
<publisher>Wave</publisher>
</product>
</program>
<product>
<productId>5</productId>
<publisher>NETg</publisher>
</product>
</solution>
===============================================================
<?xml version="1.0"?>
<!-- CVS $Id: page2xls.xsl,v 1.2 2003/05/07 04:57:13 vgritsenko Exp $ -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:sql="http://apache.org/cocoon/SQL/2.0"
xmlns:gmr="http://www.gnome.org/gnumeric/v7" >
<xsl:param name="view-source"/>
<xsl:template match="solution">
<gmr:Workbook xmlns:gmr="http://www.gnome.org/gnumeric/v7">
<gmr:Sheets>
<gmr:Sheet DisplayFormulas="false" HideZero="false" HideGrid="false"
HideColHeader="false" HideRowHeader="false" DisplayOutlines="true"
OutlineSymbolsBelow="true" OutlineSymbolsRight="true">
<gmr:Name><xsl:value-of select="title"/></gmr:Name>
<gmr:MaxCol>2</gmr:MaxCol>
<gmr:Cols DefaultSizePts="48">
<gmr:ColInfo No="0" Unit="48" MarginA="2" MarginB="2"
Count="7"/>
</gmr:Cols>
<gmr:Rows DefaultSizePts="12.8">
<gmr:RowInfo No="0" Unit="12.8" MarginA="0" MarginB="0"
Count="9"/>
<gmr:RowInfo No="10" Unit="12.8" MarginA="1"
MarginB="0" Count="24"/>
</gmr:Rows>
<gmr:Cells>
<xsl:apply-templates/>
</gmr:Cells>
</gmr:Sheet>
</gmr:Sheets>
</gmr:Workbook>
</xsl:template>
<xsl:template match="content">
<xsl:apply-templates/>
</xsl:template>
<! HERE IS WHERE I DO THE LOOP OF THE PRODUCTID -->
<xsl:template match="productId">
<gmr:Cell Col="0" ValueType="60">
<xsl:variable name="rownumber"><xsl:number level="any"
count="//productId[publisher='Wave' or publisher='NETg']"/></xsl:variable>
<xsl:attribute name="Row">
<xsl:value-of select="$rownumber"/>
</xsl:attribute>
<gmr:Content>
<xsl:apply-templates/>
</gmr:Content>
</gmr:Cell>
</xsl:template>
</xsl:stylesheet>
Thanks!
Charlene
-----Original Message-----
From: Wendell Piez [mailto:wapiez(_at_)mulberrytech(_dot_)com]
Sent: Wednesday, June 18, 2003 5:29 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] xsl:number problem
Charlene,
At 04:19 PM 6/18/2003, you wrote:
2. I want to do a number like <xsl:number level="any"
count="productId"/>. However, I only want to get the xsl:number for
productId that has publisher of "NETg" or "Wave".
For this, you need to change the XPath pattern that is used in the @count
attribute of xsl:number. An XPath resource could help you teach yourself to
formulate that productId[publisher='NETg' or publisher='Wave'] would be a
start (but that there are also other, more sophisticated ways).
3. Same question is for count(//productId). How can I do a count of
productId that has publisher of "NETg" or "Wave"?
Same: count(//productId[publisher='NETg']) and so forth.
Learn XPath, you can't write XSLT without it.
Cheers,
Wendell
___&&__&_&___&_&__&&&__&_&__&__&&____&&_&___&__&_&&_____&__&__&&_____&_&&_
"Thus I make my own use of the telegraph, without consulting
the directors, like the sparrows, which I perceive use it
extensively for a perch." -- Thoreau
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list