output an element only if it has a value. : value of « XSLT stylesheet « XML Tutorial

XML Tutorial
1. Introduction
2. Namespace
3. XML Schema
4. XPath
5. XSLT stylesheet
Java
XML
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 Tutorial » XSLT stylesheet » value of 
5. 72. 7. output an element only if it has a value.
File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<table>
  <element> element </element>
  <element> element </element>
  <element/>
  <element/>
  <element> element           3</element>
</table>
File: Transform.xslt

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

    <xsl:template match="table">
      <TABLE BORDER="1">
        <xsl:for-each select="element">
          <xsl:apply-templates select="."/>
        </xsl:for-each>
      </TABLE>
    </xsl:template>
    <xsl:template match="element">
      <xsl:variable name="tmp">
        <xsl:value-of select="."/>
      </xsl:variable>
      <xsl:if test="boolean(normalize-space($tmp))">
        <TR>
          <TD>
            <xsl:value-of select="$tmp"/>
          </TD>
        </TR>
      </xsl:if>
    </xsl:template>
</xsl:stylesheet>

Output:

<?xml version="1.0" encoding="UTF-8"?><TABLE BORDER="1"><TR><TD> element </TD></TR><TR><TD> element </TD></TR><TR><TD> element           3</TD></TR></TABLE>
5. 72. value of
5. 72. 1. Use value-of to get element value from different level
5. 72. 2. Select value from an element
5. 72. 3. value-of select="."
5. 72. 4. value-of select=cars/manufacturer/@name separator=,
5. 72. 5. value-of select=format-date($date, [M01]/[D01]/[Y0001])
5. 72. 6. value-of select=replace($sub2, ', '')
5. 72. 7. output an element only if it has a value.
5. 72. 8. the output without empty elements removal
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.