English | Français | Deutsch | Magyar | >> 中文 << | Polski | ZVON > Tutorials > XSLT Tutorial |
介绍 / 搜索 / ZVON |
>> 页 9 << | 上一条 | 下一条 | 目录 | 元素索引 |
XML源码
<source> <AAA id="a1" pos="start"> <BBB id="b1"/> <BBB id="b2"/> </AAA> <AAA id="a2"> <BBB id="b3"/> <BBB id="b4"/> <CCC id="c1"> <DDD id="d1"/> </CCC> <BBB id="b5"> <CCC id="c2"/> </BBB> </AAA> </source> 输出
<div style="color:purple">BBB id=b1</div> <div style="color:purple">BBB id=b2</div> <div style="color:purple">BBB id=b3</div> <div style="color:purple">BBB id=b4</div> <div style="color:purple">BBB id=b5</div> <div style="color:red">CCC id=c1</div> <div style="color:red">CCC id=c2</div> <div style="color:blue">DDD id=d1</div> <div style="color:navy">AAA id=a1</div> <div style="color:navy">AAA id=a2</div> 用HTML察看
BBB id=b1
BBB id=b2
BBB id=b3
BBB id=b4
BBB id=b5
CCC id=c1
CCC id=c2
DDD id=d1
AAA id=a1
AAA id=a2 |
XSLT stylesheet
<xsl:stylesheet version = '1.0'
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> <xsl:template match="/"> <xsl:apply-templates select="//BBB"/> <xsl:apply-templates select="//CCC"/> <xsl:apply-templates select="//DDD"/> <xsl:apply-templates select="//AAA"/> </xsl:template> <xsl:template match="AAA"> <div style="color:navy"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> <xsl:template match="BBB"> <div style="color:purple"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> <xsl:template match="CCC"> <div style="color:red"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> <xsl:template match="DDD"> <div style="color:blue"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> </xsl:stylesheet> |
XML源码
<source> <AAA id="a1" pos="start"> <BBB id="b1"/> <BBB id="b2"/> </AAA> <AAA id="a2"> <BBB id="b3"/> <BBB id="b4"/> <CCC id="c1"> <DDD id="d1"/> </CCC> <BBB id="b5"> <CCC id="c2"/> </BBB> </AAA> </source> 输出
<div style="color:red">CCC id=c1</div> <div style="color:red">CCC id=c2</div> <div style="color:red">CCC id=c2</div> 用HTML察看
CCC id=c1
CCC id=c2
CCC id=c2 |
XSLT stylesheet
<xsl:stylesheet version = '1.0'
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> <xsl:template match="/"> <xsl:apply-templates select="/source/AAA//CCC"/> <xsl:apply-templates select="/source//AAA/BBB//*"/> </xsl:template> <xsl:template match="AAA"> <div style="color:navy"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> <xsl:template match="BBB"> <div style="color:purple"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> <xsl:template match="CCC"> <div style="color:red"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> <xsl:template match="DDD"> <div style="color:blue"> <xsl:value-of select="name()"/> <xsl:text> id=</xsl:text> <xsl:value-of select="@id"/> </div> </xsl:template> </xsl:stylesheet> |