XPath Relative Path

A path is called relative path if it is started with the node that we've selected.

See this syntax which specifies locating the elements using relative path to employee node.

snippet
<p><xsl:value-of select = "firstname"/></p>

XPath Relative Path Example

Let's take an example locating the elements using absolute path. Create an XML document employee.xml and its stylesheet document employee.xsl which uses the XPath expressions.

Employee.xml

snippet
<?xml version = "1.0"?>
<?xml-stylesheet type = "text/xsl" href = "employee.xsl"?>
<class>
   <employee id = "001">
     <firstname>Abhiram</firstname>
      <lastname>Kushwaha</lastname>
      <nickname>Manoj</nickname>
      <salary>15000</salary>
   </employee>
   <employee id = "002">
      <firstname>Akash</firstname>
      <lastname>Singh</lastname>
      <nickname>Bunty</nickname>
      <salary>25000</salary>
   </employee>
    <employee id = "003">
      <firstname>Brijesh</firstname>
      <lastname>Kaushik</lastname>
      <nickname>Ballu</nickname>
      <salary>20000</salary>
   </employee>
    <employee id = "004">
      <firstname>Zoya</firstname>
      <lastname>Mansoori</lastname>
      <nickname>Sonam</nickname>
      <salary>30000</salary>
   </employee>
</class>

Employee.xsl

snippet
<?xml version = "1.0" encoding = "UTF-8"?>
<xsl:stylesheet version = "1.0">
   xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">	
    <xsl:template match = "/">
       <html>
          <body>
             <h3>Details of each Employee.  </h3>
             <table border = "1">
                <tr bgcolor = "pink">
                   <th>ID </th>
                   <th>First Name </th>
                   <th>Last Name </th>
                   <th>Nick Name </th>
                   <th>Salary </th>		 
                </tr>						
                <xsl:for-each select = "/class/employee">
                   <tr>
                      <td><xsl:value-of select = "@id"/> </td>
                      <td><xsl:value-of select = "firstname"/> </td>
                      <td><xsl:value-of select = "lastname"/> </td>
                      <td><xsl:value-of select = "nickname"/> </td>
                      <td><xsl:value-of select = "salary"/> </td>		 
                   </tr>
                </xsl:for-each>
             </table> 
         </body>
       </html>
    </xsl:template>
 </xsl:stylesheet>

Output:

Xpath Relative path 1
Related Tutorial
Follow Us
https://www.facebook.com/Rookie-Nerd-638990322793530 https://twitter.com/RookieNerdTutor https://plus.google.com/b/117136517396468545840 #
Contents