Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Select=employeesemployee[2]preceding

File: Data.xml <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet href="Transform.xslt" type="text/xsl"?> <employees xmlns="http://www.domain.com/namespace/employee">   <title>Employee Data File</title>   <employee eid="1" dept="programming">     <contact addInfo="info1">       <name>         <firstName>Joe</firstName>         <middleName int="B">Brian</middleName>         <lastName>Smith</lastName>       </name>       <address>         <street>1 Drive</street>         <city>Vancouver</city>         <state>BC</state>         <zipcode>80210</zipcode>       </address>       <phone>         <tel type="wk">111-1111111</tel>         <tel type="hm">222-222222</tel>         <fax>303-4667357</fax>       </phone>       <email>a@a.com</email>     </contact>     <hireDate>2008-10-29</hireDate>   </employee> </employees> File: Transform.xslt <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   version="1.0">   <xsl:output method="html" indent="yes" />   <xsl:template match="/">     <html>       <head>         <title>Employee Output</title>       </head>       <body>         <p>           The employee element nodes that are defined before           developer 1 are:         </p>         <ul>           <li>             <xsl:value-of               select="employees/employee[2]/preceding::contact/name/firstName" />           </li>         </ul>       </body>     </html>   </xsl:template> </xsl:stylesheet> Output: <html>    <head>       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">       <title>Employee Output</title>    </head>    <body>       <p>                    The employee element nodes that are defined before                    developer 1 are:                         </p>       <ul>          <li></li>       </ul>    </body> </html>