following-sibling : following sibling « XSLT stylesheet « XML






following-sibling


File: Data.xml

<Employees>
 <Person>
  <FirstName>A</FirstName>
  <LastName>B</LastName>
  <DateOfBirth>2008-12-12</DateOfBirth>
 </Person>
 <Person>
  <FirstName>C</FirstName>
  <LastName>D</LastName>
  <DateOfBirth>2008-11-11</DateOfBirth>
 </Person>
 <Person>
  <FirstName>E</FirstName>
  <LastName>F</LastName>
  <DateOfBirth>2008-10-10</DateOfBirth>
 </Person>
</Employees>


File: Transform.xslt

<xsl:stylesheet  
     version="1.0" 
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >

    <xsl:template match="/">
         <html>
          <head>
           <title>following-sibling axis.</title>
          </head>
          <body>
           <h3>sibling axis demo.</h3>
           <xsl:apply-templates select="/Employees/Person[1]/FirstName" />
          </body>
         </html> 
    </xsl:template>

    <xsl:template match="FirstName">
         <xsl:for-each select="following-sibling::*">
              <paragraph>
                  <xsl:value-of select="name(.)" /> 
                  which contains the text 
                  "<xsl:value-of select="." />".
              </paragraph>
         </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>
Output:

<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>following-sibling axis.</title>
   </head>
   <body>
      <h3>sibling axis demo.</h3>
      <paragraph>LastName 
         which contains the text 
         "B".
         
      </paragraph>
      <paragraph>DateOfBirth 
         which contains the text 
         "2008-12-12".
         
      </paragraph>
   </body>
</html>

 








Related examples in the same category

1.following-sibling demo
2.select="following-sibling::*[1]/contact/name/firstName"
3.following-sibling::node()[1][not(self::NL)]
4.select="following-sibling::notification[count(preceding-sibling::employeeName[1] | current()) = 1]"