| Nic Miloslav Example 16 | KEYWORDS EXAMPLES AUTHORS |
|---|
xsl:element generates elements in time of processing. Stylesheet 1 uses this feature, while Stylesheet 2 achieves the same effect in a different and laborous way.
| XML | HOME XSL 1 XSL 2 |
|---|
| <xslTutorial > |
| <text size="H1">Header1</text> |
| <text size="H3">Header3</text> |
| <text size="b">Bold text</text> |
| <text size="sub">Subscript</text> |
| <text size="sup">Superscript</text> |
| </xslTutorial> |
| XSL 1 | HOME XML HTML 1 OUTPUT 1 |
|---|
| <xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
| <xsl:template match="/"> |
| <xsl:for-each select="//text"> |
| <xsl:element name="{@size}"><xsl:value-of select="."/></xsl:element> |
| </xsl:for-each> |
| </xsl:template> |
| </xsl:stylesheet> |
| HTML 1 | HOME XML XSL 1 OUTPUT 1 |
|---|
| <HTML> |
| <HEAD> </HEAD> |
| <BODY> |
| <H1>Header1</H1> |
| <H3>Header3</H3> |
| <b>Bold text</b> |
| <sub>Subscript</sub> |
| <sup>Superscript</sup> </BODY> </HTML> |
| OUTPUT 1 | HOME XML XSL 1 HTML 1 |
|---|
| XSL 2 | HOME XML HTML 2 OUTPUT 2 |
|---|
| <xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
| <xsl:template match="/"> |
| <xsl:for-each select="//text"> |
| <xsl:choose> |
| <xsl:when test='@size="H1"'> |
| <H1><xsl:value-of select="."/></H1> |
| </xsl:when> |
| <xsl:when test='@size="H3"'> |
| <H3><xsl:value-of select="."/></H3> |
| </xsl:when> |
| <xsl:when test='@size="b"'> |
| <b><xsl:value-of select="."/></b> |
| </xsl:when> |
| <xsl:when test='@size="sub"'> |
| <sub><xsl:value-of select="."/></sub> |
| </xsl:when> |
| <xsl:when test='@size="sup"'> |
| <sup><xsl:value-of select="."/></sup> |
| </xsl:when> |
| </xsl:choose> |
| </xsl:for-each> |
| </xsl:template> |
| </xsl:stylesheet> |
| HTML 2 | HOME XML XSL 2 OUTPUT 2 |
|---|
| <HTML> |
| <HEAD> </HEAD> |
| <BODY> |
| <H1>Header1</H1> |
| <H3>Header3</H3> |
| <b>Bold text</b> |
| <sub>Subscript</sub> |
| <sup>Superscript</sup> </BODY> </HTML> |
| OUTPUT 2 | HOME XML XSL 2 HTML 2 |
|---|