English | Français | >> Deutsch << | Magyar | 中文 | Polski ZVON > Tutorials > XSLT Tutorial
>> Seite 32 << | Zurück | Vor | Inhalt | Element-Index

XSLT Stylesheet 1 und XSLT Stylesheet 3 zeigen verschiedene Wege xsl:variable zu setzen, XSLT Stylesheet 2 und XSLT Stylesheet 4 zeigt xsl:param benutzt wird.

XSLT Stylesheet 1

XML Quelltext
<source>

<chapter>Chapter A</chapter>
<chapter>Chapter B</chapter>
<chapter>Chapter C</chapter>
<chapter>Chapter D</chapter>

</source>

Ausgabe
<TABLE>
  <TR>
     <TD>Chapter A (1/4)</TD>
  </TR>
  <TR>
     <TD>Chapter B (2/4)</TD>
  </TR>
  <TR>
     <TD>Chapter C (3/4)</TD>
  </TR>
  <TR>
     <TD>Chapter D (4/4)</TD>
  </TR>
</TABLE>

HTML-Ansicht
Chapter A (1/4)
Chapter B (2/4)
Chapter C (3/4)
Chapter D (4/4)
XSLT Stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:variable name="totalChapters">
     <xsl:value-of select="count(//chapter)"/>
</xsl:variable>
<xsl:template match="/">
     <TABLE>
          <xsl:for-each select="//chapter">
               <TR>
                    <TD>
                         <xsl:value-of select="."/>
                         <xsl:text> (</xsl:text>
                         <xsl:value-of select="position()"/>
                         <xsl:text>/</xsl:text>
                         <xsl:value-of select="$totalChapters"/>
                         <xsl:text>)</xsl:text>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>


</xsl:stylesheet>


XSLT Stylesheet 2

XML Quelltext
<source>

<chapter>Chapter A</chapter>
<chapter>Chapter B</chapter>
<chapter>Chapter C</chapter>
<chapter>Chapter D</chapter>

</source>

Ausgabe
<TABLE>
  <TR>
     <TD>Chapter A (1/4)</TD>
  </TR>
  <TR>
     <TD>Chapter B (2/4)</TD>
  </TR>
  <TR>
     <TD>Chapter C (3/4)</TD>
  </TR>
  <TR>
     <TD>Chapter D (4/4)</TD>
  </TR>
</TABLE>

HTML-Ansicht
Chapter A (1/4)
Chapter B (2/4)
Chapter C (3/4)
Chapter D (4/4)
XSLT Stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:param name="totalChapters">
     <xsl:value-of select="count(//chapter)"/>
</xsl:param>
<xsl:template match="/">
     <TABLE>
          <xsl:for-each select="//chapter">
               <TR>
                    <TD>
                         <xsl:value-of select="."/>
                         <xsl:text> (</xsl:text>
                         <xsl:value-of select="position()"/>
                         <xsl:text>/</xsl:text>
                         <xsl:value-of select="$totalChapters"/>
                         <xsl:text>)</xsl:text>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>


</xsl:stylesheet>


XSLT Stylesheet 3

XML Quelltext
<source>

<chapter>Chapter A</chapter>
<chapter>Chapter B</chapter>
<chapter>Chapter C</chapter>
<chapter>Chapter D</chapter>

</source>

Ausgabe
<TABLE>
  <TR>
     <TD>Chapter A (1/4)</TD>
  </TR>
  <TR>
     <TD>Chapter B (2/4)</TD>
  </TR>
  <TR>
     <TD>Chapter C (3/4)</TD>
  </TR>
  <TR>
     <TD>Chapter D (4/4)</TD>
  </TR>
</TABLE>

HTML-Ansicht
Chapter A (1/4)
Chapter B (2/4)
Chapter C (3/4)
Chapter D (4/4)
XSLT Stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:variable name="totalChapters" select="count(//chapter)"/>
<xsl:template match="/">
     <TABLE>
          <xsl:for-each select="//chapter">
               <TR>
                    <TD>
                         <xsl:value-of select="."/>
                         <xsl:text> (</xsl:text>
                         <xsl:value-of select="position()"/>
                         <xsl:text>/</xsl:text>
                         <xsl:value-of select="$totalChapters"/>
                         <xsl:text>)</xsl:text>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>


</xsl:stylesheet>


XSLT Stylesheet 4

XML Quelltext
<source>

<chapter>Chapter A</chapter>
<chapter>Chapter B</chapter>
<chapter>Chapter C</chapter>
<chapter>Chapter D</chapter>

</source>

Ausgabe
<TABLE>
  <TR>
     <TD>Chapter A (1/4)</TD>
  </TR>
  <TR>
     <TD>Chapter B (2/4)</TD>
  </TR>
  <TR>
     <TD>Chapter C (3/4)</TD>
  </TR>
  <TR>
     <TD>Chapter D (4/4)</TD>
  </TR>
</TABLE>

HTML-Ansicht
Chapter A (1/4)
Chapter B (2/4)
Chapter C (3/4)
Chapter D (4/4)
XSLT Stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:param name="totalChapters" select="count(//chapter)"/>
<xsl:template match="/">
     <TABLE>
          <xsl:for-each select="//chapter">
               <TR>
                    <TD>
                         <xsl:value-of select="."/>
                         <xsl:text> (</xsl:text>
                         <xsl:value-of select="position()"/>
                         <xsl:text>/</xsl:text>
                         <xsl:value-of select="$totalChapters"/>
                         <xsl:text>)</xsl:text>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>


</xsl:stylesheet>