<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Xslt</title>
        <link>http://blogs.ugidotnet.org/NetArt/category/Xslt.aspx</link>
        <description>Xslt</description>
        <language>it-IT</language>
        <copyright>Gabriele Gaggi</copyright>
        <generator>Subtext Version 2.6.0.0</generator>
        <item>
            <title>XSLT: reperire la data corrente</title>
            <link>http://blogs.ugidotnet.org/NetArt/archive/2005/03/03/11710.aspx</link>
            <description>
Come&amp;nbsp;reperire la data corrente in Xslt?
Come sempre quando vogliamo fare cose esoteriche in Xslt dobbiamo chiamare in soccorso Javascript:
&amp;lt;msxsl:script&amp;nbsp;language="JScript"&amp;nbsp;implements-prefix="user"&amp;gt;&amp;lt;![CDATA[function&amp;nbsp;GetCurrentDate(){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;today&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Date();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;day&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;nbsp;today.getDate();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;month&amp;nbsp;=&amp;nbsp;today.getMonth()&amp;nbsp;+&amp;nbsp;1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(day&amp;nbsp;&amp;lt;&amp;nbsp;10)&amp;nbsp;&amp;nbsp;&amp;nbsp;day&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;nbsp;"0"&amp;nbsp;+&amp;nbsp;day;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(month&amp;nbsp;&amp;lt;&amp;nbsp;10)&amp;nbsp;month&amp;nbsp;=&amp;nbsp;"0"&amp;nbsp;+&amp;nbsp;month;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&amp;nbsp;day&amp;nbsp;+&amp;nbsp;"/"&amp;nbsp;+&amp;nbsp;month&amp;nbsp;+&amp;nbsp;"/"+&amp;nbsp;today.getFullYear();}]]&amp;gt;&amp;lt;/msxsl:script&amp;gt;
A questo punto come sempre in Xslt scriviamo:
&amp;lt;xsl:variable&amp;nbsp;name="Data"&amp;nbsp;select="user:GetCurrentDate()"/&amp;gt;
E nella variabile $Data ci ritroviamo la data corrente. Da non dimenticare in testa all'xslt l'inclusione dei due namespace aggiuntivi:
xmlns:msxsl="urn:schemas-microsoft-com:xslt"xmlns:user="urn:user-namespace-here"
Google's Words: Current Date Xslt
powered by IMHO 1.2 with Emoticon Formatter&lt;img src="http://blogs.ugidotnet.org/NetArt/aggbug/11710.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gabriele Gaggi</dc:creator>
            <guid>http://blogs.ugidotnet.org/NetArt/archive/2005/03/03/11710.aspx</guid>
            <pubDate>Thu, 03 Mar 2005 13:27:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/NetArt/archive/2005/03/03/11710.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/NetArt/comments/commentRss/11710.aspx</wfw:commentRss>
        </item>
        <item>
            <title>XSLT: Il nodo esiste?</title>
            <link>http://blogs.ugidotnet.org/NetArt/archive/2005/03/03/11705.aspx</link>
            <description>
Come accertarsi dell'esistenza di uno specifico nodo:
&amp;lt;xsl:choose&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:when&amp;nbsp;test="NodeName"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Exists&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:when&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:otherwise&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Not&amp;nbsp;Exists&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:otherwise&amp;gt;&amp;lt;/xsl:choose&amp;gt;
Google's Words: Node exists xslt
powered by IMHO 1.2 with Emoticon Formatter&lt;img src="http://blogs.ugidotnet.org/NetArt/aggbug/11705.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gabriele Gaggi</dc:creator>
            <guid>http://blogs.ugidotnet.org/NetArt/archive/2005/03/03/11705.aspx</guid>
            <pubDate>Thu, 03 Mar 2005 11:48:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/NetArt/archive/2005/03/03/11705.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/NetArt/comments/commentRss/11705.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Xslt: Righe di colore alternato in una tabella</title>
            <link>http://blogs.ugidotnet.org/NetArt/archive/2005/02/25/11484.aspx</link>
            <description>
Questa &amp;#232; banale ma ogni volta devo andare a riguardarmela. Inoltre avevo gi&amp;#224; scritto qualche cosa di analogo per reporting services, quindi ci stava bene anche per Xslt .
Torniamo al problema: come alternare il colore delle righe di una tabella in Xslt?
Prendiamo come esempio il solito xml:
&amp;lt;?xml&amp;nbsp;version="1.0"&amp;nbsp;encoding="UTF-8"?&amp;gt;&amp;lt;rubrica&amp;gt;&amp;lt;persona&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Nome&amp;gt;Mario&amp;lt;/Nome&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Cognome&amp;gt;Rossi&amp;lt;/Cognome&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Telefono&amp;gt;1213243252345&amp;lt;/Telefono&amp;gt;&amp;lt;/persona&amp;gt;&amp;lt;persona&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Nome&amp;gt;Antonio&amp;lt;/Nome&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Cognome&amp;gt;Bianchi&amp;lt;/Cognome&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Telefono&amp;gt;1213243252345&amp;lt;/Telefono&amp;gt;&amp;lt;/persona&amp;gt;&amp;lt;/rubrica&amp;gt;
Ed ecco l'esempio in Xslt sfruttando il tag xsl:attribute:
&amp;lt;xsl:stylesheet&amp;nbsp;version="1.0"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xs="http://www.w3.org/2001/XMLSchema"&amp;gt;&amp;lt;xsl:template&amp;nbsp;match="/"&amp;gt;&amp;lt;html&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;body&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:for-each&amp;nbsp;select="//rubrica"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;table&amp;nbsp;border="1"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:for-each&amp;nbsp;select="persona"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:attribute&amp;nbsp;name="style"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:choose&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:when&amp;nbsp;test="position()&amp;nbsp;mod&amp;nbsp;2&amp;nbsp;=&amp;nbsp;0"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-color:silver;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:when&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:otherwise&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-color:#EFEFEF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:otherwise&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:choose&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:attribute&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;xsl:value-of&amp;nbsp;select="Nome"&amp;nbsp;/&amp;gt;&amp;lt;/td&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;xsl:value-of&amp;nbsp;select="Cognome"&amp;nbsp;/&amp;gt;&amp;lt;/td&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;xsl:value-of&amp;nbsp;select="Telefono"&amp;nbsp;/&amp;gt;&amp;lt;/td&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/tr&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:for-each&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/table&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:for-each&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;lt;/xsl:template&amp;gt;&amp;lt;/xsl:stylesheet&amp;gt;
That's all folks&amp;nbsp;
Google's Words: alternate color odd even background-color xslt
powered by IMHO 1.2 with Emoticon Formatter&lt;img src="http://blogs.ugidotnet.org/NetArt/aggbug/11484.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gabriele Gaggi</dc:creator>
            <guid>http://blogs.ugidotnet.org/NetArt/archive/2005/02/25/11484.aspx</guid>
            <pubDate>Fri, 25 Feb 2005 14:51:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/NetArt/archive/2005/02/25/11484.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/NetArt/comments/commentRss/11484.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Paginazione in Xslt</title>
            <link>http://blogs.ugidotnet.org/NetArt/archive/2005/02/08/10444.aspx</link>
            <description>
Supponiamo di avere l'esigenza di gestire la paginazione 
in fase di stampa attraverso un Xslt. Questo significa gestire il cambio pagina a seguito 
di un determinato numero di righe stampate.
Per gestire questa funzionalità attraverso l'html&amp;nbsp;dobbiamo utilizzare i 
fogli di stile per&amp;nbsp;creare una classe che effettui il cambio pagina:
@media&amp;nbsp;print&amp;nbsp;{.break&amp;nbsp;{page-break-before:always;}}
Qui viene il difficile: decidere quando è il 
momento di cambiare pagina. Dobbiamo utilizzare&amp;nbsp;del&amp;nbsp;javascript all'interno del nostro xslt che 
tenga traccia del numero di righe 
stampate:
&amp;lt;msxsl:script&amp;nbsp;language="JScript"&amp;nbsp;implements-prefix="user"&amp;gt;&amp;lt;![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;counter&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;resetCounter()&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;counter&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;incCounter(){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;counter++&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;getCounter(){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;counter;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}]]&amp;gt;&amp;lt;/msxsl:script&amp;gt;

All'interno dell'xslt potremo 
prelevare/incrementare/resettare il contatore nel seguente modo:
&amp;lt;xsl:variable&amp;nbsp;name="counter"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;select="user:getCounter()"/&amp;gt;&amp;lt;xsl:variable&amp;nbsp;name="incrementa"&amp;nbsp;select="user:incCounter()"/&amp;gt;&amp;lt;xsl:variable&amp;nbsp;name="res"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;select="user:resetCounter()"/&amp;gt;
Quindi vediamo un esempio completo, l'xml da trasformare:
&amp;lt;?xml&amp;nbsp;version="1.0"&amp;nbsp;encoding="UTF-8"?&amp;gt;&amp;lt;rubrica&amp;gt;&amp;lt;!--&amp;nbsp;Per&amp;nbsp;verificare&amp;nbsp;il&amp;nbsp;corretto&amp;nbsp;funzionamento&amp;nbsp;della&amp;nbsp;paginazione&amp;nbsp;&amp;nbsp;--&amp;nbsp;creare&amp;nbsp;più&amp;nbsp;elementi&amp;nbsp;persona&amp;nbsp;--&amp;gt;&amp;lt;persona&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Nome&amp;gt;Mario&amp;lt;/Nome&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Cognome&amp;gt;Rossi&amp;lt;/Cognome&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Telefono&amp;gt;1213243252345&amp;lt;/Telefono&amp;gt;&amp;lt;/persona&amp;gt;&amp;lt;/rubrica&amp;gt;
L'xslt che gestisce la paginazione:
&amp;lt;?xml&amp;nbsp;version="1.0"&amp;nbsp;encoding="UTF-8"?&amp;gt;&amp;lt;xsl:stylesheet&amp;nbsp;version="1.0"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xs="http://www.w3.org/2001/XMLSchema"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:msxsl="urn:schemas-microsoft-com:xslt"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:user="urn:user-namespace-here"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;msxsl:script&amp;nbsp;language="JScript"&amp;nbsp;implements-prefix="user"&amp;gt;&amp;lt;![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;counter&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;resetCounter()&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;counter&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;incCounter(){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;counter++&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;getCounter(){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;counter;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}]]&amp;gt;&amp;lt;/msxsl:script&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:variable&amp;nbsp;name="RowForPage"&amp;gt;40&amp;lt;/xsl:variable&amp;gt;&amp;lt;xsl:template&amp;nbsp;match="/"&amp;gt;&amp;lt;html&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;body&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;head&amp;gt;&amp;lt;style&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@media&amp;nbsp;print&amp;nbsp;{.break&amp;nbsp;{page-break-before:always;}}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/style&amp;gt;&amp;lt;/head&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:for-each&amp;nbsp;select="//rubrica"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;table&amp;nbsp;border="1"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:for-each&amp;nbsp;select="persona"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:variable&amp;nbsp;name="counter"&amp;nbsp;select="user:getCounter()"/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:if&amp;nbsp;test="$counter&amp;nbsp;&amp;amp;gt;&amp;nbsp;$RowForPage"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:variable&amp;nbsp;name="res"&amp;nbsp;select="user:resetCounter()"/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:text&amp;nbsp;disable-output-escaping="yes"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/table&amp;gt;&amp;lt;div&amp;nbsp;class="break"&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;table&amp;nbsp;&amp;nbsp;border="1"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;]]&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:text&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:if&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;xsl:value-of&amp;nbsp;select="Nome"&amp;nbsp;/&amp;gt;&amp;lt;/td&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;xsl:value-of&amp;nbsp;select="Cognome"&amp;nbsp;/&amp;gt;&amp;lt;/td&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;xsl:value-of&amp;nbsp;select="Telefono"&amp;nbsp;/&amp;gt;&amp;lt;/td&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/tr&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;xsl:variable&amp;nbsp;name="incrementa"&amp;nbsp;select="user:incCounter()"/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:for-each&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/table&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/xsl:for-each&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;lt;/xsl:template&amp;gt;&amp;lt;/xsl:stylesheet&amp;gt;
Questa è la soluzione che ho trovato. Non è certamente 
l'unica e forse nemmeno la migliore.
E' ovvio che sono ben accetti commenti ed eventuali suggerimenti. 
powered by IMHO 1.2 with Emoticon Formatter&lt;img src="http://blogs.ugidotnet.org/NetArt/aggbug/10444.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gabriele Gaggi</dc:creator>
            <guid>http://blogs.ugidotnet.org/NetArt/archive/2005/02/08/10444.aspx</guid>
            <pubDate>Tue, 08 Feb 2005 10:38:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/NetArt/archive/2005/02/08/10444.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/NetArt/comments/commentRss/10444.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>