Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Use BR to format value in a table cell

File: Data.xml <employees>   <employee eid="98145" dept="programming">     <title>Java Programmer</title>     <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 <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0"   xmlns:xsl="http://www.w3.org/1999/XSL/Transform">   <xsl:template match="employees">     <html>       <head>         <title>Employee Data</title>       </head>       <body>         <table>           <tr>             <th>Name</th>             <th>Hire Date</th>             <th>Address</th>             <th>Phone</th>             <th>Fax</th>             <th>Email</th>           </tr>           <xsl:for-each select="employee">             <tr>               <td>                 <xsl:value-of                   select="contact/name/name" />                 <xsl:value-of                   select="contact/name/middleName" />                 <xsl:value-of                   select="contact/name/lastName" />               </td>               <td>                 <xsl:value-of select="hireDate" />               </td>               <td>                 <xsl:value-of                   select="contact/address/street" />                 <br />                 <xsl:value-of                   select="contact/address/city" />                 ,                 <xsl:value-of                   select="contact/address/state" />                 <xsl:value-of                   select="contact/address/zip" />               </td>               <td>                 WK:                 <xsl:value-of                   select="contact/phone/tel[@type=wk]" />                 <br />                 HM:                 <xsl:value-of                   select="contact/phone/tel[@type=hm]" />               </td>               <td>                 <xsl:value-of                   select="contact/phone/fax" />               </td>               <td>                 <xsl:value-of select="contact/email" />               </td>             </tr>           </xsl:for-each>         </table>       </body>     </html>   </xsl:template> </xsl:stylesheet> Output: <html>    <head>       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">       <title>Employee Data</title>    </head>    <body>       <table>          <tr>             <th>Name</th>             <th>Hire Date</th>             <th>Address</th>             <th>Phone</th>             <th>Fax</th>             <th>Email</th>          </tr>          <tr>             <td>BrianSmith</td>             <td>2008-10-29</td>             <td>1 Drive<br>Vancouver                                ,                                BC             </td>             <td>                                WK:                                <br>                                HM:                                             </td>             <td>303-4667357</td>             <td>a@a.com</td>          </tr>       </table>    </body> </html>