Count node : count « XSLT stylesheet « XML






Count node


File: Data.xml

<?xml version="1.0" encoding="utf-8"?>
<People>
  <Person>
    <Name>name 1</Name>
    <Description>description 1</Description>
  </Person>
  <Person>
    <Name>name 2</Name>
    <Description>description 2</Description>
  </Person>

</People>



File: Transform.xslt

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

  <xsl:template match="/">
    <html>
      <head>
        <title>
          About
          <xsl:value-of select="count(/People/Person)" />
          .
        </title>
      </head>
      <body>
        <h3>
          about
          <xsl:value-of select="count(/People/Person)" />
          people.
        </h3>
        <br />
        <xsl:apply-templates select="/People/Person" />
      </body>
    </html>
  </xsl:template>

  <xsl:template match="Person">
    <h3>
      <xsl:value-of select="Name" />
    </h3>
    <p>
      <xsl:value-of select="Description" />
    </p>

    <br />
  </xsl:template>

</xsl:stylesheet>

Output:

<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>
                   About
                   2
                   .
                 
      </title>
   </head>
   <body>
      <h3>
                   about
                   2
                   people.
                 
      </h3><br><h3>name 1</h3>
      <p>description 1</p><br><h3>name 2</h3>
      <p>description 2</p><br></body>
</html>

 








Related examples in the same category

1.count element with certain attribute name
2.Count tokens