| Nic Miloslav Example 33 | KEYWORDS EXAMPLES AUTHORS |
|---|
Stylesheet 1 and Stylesheet 3 demonstrate different ways of setting xsl:variable, Stylesheet 2 and Stylesheet 4 of setting xsl:param.
| XML | HOME XSL 1 XSL 2 XSL 3 XSL 4 |
|---|
| <xslTutorial > |
| <chapter>Chapter A</chapter> |
| <chapter>Chapter B</chapter> |
| <chapter>Chapter C</chapter> |
| <chapter>Chapter D</chapter> |
| </xslTutorial> |
| XSL 1 | HOME XML HTML 1 OUTPUT 1 |
|---|
| <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> |
| HTML 1 | HOME XML XSL 1 OUTPUT 1 |
|---|
| <HTML> |
| <HEAD> </HEAD> |
| <BODY> |
| <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> </BODY> </HTML> |
| OUTPUT 1 | HOME XML XSL 1 HTML 1 |
|---|
| Chapter A (1/4) |
| Chapter B (2/4) |
| Chapter C (3/4) |
| Chapter D (4/4) |
| XSL 2 | HOME XML HTML 2 OUTPUT 2 |
|---|
| <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> |
| HTML 2 | HOME XML XSL 2 OUTPUT 2 |
|---|
| <HTML> |
| <HEAD> </HEAD> |
| <BODY> |
| <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> </BODY> </HTML> |
| OUTPUT 2 | HOME XML XSL 2 HTML 2 |
|---|
| Chapter A (1/4) |
| Chapter B (2/4) |
| Chapter C (3/4) |
| Chapter D (4/4) |
| XSL 3 | HOME XML HTML 3 OUTPUT 3 |
|---|
| <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> |
| HTML 3 | HOME XML XSL 3 OUTPUT 3 |
|---|
| <HTML> |
| <HEAD> </HEAD> |
| <BODY> |
| <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> </BODY> </HTML> |
| OUTPUT 3 | HOME XML XSL 3 HTML 3 |
|---|
| Chapter A (1/4) |
| Chapter B (2/4) |
| Chapter C (3/4) |
| Chapter D (4/4) |
| XSL 4 | HOME XML HTML 4 OUTPUT 4 |
|---|
| <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> |
| HTML 4 | HOME XML XSL 4 OUTPUT 4 |
|---|
| <HTML> |
| <HEAD> </HEAD> |
| <BODY> |
| <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> </BODY> </HTML> |
| OUTPUT 4 | HOME XML XSL 4 HTML 4 |
|---|
| Chapter A (1/4) |
| Chapter B (2/4) |
| Chapter C (3/4) |
| Chapter D (4/4) |