Nic Miloslav Example 58 | KEYWORDS EXAMPLES AUTHORS |
---|
Axes play a very important role in XSLT. Study following examples and click on the name of each axis to get some insight. Links to preceding and namespace axis does not work yet as they were not implemented in XT so far.Compare: child axis (Stylesheet 1), descendant axis (Stylesheet 2), parent axis (Stylesheet 3), ancestor axis (Stylesheet 4), following-sibling axis (Stylesheet 5), preceding-sibling axis (Stylesheet 6), following axis (Stylesheet 7), preceding axis (Stylesheet 8), attribute axis (Stylesheet 9), namespace axis (Stylesheet 10), self axis (Stylesheet 11), descendant-or-self axis (Stylesheet 12), ancestor-or-self axis (Stylesheet 13).
XML | HOME XSL 1 XSL 2 XSL 3 XSL 4 XSL 5 XSL 6 XSL 7 XSL 8 XSL 9 XSL 10 XSL 11 XSL 12 XSL 13 |
---|
<xslTutorial > |
<AAA id='a1' pos='start'> |
<BBB id='b1'/> |
<BBB id='b2'/> |
</AAA> |
<AAA id='a2'> |
<BBB id='b3'/> |
<BBB id='b4'/> |
<CCC id='c1'> |
<CCC id='c2'/> |
</CCC> |
<BBB id='b5'> |
<CCC id='c3'/> |
</BBB> |
</AAA> |
</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="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: child</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="child::*"> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 1 | HOME XML XSL 1 OUTPUT 1 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: child</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>b1 b2 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD/></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>b3 b4 c1 b5 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD/></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>c2 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>c3 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD/></TR></TABLE> |
OUTPUT 1 | HOME XML XSL 1 HTML 1 |
---|
Axis: child | |
---|---|
Element | Node-set |
AAA id = a1 | b1 b2 |
BBB id = b1 | |
BBB id = b2 | |
AAA id = a2 | b3 b4 c1 b5 |
BBB id = b3 | |
BBB id = b4 | |
CCC id = c1 | c2 |
CCC id = c2 | |
BBB id = b5 | c3 |
CCC id = c3 |
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="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: descendant</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="descendant::*"> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 2 | HOME XML XSL 2 OUTPUT 2 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: descendant</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>b1 b2 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD/></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>b3 b4 c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD/></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>c2 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>c3 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD/></TR></TABLE> |
OUTPUT 2 | HOME XML XSL 2 HTML 2 |
---|
Axis: descendant | |
---|---|
Element | Node-set |
AAA id = a1 | b1 b2 |
BBB id = b1 | |
BBB id = b2 | |
AAA id = a2 | b3 b4 c1 c2 b5 c3 |
BBB id = b3 | |
BBB id = b4 | |
CCC id = c1 | c2 |
CCC id = c2 | |
BBB id = b5 | c3 |
CCC id = c3 |
XSL 3 | HOME XML HTML 3 OUTPUT 3 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: parent</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="parent::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 3 | HOME XML XSL 3 OUTPUT 3 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: parent</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>xslTutorial </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>a1 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>a1 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>xslTutorial </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>a2 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>a2 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>a2 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>c1 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>a2 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>b5 </TD></TR></TABLE> |
OUTPUT 3 | HOME XML XSL 3 HTML 3 |
---|
Axis: parent | |
---|---|
Element | Node-set |
AAA id = a1 | xslTutorial |
BBB id = b1 | a1 |
BBB id = b2 | a1 |
AAA id = a2 | xslTutorial |
BBB id = b3 | a2 |
BBB id = b4 | a2 |
CCC id = c1 | a2 |
CCC id = c2 | c1 |
BBB id = b5 | a2 |
CCC id = c3 | b5 |
XSL 4 | HOME XML HTML 4 OUTPUT 4 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: ancestor</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="ancestor::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 4 | HOME XML XSL 4 OUTPUT 4 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: ancestor</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>xslTutorial </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>xslTutorial a1 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>xslTutorial a1 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>xslTutorial </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>xslTutorial a2 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>xslTutorial a2 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>xslTutorial a2 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>xslTutorial a2 c1 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>xslTutorial a2 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>xslTutorial a2 b5 </TD></TR></TABLE> |
OUTPUT 4 | HOME XML XSL 4 HTML 4 |
---|
Axis: ancestor | |
---|---|
Element | Node-set |
AAA id = a1 | xslTutorial |
BBB id = b1 | xslTutorial a1 |
BBB id = b2 | xslTutorial a1 |
AAA id = a2 | xslTutorial |
BBB id = b3 | xslTutorial a2 |
BBB id = b4 | xslTutorial a2 |
CCC id = c1 | xslTutorial a2 |
CCC id = c2 | xslTutorial a2 c1 |
BBB id = b5 | xslTutorial a2 |
CCC id = c3 | xslTutorial a2 b5 |
XSL 5 | HOME XML HTML 5 OUTPUT 5 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: following-sibling</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="following-sibling::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 5 | HOME XML XSL 5 OUTPUT 5 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: following-sibling</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>a2 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>b2 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD/></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>b4 c1 b5 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>c1 b5 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>b5 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD/></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD/></TR></TABLE> |
OUTPUT 5 | HOME XML XSL 5 HTML 5 |
---|
Axis: following-sibling | |
---|---|
Element | Node-set |
AAA id = a1 | a2 |
BBB id = b1 | b2 |
BBB id = b2 | |
AAA id = a2 | |
BBB id = b3 | b4 c1 b5 |
BBB id = b4 | c1 b5 |
CCC id = c1 | b5 |
CCC id = c2 | |
BBB id = b5 | |
CCC id = c3 |
XSL 6 | HOME XML HTML 6 OUTPUT 6 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: preceding-sibling</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="preceding-sibling::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 6 | HOME XML XSL 6 OUTPUT 6 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: preceding-sibling</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>b1 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>a1 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>b3 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>b3 b4 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>b3 b4 c1 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD/></TR></TABLE> |
OUTPUT 6 | HOME XML XSL 6 HTML 6 |
---|
Axis: preceding-sibling | |
---|---|
Element | Node-set |
AAA id = a1 | |
BBB id = b1 | |
BBB id = b2 | b1 |
AAA id = a2 | a1 |
BBB id = b3 | |
BBB id = b4 | b3 |
CCC id = c1 | b3 b4 |
CCC id = c2 | |
BBB id = b5 | b3 b4 c1 |
CCC id = c3 |
XSL 7 | HOME XML HTML 7 OUTPUT 7 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: following</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="following::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 7 | HOME XML XSL 7 OUTPUT 7 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: following</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>a2 b3 b4 c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>b2 a2 b3 b4 c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>a2 b3 b4 c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>b4 c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>b5 c3 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>b5 c3 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD/></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD/></TR></TABLE> |
OUTPUT 7 | HOME XML XSL 7 HTML 7 |
---|
Axis: following | |
---|---|
Element | Node-set |
AAA id = a1 | a2 b3 b4 c1 c2 b5 c3 |
BBB id = b1 | b2 a2 b3 b4 c1 c2 b5 c3 |
BBB id = b2 | a2 b3 b4 c1 c2 b5 c3 |
AAA id = a2 | |
BBB id = b3 | b4 c1 c2 b5 c3 |
BBB id = b4 | c1 c2 b5 c3 |
CCC id = c1 | b5 c3 |
CCC id = c2 | b5 c3 |
BBB id = b5 | |
CCC id = c3 |
XSL 8 | HOME XML HTML 8 OUTPUT 8 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: preceding</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="preceding::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 8 | HOME XML XSL 8 OUTPUT 8 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: preceding</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD/></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>b1 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>a1 b1 b2 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>a1 b1 b2 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>a1 b1 b2 b3 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>a1 b1 b2 b3 b4 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>a1 b1 b2 b3 b4 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>a1 b1 b2 b3 b4 c1 c2 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>a1 b1 b2 b3 b4 c1 c2 </TD></TR></TABLE> |
OUTPUT 8 | HOME XML XSL 8 HTML 8 |
---|
Axis: preceding | |
---|---|
Element | Node-set |
AAA id = a1 | |
BBB id = b1 | |
BBB id = b2 | b1 |
AAA id = a2 | a1 b1 b2 |
BBB id = b3 | a1 b1 b2 |
BBB id = b4 | a1 b1 b2 b3 |
CCC id = c1 | a1 b1 b2 b3 b4 |
CCC id = c2 | a1 b1 b2 b3 b4 |
BBB id = b5 | a1 b1 b2 b3 b4 c1 c2 |
CCC id = c3 | a1 b1 b2 b3 b4 c1 c2 |
XSL 9 | HOME XML HTML 9 OUTPUT 9 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: attribute</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="attribute::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 9 | HOME XML XSL 9 OUTPUT 9 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: attribute</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>id pos </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>id </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>id </TD></TR></TABLE> |
OUTPUT 9 | HOME XML XSL 9 HTML 9 |
---|
Axis: attribute | |
---|---|
Element | Node-set |
AAA id = a1 | id pos |
BBB id = b1 | id |
BBB id = b2 | id |
AAA id = a2 | id |
BBB id = b3 | id |
BBB id = b4 | id |
CCC id = c1 | id |
CCC id = c2 | id |
BBB id = b5 | id |
CCC id = c3 | id |
XSL 10 | HOME XML HTML 10 OUTPUT 10 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: namespace</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="namespace::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 10 | HOME XML XSL 10 OUTPUT 10 |
---|
OUTPUT 10 | HOME XML XSL 10 HTML 10 |
---|
XSL 11 | HOME XML HTML 11 OUTPUT 11 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: self</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="self::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 11 | HOME XML XSL 11 OUTPUT 11 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: self</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>a1 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>b1 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>b2 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>a2 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>b3 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>b4 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>c1 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>c2 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>b5 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>c3 </TD></TR></TABLE> |
OUTPUT 11 | HOME XML XSL 11 HTML 11 |
---|
Axis: self | |
---|---|
Element | Node-set |
AAA id = a1 | a1 |
BBB id = b1 | b1 |
BBB id = b2 | b2 |
AAA id = a2 | a2 |
BBB id = b3 | b3 |
BBB id = b4 | b4 |
CCC id = c1 | c1 |
CCC id = c2 | c2 |
BBB id = b5 | b5 |
CCC id = c3 | c3 |
XSL 12 | HOME XML HTML 12 OUTPUT 12 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: descendant-or-self</TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="descendant-or-self::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 12 | HOME XML XSL 12 OUTPUT 12 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: descendant-or-self</TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>a1 b1 b2 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>b1 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>b2 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>a2 b3 b4 c1 c2 b5 c3 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>b3 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>b4 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>c1 c2 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>c2 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>b5 c3 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>c3 </TD></TR></TABLE> |
OUTPUT 12 | HOME XML XSL 12 HTML 12 |
---|
Axis: descendant-or-self | |
---|---|
Element | Node-set |
AAA id = a1 | a1 b1 b2 |
BBB id = b1 | b1 |
BBB id = b2 | b2 |
AAA id = a2 | a2 b3 b4 c1 c2 b5 c3 |
BBB id = b3 | b3 |
BBB id = b4 | b4 |
CCC id = c1 | c1 c2 |
CCC id = c2 | c2 |
BBB id = b5 | b5 c3 |
CCC id = c3 | c3 |
XSL 13 | HOME XML HTML 13 OUTPUT 13 |
---|
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > |
<xsl:template match="/"> |
<TABLE border="1" cellpadding = "6"> |
<TR><TH colspan="2">Axis: ancestor-or-self </TH></TR> |
<TR><TH>Element</TH><TH>Node-set</TH></TR> |
<xsl:for-each select="/xslTutorial//*"> |
<xsl:call-template name="print"/> |
</xsl:for-each> |
</TABLE> |
</xsl:template> |
<xsl:template name="print"> |
<TR> |
<TD> |
<xsl:value-of select="name()"/> |
<xsl:text> id = </xsl:text> |
<xsl:value-of select="./@id"/> |
</TD><TD> |
<xsl:for-each select="ancestor-or-self::*"> |
<xsl:if test="not(@id)"> |
<xsl:value-of select="name()"/> |
</xsl:if> |
<xsl:value-of select="./@id"/> |
<xsl:text> </xsl:text> |
</xsl:for-each> |
</TD> |
</TR> |
</xsl:template> |
</xsl:stylesheet> |
HTML 13 | HOME XML XSL 13 OUTPUT 13 |
---|
<?xml version="1.0" encoding="utf-8"?> |
<TABLE border="1" cellpadding="6"> |
<TR> |
<TH colspan="2">Axis: ancestor-or-self </TH></TR> |
<TR> |
<TH>Element</TH> |
<TH>Node-set</TH></TR> |
<TR> |
<TD>AAA id = a1</TD> |
<TD>xslTutorial a1 </TD></TR> |
<TR> |
<TD>BBB id = b1</TD> |
<TD>xslTutorial a1 b1 </TD></TR> |
<TR> |
<TD>BBB id = b2</TD> |
<TD>xslTutorial a1 b2 </TD></TR> |
<TR> |
<TD>AAA id = a2</TD> |
<TD>xslTutorial a2 </TD></TR> |
<TR> |
<TD>BBB id = b3</TD> |
<TD>xslTutorial a2 b3 </TD></TR> |
<TR> |
<TD>BBB id = b4</TD> |
<TD>xslTutorial a2 b4 </TD></TR> |
<TR> |
<TD>CCC id = c1</TD> |
<TD>xslTutorial a2 c1 </TD></TR> |
<TR> |
<TD>CCC id = c2</TD> |
<TD>xslTutorial a2 c1 c2 </TD></TR> |
<TR> |
<TD>BBB id = b5</TD> |
<TD>xslTutorial a2 b5 </TD></TR> |
<TR> |
<TD>CCC id = c3</TD> |
<TD>xslTutorial a2 b5 c3 </TD></TR></TABLE> |
OUTPUT 13 | HOME XML XSL 13 HTML 13 |
---|
Axis: ancestor-or-self | |
---|---|
Element | Node-set |
AAA id = a1 | xslTutorial a1 |
BBB id = b1 | xslTutorial a1 b1 |
BBB id = b2 | xslTutorial a1 b2 |
AAA id = a2 | xslTutorial a2 |
BBB id = b3 | xslTutorial a2 b3 |
BBB id = b4 | xslTutorial a2 b4 |
CCC id = c1 | xslTutorial a2 c1 |
CCC id = c2 | xslTutorial a2 c1 c2 |
BBB id = b5 | xslTutorial a2 b5 |
CCC id = c3 | xslTutorial a2 b5 c3 |