Select one from the target value list : select « XSLT stylesheet « XML

XML
1. CSS Style
2. SVG
3. XML Schema
4. XQuery
5. XSLT stylesheet
Java
XML Tutorial
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
XML » XSLT stylesheet » select 
Select one from the target value list


File: Data.xml

<?xml version="1.0" encoding="iso-8859-1"?>
<SCENE REF="4.3">
  <SPEECH>
    <SPEAKER>A</SPEAKER>
    I
    <NL />
  </SPEECH>

  <SPEECH>
    <SPEAKER>B</SPEAKER>
    O
    <NL />
  </SPEECH>
</SCENE>


File: Transform.xslt

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  version="1.0">

  <xsl:variable name="backcolor" select="'#FFFFCC'" />

  <xsl:template match="SCENE|PROLOGUE|EPILOGUE">
    <HTML>
      <HEAD>
        <TITLE>
          <xsl:value-of select="TITLE" />
        </TITLE>
      </HEAD>
      <BODY BGCOLOR='{$backcolor}'>
        <xsl:apply-templates />
      </BODY>
    </HTML>
  </xsl:template>

  <xsl:template match="SPEECH">
    <TABLE>
      <TR>
        <TD WIDTH="160" VALIGN="TOP">
          <xsl:apply-templates select="SPEAKER" />
        </TD>
        <TD VALIGN="TOP">
          <xsl:apply-templates select="STAGEDIR|LINE" />
        </TD>
      </TR>
    </TABLE>
  </xsl:template>

  <xsl:template match="TITLE">
    <H1>
      <CENTER>
        <xsl:apply-templates />
      </CENTER>
    </H1>
    <HR />
  </xsl:template>

  <xsl:template match="SPEAKER">
    <B>
      <xsl:apply-templates />
      <xsl:if test="not(position()=last())">
        <BR />
      </xsl:if>
    </B>
  </xsl:template>

  <xsl:template match="SCENE/STAGEDIR">
    <CENTER>
      <H3>
        <xsl:apply-templates />
      </H3>
    </CENTER>
  </xsl:template>

  <xsl:template match="SPEECH/STAGEDIR">
    <P>
      <I>
        <xsl:apply-templates />
      </I>
    </P>
  </xsl:template>

  <xsl:template match="LINE/STAGEDIR">
    [
    <I>
      <xsl:apply-templates />
    </I>
    ]
  </xsl:template>

  <xsl:template match="SCENE/SUBHEAD">
    <CENTER>
      <H3>
        <xsl:apply-templates />
      </H3>
    </CENTER>
  </xsl:template>

  <xsl:template match="SPEECH/SUBHEAD">
    <P>
      <B>
        <xsl:apply-templates />
      </B>
    </P>
  </xsl:template>

  <xsl:template match="LINE">
    <xsl:apply-templates />
    <BR />
  </xsl:template>

</xsl:stylesheet>

Output:

<HTML>
   <HEAD>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <TITLE></TITLE>
   </HEAD>
   <BODY BGCOLOR="#FFFFCC">
        
      <TABLE>
         <TR>
            <TD WIDTH="160" VALIGN="TOP"><B>A</B></TD>
            <TD VALIGN="TOP"></TD>
         </TR>
      </TABLE>
      
        
      <TABLE>
         <TR>
            <TD WIDTH="160" VALIGN="TOP"><B>B</B></TD>
            <TD VALIGN="TOP"></TD>
         </TR>
      </TABLE>
      
   </BODY>
</HTML>

 
Related examples in the same category
1. Parent and attribute
2. select="../@attribute"
3. child
4. Get value from tag with {}
5. Node selection by level
6. Select Node by index
7. Select attribute value and output to a list
8. context position and context size
9. select with if then else
10. select="document('')/*/book:category[@code=current()/@category]/@desc"
11. select distinct values
12. select="@*" (at)
13. Select one tag from a list of tags
14. select="employees/employee[2]/following::contact/name/firstName"
15. select="employees/employee[2]/preceding::contact/name/firstName"
16. select="employee[@dept='programming']"
17. select="employees/head:header/namespace::head"
18. value-of select="person[position()=3]/name"
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.