Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Get value from element and attribute

File: Data.xml <?xml version="1.0"?> <?xml-stylesheet type="application/xml" href="Transform.xslt"?> <people>   <person born="2008" died="2008" id="1">     <name>       <first_name>A</first_name>       <last_name>B</last_name>     </name>     <profession>A</profession>     <profession>B</profession>     <profession>C</profession>   </person>   <person born="2007" died="2007" id="2">     <name>       <first_name>D</first_name>       <middle_initial>E</middle_initial>       <last_name>F</last_name>     </name>     <profession>G</profession>     <hobby>H</hobby>   </person> </people> File: Transform.xslt <?xml version="1.0"?>  <xsl:stylesheet version="1.0"                  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">   <xsl:template match="/">     <html>       <xsl:apply-templates select="people"/>     </html>   </xsl:template>   <xsl:template match="people">     <table>       <xsl:apply-templates select="person"/>     </table>   </xsl:template>   <xsl:template match="person">     <tr>       <td><xsl:value-of select="name"/></td>       <td><xsl:value-of select="@born"/></td>       <td><xsl:value-of select="@died"/></td>     </tr>   </xsl:template> </xsl:stylesheet> Output: <html>    <table>       <tr>          <td>             A             B                       </td>          <td>2008</td>          <td>2008</td>       </tr>       <tr>          <td>             D             E             F                       </td>          <td>2007</td>          <td>2007</td>       </tr>    </table> </html>